Esempio n. 1
0
def test_signals_when_about_menu_item_clicked(driver):
    about_signal = ValueMatcherProbe("about")

    _ = show_main_window(on_about=lambda pressed: about_signal.received())

    driver.about()
    driver.check(about_signal)
def test_signals_when_artwork_selected(driver):
    album = make_album()
    signal = ValueMatcherProbe("select artwork")
    _ = show_page(album, on_select_artwork=lambda: signal.received())

    driver.add_artwork()
    driver.check(signal)
Esempio n. 3
0
def test_signals_when_about_menu_item_clicked(driver):
    about_signal = ValueMatcherProbe("about")

    _ = show_main_window(on_about=lambda pressed: about_signal.received())

    driver.about()
    driver.check(about_signal)
Esempio n. 4
0
def test_signals_when_settings_menu_item_clicked(driver):
    window_ = show_main_window()
    change_settings_signal = ValueMatcherProbe("change settings")
    window_.on_settings(lambda checked: change_settings_signal.received())

    driver.settings()
    driver.check(change_settings_signal)
Esempio n. 5
0
def test_signals_when_settings_menu_item_clicked(driver):
    window_ = show_main_window()
    change_settings_signal = ValueMatcherProbe("change settings")
    window_.on_settings(lambda checked: change_settings_signal.received())

    driver.settings()
    driver.check(change_settings_signal)
def test_signals_when_artwork_selected(driver):
    album = make_album()
    signal = ValueMatcherProbe("select artwork")
    _ = show_page(album, on_select_artwork=lambda: signal.received())

    driver.add_artwork()
    driver.check(signal)
def test_signals_select_album_destination(tmpdir, driver):
    destination = tmpdir.strpath
    select_album_destination_signal = ValueMatcherProbe("select destination", equal_to(destination))

    _ = show_dialog(on_select=lambda dest: select_album_destination_signal.received(os.path.abspath(dest)))

    driver.select_destination(destination)
    driver.check(select_album_destination_signal)
Esempio n. 8
0
def test_signals_save_as_destination(tmpdir, driver):
    destination = tmpdir.join("album.csv").strpath
    save_as_signal = ValueMatcherProbe("save as", destination)

    _ = show_dialog(on_select=lambda dest: save_as_signal.received(os.path.abspath(dest)))

    driver.save_as(destination)
    driver.check(save_as_signal)
Esempio n. 9
0
def test_signals_when_project_selected(driver):
    project_selected_signal = ValueMatcherProbe("project file selected",
                                                resources.path("album.tgit"))
    _ = show_dialog(on_select=lambda dest: project_selected_signal.received(
        os.path.abspath(dest)))

    driver.load(resources.path("album.tgit"))
    driver.check(project_selected_signal)
Esempio n. 10
0
def test_adds_extension_when_none_was_specified(tmpdir, driver):
    destination = tmpdir.join("album").strpath
    save_as_signal = ValueMatcherProbe("save as", destination + ".csv")

    _ = show_dialog(on_select=lambda dest: save_as_signal.received(os.path.abspath(dest)), default_suffix="csv")

    driver.save_as(destination)
    driver.check(save_as_signal)
Esempio n. 11
0
def test_asks_for_confirmation_when_project_file_already_exists(driver):
    project_exists_query = ValueMatcherProbe("check project exists",
                                             ("Honeycomb", "Documents"))
    _ = show_page(
        project_exists=lambda *args: project_exists_query.received(args))

    driver.create_project("Honeycomb", "Documents")
    driver.check(project_exists_query)
def test_signals_selected_file(driver):
    mp3 = resources.path("audio", "Rolling in the Deep.mp3")
    track_selection_signal = ValueMatcherProbe("track selection", mp3)

    _ = show_dialog(on_select_file=lambda sel: track_selection_signal.received(
        os.path.abspath(sel)))

    driver.select_tracks(mp3)
    driver.check(track_selection_signal)
Esempio n. 13
0
def test_signals_when_add_files_menu_item_clicked(driver):
    window_ = show_main_window(select_tracks=lambda type_, on_select: on_select("track1." + type_, "track2." + type_))
    project = build.album(of_type=Album.Type.FLAC)
    add_files_signal = ValueMatcherProbe("add files", contains(project, ("track1.flac", "track2.flac")))
    window_.on_add_files(lambda _, *files: add_files_signal.received([project, files]))
    window_.display_project_screen(project)

    driver.add_tracks_to_project(from_menu=True)
    driver.check(add_files_signal)
Esempio n. 14
0
def test_asks_for_confirmation_before_closing_project(driver):
    project = make_album()
    confirm_close_query = ValueMatcherProbe("confirm close")

    window_ = show_main_window(confirm_close=lambda **_: confirm_close_query.received(), on_close_project=ignore)
    window_.display_project_screen(project)

    driver.close_project()
    driver.check(confirm_close_query)
Esempio n. 15
0
def test_makes_add_tracks_request_when_add_button_clicked(driver):
    album = make_album()
    page = show_track_list_tab(album, select_tracks=lambda on_select: on_select("track1", "track2", "track3"))

    add_tracks_signal = ValueMatcherProbe("add tracks", contains("track1", "track2", "track3"))
    page.on_add_tracks(lambda *track_files: add_tracks_signal.received(track_files))

    driver.add_tracks()
    driver.check(add_tracks_signal)
Esempio n. 16
0
def test_signals_project_creation_cancellation(driver, using_shortcut):
    cancel_creation_signal = ValueMatcherProbe("cancel creation")
    page = show_page()
    page.on_cancel_creation(lambda: cancel_creation_signal.received())

    driver.cancel_creation("Honeycomb",
                           "Documents",
                           using_shortcut=using_shortcut)
    driver.check(cancel_creation_signal)
Esempio n. 17
0
def test_signals_save_as_destination(tmpdir, driver):
    destination = tmpdir.join("album.csv").strpath
    save_as_signal = ValueMatcherProbe("save as", destination)

    _ = show_dialog(
        on_select=lambda dest: save_as_signal.received(os.path.abspath(dest)))

    driver.save_as(destination)
    driver.check(save_as_signal)
Esempio n. 18
0
def test_creates_project_if_confirmed(driver):
    create_project_signal = ValueMatcherProbe(
        "new project", ("flac", "Honeycomb", "Documents", "track.flac"))
    _ = show_page(
        of_type="flac",
        project_exists=yes,
        on_create_project=lambda *args: create_project_signal.received(args))

    driver.create_project("Honeycomb", "Documents", "track.flac")
    driver.check(create_project_signal)
Esempio n. 19
0
def test_signals_when_export_menu_item_clicked(driver):
    window_ = show_main_window(select_export_destination=lambda on_select, name: on_select(name + ".csv"))
    projet = build.album(release_name="Honeycomb")
    export_signal = ValueMatcherProbe("export", contains(projet, "Honeycomb.csv"))
    window_.on_export(
        lambda current_projet, destination: export_signal.received([current_projet, destination]))
    window_.display_project_screen(projet)

    driver.export()
    driver.check(export_signal)
Esempio n. 20
0
def test_signals_when_add_folder_menu_item_clicked(driver):
    window_ = show_main_window(select_tracks_in_folder=lambda type_, on_select: on_select("track1." + type_,
                                                                                          "track2." + type_))
    projet = build.album()
    add_folder_signal = ValueMatcherProbe("add folder", contains(projet, ("track1.flac", "track2.flac")))
    window_.on_add_files(lambda current_projet, *file: add_folder_signal.received([current_projet, file]))
    window_.display_project_screen(projet)

    driver.add_tracks_in_folder()
    driver.check(add_folder_signal)
Esempio n. 21
0
def test_adds_extension_when_none_was_specified(tmpdir, driver):
    destination = tmpdir.join("album").strpath
    save_as_signal = ValueMatcherProbe("save as", destination + ".csv")

    _ = show_dialog(
        on_select=lambda dest: save_as_signal.received(os.path.abspath(dest)),
        default_suffix="csv")

    driver.save_as(destination)
    driver.check(save_as_signal)
Esempio n. 22
0
def test_asks_for_confirmation_before_closing_project(driver):
    project = make_album()
    confirm_close_query = ValueMatcherProbe("confirm close")

    window_ = show_main_window(
        confirm_close=lambda **_: confirm_close_query.received(),
        on_close_project=ignore)
    window_.display_project_screen(project)

    driver.close_project()
    driver.check(confirm_close_query)
Esempio n. 23
0
def test_signals_when_add_files_menu_item_clicked(driver):
    window_ = show_main_window(select_tracks=lambda type_, on_select:
                               on_select("track1." + type_, "track2." + type_))
    project = build.album(of_type=Album.Type.FLAC)
    add_files_signal = ValueMatcherProbe(
        "add files", contains(project, ("track1.flac", "track2.flac")))
    window_.on_add_files(
        lambda _, *files: add_files_signal.received([project, files]))
    window_.display_project_screen(project)

    driver.add_tracks_to_project(from_menu=True)
    driver.check(add_files_signal)
Esempio n. 24
0
def test_makes_add_tracks_request_when_add_button_clicked(driver):
    album = make_album()
    page = show_track_list_tab(album,
                               select_tracks=lambda on_select: on_select(
                                   "track1", "track2", "track3"))

    add_tracks_signal = ValueMatcherProbe(
        "add tracks", contains("track1", "track2", "track3"))
    page.on_add_tracks(
        lambda *track_files: add_tracks_signal.received(track_files))

    driver.add_tracks()
    driver.check(add_tracks_signal)
def test_alternatively_selects_files_of_given_type_in_folder(driver):
    mp3s = (resources.path("audio", "Rolling in the Deep.mp3"),
            resources.path("audio", "Set Fire to the Rain.mp3"),
            resources.path("audio", "Someone Like You.mp3"))

    tracks_selection_signal = ValueMatcherProbe("track(s) selection",
                                                contains_inanyorder(*mp3s))

    _ = show_dialog(on_select_files_in_folder=lambda *sel:
                    tracks_selection_signal.received(_abs_path(sel)))

    driver.select_tracks_in_folder(resources.path("audio"))
    driver.check(tracks_selection_signal)
def test_signals_when_project_selected(driver):
    project_selected_signal = ValueMatcherProbe("project file selected", resources.path("album.tgit"))
    _ = show_dialog(on_select=lambda dest: project_selected_signal.received(os.path.abspath(dest)))

    driver.load(resources.path("album.tgit"))
    driver.check(project_selected_signal)
Esempio n. 27
0
def test_signals_when_artwork_selected(driver, artwork_selection):
    signal = ValueMatcherProbe("file selected", resources.path("front-cover.jpg"))
    _ = show_dialog(artwork_selection, lambda destination: signal.received(os.path.abspath(destination)))

    driver.select(resources.path("front-cover.jpg"))
    driver.check(signal)
Esempio n. 28
0
def test_clicks_button_with_the_mouse(button, driver):
    button_pressed_signal = ValueMatcherProbe("button press")

    button.clicked.connect(lambda: button_pressed_signal.received())
    driver.click()
    driver.check(button_pressed_signal)