Example #1
0
def test_multi_index():
    view = QgridWidget(df=create_multi_index_df())

    observer_count = 0

    def on_value_change(change):
        nonlocal observer_count
        observer_count += 1

    view.observe(on_value_change, names=['_df'])

    view._handle_qgrid_msg_helper({
        'type': 'get_column_min_max',
        'field': 'level_0',
        'search_val': None
    })

    view._handle_qgrid_msg_helper({
        'type': 'filter_changed',
        'field': 3,
        'filter_info': {
            'field': 3,
            'type': 'slider',
            'min': -0.111,
            'max': None
        }
    })

    view._handle_qgrid_msg_helper({
        'type': 'filter_changed',
        'field': 3,
        'filter_info': {
            'field': 3,
            'type': 'slider',
            'min': None,
            'max': None
        }
    })

    view._handle_qgrid_msg_helper({
        'type': 'sort_changed',
        'sort_field': 3,
        'sort_ascending': True
    })

    view._handle_qgrid_msg_helper({
        'type': 'sort_changed',
        'sort_field': 'level_0',
        'sort_ascending': True
    })

    assert observer_count == 4
Example #2
0
def test_add_row():
    view = QgridWidget(df=create_df())

    observer_called = {}

    def on_value_change(change):
        observer_called['called'] = True
        assert len(change['new']) == 5

    view.observe(on_value_change, names=['_df'])

    view._handle_qgrid_msg_helper({'type': 'add_row'})

    assert observer_called['called']
Example #3
0
def test_edit_date():
    view = QgridWidget(df=create_df())
    observer_called = False

    def on_value_change(change):
        nonlocal observer_called
        observer_called = True
        assert change['new']['Date'][3] == pd.Timestamp('2013-01-16 00:00:00')

    view.observe(on_value_change, names=['_df'])

    view._handle_qgrid_msg_helper({
        'column': "Date",
        'row_index': 3,
        'type': "cell_change",
        'unfiltered_index': 0,
        'value': "2013-01-16T00:00:00.000+00:00"
    })

    assert observer_called