summaryrefslogtreecommitdiff
path: root/simplejson
diff options
context:
space:
mode:
authorBob Ippolito <bob@redivi.com>2021-07-06 14:01:46 -0700
committerBob Ippolito <bob@redivi.com>2021-07-09 16:07:50 -0700
commit949aeefd17eea3f597bf549af43d007381cc077d (patch)
tree1c7928fddf0202628968605164542a055bd599a0 /simplejson
parent8bef979ad8272cbc2903970f4b9992f603d50973 (diff)
downloadsimplejson-949aeefd17eea3f597bf549af43d007381cc077d.tar.gz
Replace travis and appveyor with github actions
Diffstat (limited to 'simplejson')
-rw-r--r--simplejson/__init__.py2
-rw-r--r--simplejson/tests/__init__.py55
-rw-r--r--simplejson/tests/_cibw_runner.py7
3 files changed, 44 insertions, 20 deletions
diff --git a/simplejson/__init__.py b/simplejson/__init__.py
index 531b83d..9e918ff 100644
--- a/simplejson/__init__.py
+++ b/simplejson/__init__.py
@@ -118,7 +118,7 @@ Serializing multiple objects to JSON lines (newline-delimited JSON)::
"""
from __future__ import absolute_import
-__version__ = '3.17.2'
+__version__ = '3.17.3'
__all__ = [
'dump', 'dumps', 'load', 'loads',
'JSONDecoder', 'JSONDecodeError', 'JSONEncoder',
diff --git a/simplejson/tests/__init__.py b/simplejson/tests/__init__.py
index 25d3305..79d1d17 100644
--- a/simplejson/tests/__init__.py
+++ b/simplejson/tests/__init__.py
@@ -7,6 +7,7 @@ import os
class NoExtensionTestSuite(unittest.TestSuite):
def run(self, result):
import simplejson
+
simplejson._toggle_speedups(False)
result = unittest.TestSuite.run(self, result)
simplejson._toggle_speedups(True)
@@ -15,16 +16,17 @@ class NoExtensionTestSuite(unittest.TestSuite):
class TestMissingSpeedups(unittest.TestCase):
def runTest(self):
- if hasattr(sys, 'pypy_translation_info'):
+ if hasattr(sys, "pypy_translation_info"):
"PyPy doesn't need speedups! :)"
- elif hasattr(self, 'skipTest'):
- self.skipTest('_speedups.so is missing!')
+ elif hasattr(self, "skipTest"):
+ self.skipTest("_speedups.so is missing!")
-def additional_tests(suite=None):
+def additional_tests(suite=None, project_dir=None):
import simplejson
import simplejson.encoder
import simplejson.decoder
+
if suite is None:
suite = unittest.TestSuite()
try:
@@ -36,39 +38,54 @@ def additional_tests(suite=None):
raise
for mod in (simplejson, simplejson.encoder, simplejson.decoder):
suite.addTest(doctest.DocTestSuite(mod))
- suite.addTest(doctest.DocFileSuite('../../index.rst'))
+ if project_dir is not None:
+ suite.addTest(
+ doctest.DocFileSuite(
+ os.path.join(project_dir, "index.rst"), module_relative=False
+ )
+ )
return suite
-def all_tests_suite():
+def all_tests_suite(project_dir=None):
def get_suite():
suite_names = [
- 'simplejson.tests.%s' % (os.path.splitext(f)[0],)
+ "simplejson.tests.%s" % (os.path.splitext(f)[0],)
for f in os.listdir(os.path.dirname(__file__))
- if f.startswith('test_') and f.endswith('.py')
+ if f.startswith("test_") and f.endswith(".py")
]
return additional_tests(
- unittest.TestLoader().loadTestsFromNames(suite_names))
+ suite=unittest.TestLoader().loadTestsFromNames(suite_names),
+ project_dir=project_dir,
+ )
+
suite = get_suite()
import simplejson
+
if simplejson._import_c_make_encoder() is None:
suite.addTest(TestMissingSpeedups())
else:
- suite = unittest.TestSuite([
- suite,
- NoExtensionTestSuite([get_suite()]),
- ])
+ suite = unittest.TestSuite(
+ [
+ suite,
+ NoExtensionTestSuite([get_suite()]),
+ ]
+ )
return suite
-def main():
- runner = unittest.TextTestRunner(verbosity=1 + sys.argv.count('-v'))
- suite = all_tests_suite()
+def main(project_dir=None):
+ runner = unittest.TextTestRunner(verbosity=1 + sys.argv.count("-v"))
+ suite = all_tests_suite(project_dir=project_dir)
raise SystemExit(not runner.run(suite).wasSuccessful())
-if __name__ == '__main__':
+if __name__ == "__main__":
import os
import sys
- sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))))
- main()
+
+ project_dir = os.path.dirname(
+ os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
+ )
+ sys.path.insert(0, project_dir)
+ main(project_dir=project_dir)
diff --git a/simplejson/tests/_cibw_runner.py b/simplejson/tests/_cibw_runner.py
new file mode 100644
index 0000000..bffb70b
--- /dev/null
+++ b/simplejson/tests/_cibw_runner.py
@@ -0,0 +1,7 @@
+"""Internal module for running tests from cibuildwheel"""
+
+import sys
+import simplejson.tests
+
+if __name__ == '__main__':
+ simplejson.tests.main(project_dir=sys.argv[1])