Ejemplo n.º 1
0
    def test_export(self):
        keys = ['a', 'b', 'c', 'd']
        values = [250, 'B', 'C', datetime.fromtimestamp(0).isoformat()]
        expectation = json.dumps([OrderedDict(zip(keys, values))])
        row = Row(keys, values)

        outcome = row.export('json')

        assert outcome == expectation
Ejemplo n.º 2
0
    def test___init___equal_length(self):
        keys = ['a', 'b', 'c']
        values = ['A', 'B', 'C']

        row = Row(keys, values)

        assert row._keys is keys
        assert row._values is values
Ejemplo n.º 3
0
    def test___str__(self):
        keys = ['a', 'b', 'c', 'd']
        values = [250, 'B', 'C', datetime.fromtimestamp(0).isoformat()]
        expectation = json.dumps(OrderedDict(zip(keys, values)))
        row = Row(keys, values)

        outcome = str(row)

        assert outcome == expectation
Ejemplo n.º 4
0
    def test__reduce_datetimes(self):
        t = datetime.now()
        origin = [t, 1, 'abc', True, None]
        expectation = origin.copy()
        expectation[0] = t.isoformat()

        outcome = Row._reduce_datetimes(origin)

        assert outcome == expectation
Ejemplo n.º 5
0
    def test___getitem___multiple_fields(self):
        row = Row(['a', 'b', 'b'], [1, 2, 3])

        with raises(KeyError, match="Multiple 'b' fields."):
            row['b']
Ejemplo n.º 6
0
    def test___init___unequal_length(self):
        keys = ['a', 'b', 'c']
        values = ['A', 'B']

        with raises(AssertionError):
            Row(keys, values)
Ejemplo n.º 7
0
def standard_row():
    keys = ['id', 'name', 'email', 'birthday']
    values = [250, 'Fool', '*****@*****.**', datetime.fromtimestamp(0)]
    return Row(keys, values, "DummyTable", "DummyDatabase")