Example #1
0
    def test_element_set(self):
        data = []
        sentinel = lambda sender, adapted: data.append((sender, adapted))

        schema = self.Double.named(u's')

        schema((0, 0))
        with element_set.connected_to(sentinel):
            schema((1, 1))
            schema((2, u'bad child'))
            schema(u'bad root')

        assert len(data) == 7

        # 1, 1
        assert data[2][0].value == (1, 1)
        assert data[2][1] is True

        # 2, 'bad child'
        assert data[3][1] is True
        assert data[4][0].raw == u'bad child'
        assert data[4][1] is False
        assert data[5][1] is False

        # u'bad root
        assert data[6][0].raw == u'bad root'
        assert data[6][1] is False
Example #2
0
def test_scalar_set_signal():
    data = []
    sentinel = lambda sender, adapted: data.append((sender, adapted))

    Integer(0)
    with element_set.connected_to(sentinel):
        Integer(1)
        Integer(u'bogus')

    assert len(data) == 2
    assert data[0][0].value == 1
    assert data[0][1] is True

    assert data[1][0].raw == u'bogus'
    assert data[1][1] is False
Example #3
0
def test_element_set():
    data = []
    sentinel = lambda sender, adapted: data.append((sender, adapted))

    schema = List.of(Integer)
    schema([0])

    with element_set.connected_to(sentinel):
        schema([1])
        schema([u'bogus'])

    assert len(data) == 4  # Integer, List, Integer, List
    assert data[1][0].value == [1]
    assert data[1][1] is True

    assert data[2][0].raw == u'bogus'
    assert data[2][1] is False

    assert data[3][1] is False
Example #4
0
def test_dict_set_signal():
    data = []
    sentinel = lambda sender, adapted: data.append((sender, adapted))

    schema = Dict.of(Integer.named(u'x'))
    schema({u'x': 0})

    with element_set.connected_to(sentinel):
        schema({u'x': 1})
        schema({u'x': u'bogus'})

    assert len(data) == 4  # Integer, Dict, Integer, Dict
    assert data[1][0].value == {u'x': 1}
    assert data[1][1] is True

    assert data[2][0].raw == u'bogus'
    assert data[2][1] is False

    assert data[3][1] is False