コード例 #1
0
def test_pulse_view(windows, workbench, process_and_sleep):
    """Test the view of the Pulse class.

    """
    from ecpy.testing.util import show_widget
    with enaml.imports():
        from ecpy_pulses.pulses.sequences.views.base_sequences_views\
            import RootSequenceView

    pulse = Pulse(root=RootSequence(context=TestContext()))
    pulse.kind = 'Analogical'
    root = pulse.root
    root.add_child_item(0, pulse)
    core = workbench.get_plugin('enaml.workbench.core')
    root_view = RootSequenceView(item=root, core=core)
    pulse_view = root_view.view_for(pulse)
    show_widget(root_view)
    process_and_sleep()

    # Test selecting a slope shape
    shape_select = pulse_view.widgets()[-1].widgets()[-1]
    shape_select.selected = 'ecpy_pulses.SlopeShape'
    process_and_sleep()

    shape_view = pulse_view.widgets()[-1]
    sv_widgets = shape_view.split_items()[0].split_widget().widgets()

    for mode in ('Start/Stop', 'Start/Slope', 'Slope/Stop'):
        sv_widgets[1].selected = mode
        process_and_sleep()
        assert sv_widgets[2].text == mode.split('/')[0]
        assert sv_widgets[4].text == mode.split('/')[1]
コード例 #2
0
ファイル: test_pulse.py プロジェクト: Qcircuits/ecpy_pulses
def test_pulse_view(windows, workbench, pulse, process_and_sleep):
    """Test the view of the Pulse class.

    """
    import enaml
    from ecpy.testing.util import show_widget
    with enaml.imports():
        from ecpy_pulses.pulses.sequences.views.base_sequences_views\
            import RootSequenceView

    pulse.kind = 'Analogical'
    root = pulse.root
    root.add_child_item(0, pulse)
    core = workbench.get_plugin('enaml.workbench.core')
    root_view = RootSequenceView(item=root, core=core)
    pulse_view = root_view.view_for(pulse)
    show_widget(root_view)
    process_and_sleep()

    # Test swithcing between logical and analogical
    widgets_num = len(pulse_view.widgets())
    pulse.kind = 'Logical'
    process_and_sleep()
    process_and_sleep()
    assert widgets_num - 1 == len(pulse_view.widgets())
    pulse.kind = 'Analogical'
    process_and_sleep()
    assert widgets_num == len(pulse_view.widgets())

    # Test selecting a shape
    shape_select = pulse_view.widgets()[-1].widgets()[-1]
    shape_select.selected = 'ecpy_pulses.SquareShape'
    process_and_sleep()
    assert widgets_num + 1 == len(pulse_view.widgets())
    shape_select.selected = ''
    process_and_sleep()
    assert widgets_num == len(pulse_view.widgets())

    # Test adding a modulation
    mod_check = pulse_view.widgets()[-1].widgets()[0]
    mod_check.checked = True
    process_and_sleep()
    assert widgets_num + 1 == len(pulse_view.widgets())
    mod_check.checked = False
    process_and_sleep()
    assert widgets_num == len(pulse_view.widgets())
コード例 #3
0
ファイル: test_pulse.py プロジェクト: Ecpy/ecpy_pulses
def test_pulse_view(windows, workbench, pulse, process_and_sleep):
    """Test the view of the Pulse class.

    """
    import enaml
    from ecpy.testing.util import show_widget
    with enaml.imports():
        from ecpy_pulses.pulses.sequences.views.base_sequences_views\
            import RootSequenceView

    pulse.kind = 'Analogical'
    root = pulse.root
    root.add_child_item(0, pulse)
    core = workbench.get_plugin('enaml.workbench.core')
    root_view = RootSequenceView(item=root, core=core)
    pulse_view = root_view.view_for(pulse)
    show_widget(root_view)
    process_and_sleep()

    # Test swithcing between logical and analogical
    widgets_num = len(pulse_view.widgets())
    pulse.kind = 'Logical'
    process_and_sleep()
    process_and_sleep()
    assert widgets_num - 1 == len(pulse_view.widgets())
    pulse.kind = 'Analogical'
    process_and_sleep()
    assert widgets_num == len(pulse_view.widgets())

    # Test selecting a shape
    shape_select = pulse_view.widgets()[-1].widgets()[-1]
    shape_select.selected = 'ecpy_pulses.SquareShape'
    process_and_sleep()
    assert widgets_num + 1 == len(pulse_view.widgets())
    shape_select.selected = ''
    process_and_sleep()
    assert widgets_num == len(pulse_view.widgets())

    # Test adding a modulation
    mod_check = pulse_view.widgets()[-1].widgets()[0]
    mod_check.checked = True
    process_and_sleep()
    assert widgets_num + 1 == len(pulse_view.widgets())
    mod_check.checked = False
    process_and_sleep()
    assert widgets_num == len(pulse_view.widgets())