Ejemplo n.º 1
0
def test_grid_not_equal_row():
    ref = Grid()
    ref.column['test'] = {}
    ref.extend([{'test': 1}, {'test': 2}, {'test': 3}])
    diff = copy.deepcopy(ref)
    diff[0] = {'test': 4}
    assert ref != diff
Ejemplo n.º 2
0
def test_grid_index():
    grid = Grid()
    grid.column['id'] = {}
    grid.column['val'] = {}
    grid.insert(0, {'id': 'idx1'})
    assert 'idx1' in grid._index
    assert grid['idx1']
    assert grid.get('idx1')
    grid.insert(1, {'id': 'idx2'})
    assert 'idx1' in grid._index
    assert 'idx2' in grid._index
    assert grid.get('idx2')
    grid[0] = {'id': 'idx3'}
    assert not 'idx1' in grid._index
    assert 'idx3' in grid._index
    assert grid.get('idx3')
    del grid[1]
    assert not 'idx2' in grid._index
    grid.extend([
        {
            'id': 'idx5'
        },
        {
            'id': 'idx6'
        },
    ])
    assert 'idx5' in grid._index
    assert 'idx6' in grid._index
    grid[0]['id'] = 'idx4'
    grid.reindex()
    assert 'idx4' in grid._index
    assert grid.get('idx4')
Ejemplo n.º 3
0
def test_grid_not_equal_with_updated_value():
    ref = Grid()
    ref.column['test'] = {"a": 1}
    ref.extend([{'test': 1}, {'test': 2}, {'test': 3}])
    diff = copy.deepcopy(ref)
    diff.column['test'] = {"a": ""}
    assert ref != diff
Ejemplo n.º 4
0
def test_grid_new_row():
    ref = Grid()
    ref.column['test'] = {}
    ref.extend([{'test': 1}, {'test': 2}, {'test': 3}])
    diff = copy.deepcopy(ref)
    diff.append({'test': 4})
    assert ref != diff
Ejemplo n.º 5
0
def test_grid_not_equal__with_new_col():
    ref = Grid()
    ref.column['test'] = {}
    ref.extend([{'test': 1}, {'test': 2}, {'test': 3}])
    diff = copy.deepcopy(ref)
    diff.column["added"] = {}
    assert ref != diff
Ejemplo n.º 6
0
def test_grid_not_equal_col_with_updated_metadata():
    ref = Grid()
    ref.column['test'] = {}
    ref.extend([{'test': 1}, {'test': 2}, {'test': 3}])
    diff = copy.deepcopy(ref)
    diff.column['test']['test'] = None
    assert ref != diff
Ejemplo n.º 7
0
def test_grid_equal_with_complex_datas():
    ref = Grid()
    ref.column['test'] = {}
    ref.extend([
        {
            'test': datetime.datetime(2010, 11, 28, 7, 23, 2, 600000)
        },
        {
            'test': Quantity(500, 'kg')
        },
        {
            'test': Coordinate(100, 100)
        },
        {
            'test': 1.0
        },
    ])
    similar = Grid()
    similar.column['test'] = {}
    similar.extend([
        {
            'test': datetime.datetime(2010, 11, 28, 7, 23, 2, 500000)
        },
        {
            'test': Quantity(500.000001, 'kg')
        },
        {
            'test': Coordinate(100.000001, 100.000001)
        },
        {
            'test': 1.000001
        },
    ])

    assert ref == similar
Ejemplo n.º 8
0
def test_grid_not_equal_col_with_new_metadata():
    ref = Grid()
    ref.column['test'] = {}
    ref.extend([{'test': 1}, {'test': 2}, {'test': 3}])
    diff = copy.deepcopy(ref)
    diff.column.add_item('test', 'add')
    assert ref != diff
Ejemplo n.º 9
0
def test_grid_del():
    g = Grid()
    rows = [{'test': 1}, {'test': 2}, {'test': 3}]
    g.column['test'] = {}
    g.extend(rows)
    assert len(g) == 3
    del g[1]
    assert len(g) == 2
    assert g[0] is rows[0]
    assert g[1] is rows[2]
Ejemplo n.º 10
0
def test_grid_not_equal_metadata():
    ref = Grid(metadata={"x": {}})
    ref.column['test'] = {}
    ref.extend([{'test': 1}, {'test': 2}, {'test': 3}])
    diff = copy.deepcopy(ref)
    diff.metadata.append('add')
    assert ref != diff

    diff = copy.deepcopy(ref)
    diff.metadata["x"] = 1
    assert ref != diff
Ejemplo n.º 11
0
def test_grid_insert():
    g = Grid()
    rows = [{'test': 1}, {'test': 2}, {'test': 3}]
    g.column['test'] = {}
    g.extend(rows)
    assert len(g) == 3
    new_row = {'test': 'new'}
    g.insert(1, new_row)
    assert len(g) == 4
    assert g[0] is rows[0]
    assert g[1] is new_row
    assert g[2] is rows[1]
    assert g[3] is rows[2]
Ejemplo n.º 12
0
def test_grid_str():
    g = Grid(version=VER_3_0)
    rows = [{'test': 1}, {'test': 2}, {'test': 3}]
    g.column['test'] = {}
    g.extend(rows)
    assert repr(g) == '<Grid>\n' \
                      '\tVersion: 3.0\n' \
                      '\tColumns:\n' \
                      '\t\ttest\n' \
                      '\tRow    0:\n' \
                      '\ttest=1\n' \
                      '\tRow    1:\n' \
                      '\ttest=2\n' \
                      '\tRow    2:\n' \
                      '\ttest=3\n' \
                      '</Grid>'
Ejemplo n.º 13
0
def test_grid_equal():
    ref = Grid()
    ref.column['test'] = {}
    ref.extend([{'test': 1}, {'test': 2}, {'test': 3}])
    assert ref == copy.deepcopy(ref)