aboutsummaryrefslogtreecommitdiffstats
path: root/test/test_swfinterp.py
diff options
context:
space:
mode:
authorJesús <heckyel@hyperbola.info>2021-06-09 12:23:42 -0500
committerJesús <heckyel@hyperbola.info>2021-06-09 12:23:42 -0500
commitff87b367dce059d04f3f1dc11000553a065f8f0f (patch)
treecac7ecfc0ff70c036c84e22acc8dc10279d22f06 /test/test_swfinterp.py
parentc2350cac243ba1ec1586fe85b0d62d1b700047a2 (diff)
downloadhypervideo-pre-ff87b367dce059d04f3f1dc11000553a065f8f0f.tar.lz
hypervideo-pre-ff87b367dce059d04f3f1dc11000553a065f8f0f.tar.xz
hypervideo-pre-ff87b367dce059d04f3f1dc11000553a065f8f0f.zip
brand
Diffstat (limited to 'test/test_swfinterp.py')
-rw-r--r--test/test_swfinterp.py80
1 files changed, 0 insertions, 80 deletions
diff --git a/test/test_swfinterp.py b/test/test_swfinterp.py
deleted file mode 100644
index 9f18055e6..000000000
--- a/test/test_swfinterp.py
+++ /dev/null
@@ -1,80 +0,0 @@
-#!/usr/bin/env python
-from __future__ import unicode_literals
-
-# Allow direct execution
-import os
-import sys
-import unittest
-sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
-
-
-import errno
-import io
-import json
-import re
-import subprocess
-
-from youtube_dl.swfinterp import SWFInterpreter
-
-
-TEST_DIR = os.path.join(
- os.path.dirname(os.path.abspath(__file__)), 'swftests')
-
-
-class TestSWFInterpreter(unittest.TestCase):
- pass
-
-
-def _make_testfunc(testfile):
- m = re.match(r'^(.*)\.(as)$', testfile)
- if not m:
- return
- test_id = m.group(1)
-
- def test_func(self):
- as_file = os.path.join(TEST_DIR, testfile)
- swf_file = os.path.join(TEST_DIR, test_id + '.swf')
- if ((not os.path.exists(swf_file))
- or os.path.getmtime(swf_file) < os.path.getmtime(as_file)):
- # Recompile
- try:
- subprocess.check_call([
- 'mxmlc', '-output', swf_file,
- '-static-link-runtime-shared-libraries', as_file])
- except OSError as ose:
- if ose.errno == errno.ENOENT:
- print('mxmlc not found! Skipping test.')
- return
- raise
-
- with open(swf_file, 'rb') as swf_f:
- swf_content = swf_f.read()
- swfi = SWFInterpreter(swf_content)
-
- with io.open(as_file, 'r', encoding='utf-8') as as_f:
- as_content = as_f.read()
-
- def _find_spec(key):
- m = re.search(
- r'(?m)^//\s*%s:\s*(.*?)\n' % re.escape(key), as_content)
- if not m:
- raise ValueError('Cannot find %s in %s' % (key, testfile))
- return json.loads(m.group(1))
-
- input_args = _find_spec('input')
- output = _find_spec('output')
-
- swf_class = swfi.extract_class(test_id)
- func = swfi.extract_function(swf_class, 'main')
- res = func(input_args)
- self.assertEqual(res, output)
-
- test_func.__name__ = str('test_swf_' + test_id)
- setattr(TestSWFInterpreter, test_func.__name__, test_func)
-
-
-for testfile in os.listdir(TEST_DIR):
- _make_testfunc(testfile)
-
-if __name__ == '__main__':
- unittest.main()