[ Avaa Bypassed ]




Upload:

Command:

hmhc3928@18.116.81.33: ~ $
from unittest import TestCase

import simplejson as json

class JSONTestObject:
    pass


class RecursiveJSONEncoder(json.JSONEncoder):
    recurse = False
    def default(self, o):
        if o is JSONTestObject:
            if self.recurse:
                return [JSONTestObject]
            else:
                return 'JSONTestObject'
        return json.JSONEncoder.default(o)


class TestRecursion(TestCase):
    def test_listrecursion(self):
        x = []
        x.append(x)
        try:
            json.dumps(x)
        except ValueError:
            pass
        else:
            self.fail("didn't raise ValueError on list recursion")
        x = []
        y = [x]
        x.append(y)
        try:
            json.dumps(x)
        except ValueError:
            pass
        else:
            self.fail("didn't raise ValueError on alternating list recursion")
        y = []
        x = [y, y]
        # ensure that the marker is cleared
        json.dumps(x)

    def test_dictrecursion(self):
        x = {}
        x["test"] = x
        try:
            json.dumps(x)
        except ValueError:
            pass
        else:
            self.fail("didn't raise ValueError on dict recursion")
        x = {}
        y = {"a": x, "b": x}
        # ensure that the marker is cleared
        json.dumps(y)

    def test_defaultrecursion(self):
        enc = RecursiveJSONEncoder()
        self.assertEqual(enc.encode(JSONTestObject), '"JSONTestObject"')
        enc.recurse = True
        try:
            enc.encode(JSONTestObject)
        except ValueError:
            pass
        else:
            self.fail("didn't raise ValueError on default recursion")

Filemanager

Name Type Size Permission Actions
__pycache__ Folder 0755
__init__.py File 2.45 KB 0644
_cibw_runner.py File 173 B 0644
test_bigint_as_string.py File 2.19 KB 0644
test_bitsize_int_as_string.py File 2.24 KB 0644
test_check_circular.py File 917 B 0644
test_decimal.py File 2.48 KB 0644
test_decode.py File 5.06 KB 0644
test_default.py File 221 B 0644
test_dump.py File 10.11 KB 0644
test_encode_basestring_ascii.py File 2.28 KB 0644
test_encode_for_html.py File 1.48 KB 0644
test_errors.py File 2.03 KB 0644
test_fail.py File 6.3 KB 0644
test_float.py File 1.64 KB 0644
test_for_json.py File 2.7 KB 0644
test_indent.py File 2.51 KB 0644
test_item_sort_key.py File 1.34 KB 0644
test_iterable.py File 1.36 KB 0644
test_namedtuple.py File 5.76 KB 0644
test_pass1.py File 1.71 KB 0644
test_pass2.py File 386 B 0644
test_pass3.py File 482 B 0644
test_raw_json.py File 1.04 KB 0644
test_recursion.py File 1.64 KB 0644
test_scanstring.py File 7.47 KB 0644
test_separators.py File 942 B 0644
test_speedups.py File 4.05 KB 0644
test_str_subclass.py File 740 B 0644
test_subclass.py File 1.1 KB 0644
test_tool.py File 3.23 KB 0644
test_tuple.py File 1.79 KB 0644
test_unicode.py File 6.89 KB 0644