Ejemplo n.º 1
0
def test_scalar_unknown_csv():
    try:
        shaystack.dump_scalar(shaystack.VER_2_0,
                              mode=shaystack.MODE_CSV,
                              version=shaystack.VER_2_0)
        assert False, 'Serialised a list in Haystack v2.0'
    except NotImplementedError:
        pass
Ejemplo n.º 2
0
def test_scalar_na_json_ver():
    # Test that versions are respected.
    try:
        shaystack.dump_scalar(shaystack.NA,
                              mode=shaystack.MODE_JSON,
                              version=shaystack.VER_2_0)
        assert False, 'Serialised a NA in Haystack v2.0'
    except ValueError:
        pass
Ejemplo n.º 3
0
def test_scalar_list_json_ver():
    # Test that versions are respected.
    try:
        shaystack.dump_scalar(["a list is not allowed in v2.0"],
                              mode=shaystack.MODE_JSON,
                              version=shaystack.VER_2_0)
        assert False, 'Serialised a list in Haystack v2.0'
    except ValueError:
        pass
Ejemplo n.º 4
0
def test_scalar_dict_zinc_ver():
    # Test that versions are respected.
    try:
        shaystack.dump_scalar({"a": "b"},
                              mode=shaystack.MODE_ZINC,
                              version=shaystack.VER_2_0)
        assert False, 'Serialised a list in Haystack v2.0'
    except ValueError:
        pass
Ejemplo n.º 5
0
 def serialize(hs_scalar: Any) -> Any:
     """
     Convert scala value to Json
     Args:
         hs_scalar: Any value
     """
     return json.loads(
         shaystack.dump_scalar(hs_scalar,
                               shaystack.MODE_JSON,
                               version=shaystack.VER_3_0))
Ejemplo n.º 6
0
def test_scalar_ref_csv():
    # No need to be exhaustive, the underlying function is tested heavily by
    # the grid dump tests.
    assert shaystack.dump_scalar(
        shaystack.Ref('areference', 'a display name'),
        mode=shaystack.MODE_CSV) == '@areference a display name'
Ejemplo n.º 7
0
def test_dump_ambiguous_scalar():
    assert dump_scalar("F", MODE_CSV) == '"""F"""'
    assert dump_scalar("°F", MODE_TRIO) == '"°F"'
Ejemplo n.º 8
0
def test_dump_invalide_scalar():
    assert dump_scalar(None)