Example #1
0
def test_size_mixed_object():
    obj = ScriptDataObject()

    # Preserves insertion order
    obj["number"] = 123
    obj["string"] = "foobar"
    obj["bool"] = True

    assert ScriptDataObject.size(obj) == MIXED_VALUES_SIZE
Example #2
0
def test_read_mixed_object(fd):
    obj = ScriptDataObject()

    # Preserves insertion order
    obj["number"] = 123
    obj["string"] = "foobar"
    obj["bool"] = True

    assert ScriptDataObject.read(fd) == obj
    assert fd.tell() == MIXED_VALUES_SIZE
def test_size_mixed_object():
    obj = ScriptDataObject()

    # Preserves insertion order
    obj["number"] = 123
    obj["string"] = "foobar"
    obj["bool"] = True

    assert ScriptDataObject.size(obj) == MIXED_VALUES_SIZE
def test_pack():
    assert ScriptDataValue(True) == BOOL
    assert ScriptDataValue(None) == NULL
    assert ScriptDataValue(150.5) == NUMBER
    assert ScriptDataValue([]) == STRICT_ARRAY
    assert ScriptDataValue(ScriptDataECMAArray()) == ECMA_ARRAY
    assert ScriptDataValue(ScriptDataObject()) == OBJECT
    assert ScriptDataValue("ABC") == STRING
    assert ScriptDataValue(create_date()) == DATE
    assert ScriptDataValue(create_reference()) == REFERENCE
def test_unpack():
    assert ScriptDataValue.unpack(BOOL)[0] == True
    assert ScriptDataValue.unpack(NULL)[0] == None
    assert ScriptDataValue.unpack(NUMBER)[0] == 150.5
    assert ScriptDataValue.unpack(STRICT_ARRAY)[0] == []
    assert ScriptDataValue.unpack(ECMA_ARRAY)[0] == ScriptDataECMAArray()
    assert ScriptDataValue.unpack(OBJECT)[0] == ScriptDataObject()
    assert ScriptDataValue.unpack(STRING)[0] == "ABC"
    assert ScriptDataValue.unpack(DATE)[0] == create_date()
    assert ScriptDataValue.unpack(REFERENCE)[0] == create_reference()
def test_size():
    assert ScriptDataValue.size(True) == BOOL_SIZE
    assert ScriptDataValue.size(None) == NULL_SIZE
    assert ScriptDataValue.size(150.5) == NUMBER_SIZE
    assert ScriptDataValue.size([]) == STRICT_ARRAY_SIZE
    assert ScriptDataValue.size(ScriptDataECMAArray()) == ECMA_ARRAY_SIZE
    assert ScriptDataValue.size(ScriptDataObject()) == OBJECT_SIZE
    assert ScriptDataValue.size("ABC") == STRING_SIZE
    assert ScriptDataValue.size(create_date()) == DATE_SIZE
    assert ScriptDataValue.size(create_reference()) == REFERENCE_SIZE
def test_read_mixed_object(fd):
    obj = ScriptDataObject()

    # Preserves insertion order
    obj["number"] = 123
    obj["string"] = "foobar"
    obj["bool"] = True


    assert ScriptDataObject.read(fd) == obj
    assert fd.tell() == MIXED_VALUES_SIZE
Example #8
0
def test_pack_strings_object():
    assert ScriptDataObject.pack(ScriptDataObject(foo="bar")) == STRING_VALUE
Example #9
0
def test_pack_numbers_object():
    assert ScriptDataObject.pack(ScriptDataObject(foo=123)) == NUMBER_VALUE
Example #10
0
def test_pack_empty_object():
    assert ScriptDataObject.pack(ScriptDataObject()) == EMPTY_OBJECT
def test_size_strings_object():
    assert ScriptDataObject.size(ScriptDataObject(foo="bar")) == STRING_VALUE_SIZE
Example #12
0
def test_read_empty_object(fd):
    assert ScriptDataObject.read(fd) == ScriptDataObject()
    assert fd.tell() == EMPTY_OBJECT_SIZE
Example #13
0
def test_size_booleans_object():
    assert ScriptDataObject.size(
        ScriptDataObject(foo=True)) == BOOLEAN_VALUE_SIZE
Example #14
0
def test_size_numbers_object():
    assert ScriptDataObject.size(
        ScriptDataObject(foo=123)) == NUMBER_VALUE_SIZE
def test_read_booleans_object(fd):
    assert ScriptDataObject.read(fd) == ScriptDataObject(foo=True)
    assert fd.tell() == BOOLEAN_VALUE_SIZE
def test_read_strings_object(fd):
    assert ScriptDataObject.read(fd) == ScriptDataObject(foo="bar")
    assert fd.tell() == STRING_VALUE_SIZE
def test_read_numbers_object(fd):
    assert ScriptDataObject.read(fd) == ScriptDataObject(foo=123)
    assert fd.tell() == NUMBER_VALUE_SIZE
def test_read_empty_object(fd):
    assert ScriptDataObject.read(fd) == ScriptDataObject()
    assert fd.tell() == EMPTY_OBJECT_SIZE
def test_size_empty_object():
    assert ScriptDataObject.size(ScriptDataObject()) == EMPTY_OBJECT_SIZE
def test_size_booleans_object():
    assert ScriptDataObject.size(ScriptDataObject(foo=True)) == BOOLEAN_VALUE_SIZE
Example #21
0
def test_pack_booleans_object():
    assert ScriptDataObject.pack(ScriptDataObject(foo=True)) == BOOLEAN_VALUE
Example #22
0
def test_size_empty_object():
    assert ScriptDataObject.size(ScriptDataObject()) == EMPTY_OBJECT_SIZE
Example #23
0
def test_read_strings_object(fd):
    assert ScriptDataObject.read(fd) == ScriptDataObject(foo="bar")
    assert fd.tell() == STRING_VALUE_SIZE
Example #24
0
def test_size_strings_object():
    assert ScriptDataObject.size(
        ScriptDataObject(foo="bar")) == STRING_VALUE_SIZE
def test_pack_numbers_object():
    assert ScriptDataObject.pack(ScriptDataObject(foo=123)) == NUMBER_VALUE
def test_pack_strings_object():
    assert ScriptDataObject.pack(ScriptDataObject(foo="bar")) == STRING_VALUE
def test_pack_booleans_object():
    assert ScriptDataObject.pack(ScriptDataObject(foo=True)) == BOOLEAN_VALUE
Example #28
0
def test_read_numbers_object(fd):
    assert ScriptDataObject.read(fd) == ScriptDataObject(foo=123)
    assert fd.tell() == NUMBER_VALUE_SIZE
def test_size_numbers_object():
    assert ScriptDataObject.size(ScriptDataObject(foo=123)) == NUMBER_VALUE_SIZE
Example #30
0
def test_read_booleans_object(fd):
    assert ScriptDataObject.read(fd) == ScriptDataObject(foo=True)
    assert fd.tell() == BOOLEAN_VALUE_SIZE
def test_pack_empty_object():
    assert ScriptDataObject.pack(ScriptDataObject()) == EMPTY_OBJECT