예제 #1
0
def namespacebrowser(qtbot):
    browser = NamespaceBrowser(None)
    browser.set_shellwidget(Mock())
    browser.setup()
    browser.resize(640, 480)
    browser.show()
    qtbot.addWidget(browser)
    return browser
예제 #2
0
def test_sort_by_column(qtbot):
    """
    Test that clicking the header view the namespacebrowser is sorted.
    Regression test for spyder-ide/spyder#9835 .
    """
    browser = NamespaceBrowser(None)
    qtbot.addWidget(browser)
    browser.set_shellwidget(Mock())
    browser.setup(exclude_private=True,
                  exclude_uppercase=True,
                  exclude_capitalized=True,
                  exclude_unsupported=False,
                  exclude_callables_and_modules=True,
                  minmax=False)
    browser.set_data({
        'a_variable': {
            'type': 'int',
            'size': 1,
            'color': '#0000ff',
            'view': '1'
        },
        'b_variable': {
            'type': 'int',
            'size': 1,
            'color': '#0000ff',
            'view': '2'
        }
    })

    header = browser.editor.horizontalHeader()

    # Check header is clickable
    assert header.sectionsClickable()

    model = browser.editor.model

    # Base check of the model
    assert model.rowCount() == 2
    assert model.columnCount() == 5
    assert data_table(model, 2, 4) == [['a_variable', 'b_variable'],
                                       ['int', 'int'], [1, 1], ['1', '2']]

    with qtbot.waitSignal(header.sectionClicked):
        browser.show()
        qtbot.mouseClick(header.viewport(), Qt.LeftButton, pos=QPoint(1, 1))

    # Check sort effect
    assert data_table(model, 2, 4) == [['b_variable', 'a_variable'],
                                       ['int', 'int'], [1, 1], ['2', '1']]
예제 #3
0
def test_sort_by_column(qtbot):
    """
    Test that clicking the header view the namespacebrowser is sorted.
    Regression test for spyder-ide/spyder#9835 .
    """
    browser = NamespaceBrowser(None)
    qtbot.addWidget(browser)
    browser.set_shellwidget(Mock())
    browser.setup()

    browser.set_data({
        'a_variable': {
            'type': 'int',
            'size': 1,
            'view': '1',
            'python_type': 'int',
            'numpy_type': 'Unknown'
        },
        'b_variable': {
            'type': 'int',
            'size': 1,
            'view': '2',
            'python_type': 'int',
            'numpy_type': 'Unknown'
        }
    })

    header = browser.editor.horizontalHeader()

    # Check header is clickable
    assert header.sectionsClickable()

    model = browser.editor.model

    # Base check of the model
    assert model.rowCount() == 2
    assert model.columnCount() == 5
    assert data_table(model, 2, 4) == [['a_variable', 'b_variable'],
                                       ['int', 'int'], [1, 1], ['1', '2']]

    with qtbot.waitSignal(header.sectionClicked):
        browser.show()
        qtbot.mouseClick(header.viewport(), Qt.LeftButton, pos=QPoint(1, 1))

    # Check sort effect
    assert data_table(model, 2, 4) == [['b_variable', 'a_variable'],
                                       ['int', 'int'], [1, 1], ['2', '1']]