Esempio n. 1
0
    def test_seq_dump_padded(self):
        node = Node([
            Node(1, Location("s", 1, 1)),
            Node("a", Location("k", 2, 3)),
        ], Location("u", 5, 6))

        assert node.dump("   ") == ("list(u:5:6)[\n"
                                    "     int(s:1:1)(1),\n"
                                    "     str(k:2:3)(a)\n"
                                    "   ]")
Esempio n. 2
0
    def test_constructor(self):
        node = Node("value", Location("name", 1, 2))

        assert node.value == "value"
        assert node.loc.stream_name == "name"
        assert node.loc.line == 1
        assert node.loc.column == 2
Esempio n. 3
0
 def _pos(self, node):
     # Convert 0-based indices to 1-based (text editor) marks
     return Location(
         self._stream_name,
         node.start_mark.line + 1,
         node.start_mark.column + 1,
     )
Esempio n. 4
0
    def test_build_creates_new_instance(self, data):
        obj = Base.build(Node(data, Location("stream", 1, 2)))

        assert obj.data == data
        assert obj.loc.stream_name == "stream"
        assert obj.loc.line == 1
        assert obj.loc.column == 2
Esempio n. 5
0
 def test_str(self):
     assert str(Node(0, Location("a", 1, 2))) == "Node(a:1:2)[0]"
Esempio n. 6
0
 def __init__(self, value, loc=None):
     self.value = value
     self.loc = loc or Location("", 0, 0)
Esempio n. 7
0
 def test_str(self, data):
     assert str(data) == str(Base(data, Location("s", 4, 5)))
Esempio n. 8
0
 def test_bare_simple(self, data):
     assert Void(data, Location("path", 2, 3)).bare == data
Esempio n. 9
0
 def test_str(self):
     assert str(Location("stream", 1, 2)) == "stream:1:2"
Esempio n. 10
0
    def test_str_dump(self):
        node = Node("string", Location("s", 1, 1))

        assert node.dump() == "str(s:1:1)(string)"
Esempio n. 11
0
    def test_scalar_ignores_padding(self):
        node = Node("string", Location("s", 1, 1))

        assert node.dump("    ") == "str(s:1:1)(string)"
Esempio n. 12
0
    def test_sfloat_dump(self):
        node = Node(123.456, Location("s", 1, 1))

        assert node.dump() == "float(s:1:1)(123.456)"
Esempio n. 13
0
    def test_int_dump(self):
        node = Node(123, Location("s", 1, 1))

        assert node.dump() == "int(s:1:1)(123)"
Esempio n. 14
0
    def test_bool_dump(self):
        node = Node(True, Location("s", 1, 1))

        assert node.dump() == "bool(s:1:1)(True)"
Esempio n. 15
0
    def test_null_dump(self):
        node = Node(None, Location("s", 1, 1))

        assert node.dump() == "NoneType(s:1:1)(None)"
Esempio n. 16
0
 def test_str(self):
     assert str(Node(0, Location("a", 1, 2))) == "int(a:1:2)(0)"