Пример #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)
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)
Пример #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)
Пример #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)
Пример #6
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)
Пример #7
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)
Пример #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)
Пример #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)
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)
Пример #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)
Пример #12
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)
Пример #13
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)
Пример #14
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)
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)
Пример #16
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)
Пример #17
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)
Пример #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)
Пример #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)
Пример #20
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)
Пример #21
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)
Пример #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)
Пример #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)
Пример #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)
Пример #26
0
def test_signals_project_creation_with_project_type_when_new_project_button_clicked(
        driver):
    new_project_signal = ValueMatcherProbe("new project", "mp3")
    _ = show_page(on_create_project=new_project_signal.received)

    driver.new_project()
    driver.check(new_project_signal)
Пример #27
0
def test_signals_project_load_when_load_project_button_clicked(driver):
    load_project_signal = ValueMatcherProbe("load project", "project.tgit")
    _ = show_page(select_project=lambda on_select: on_select("project.tgit"),
                  on_load_project=load_project_signal.received)

    driver.load()
    driver.check(load_project_signal)
Пример #28
0
def test_signals_when_sign_in_menu_item_clicked(driver):
    sign_in_signal = ValueMatcherProbe("sign in")

    _ = show_main_window(on_sign_in=sign_in_signal.received)

    driver.sign_in()
    driver.check(sign_in_signal)
Пример #29
0
def test_signals_when_register_menu_item_clicked(driver):
    register_signal = ValueMatcherProbe("register",
                                        "https://tagyourmusic.com/en")

    _ = show_main_window(on_register=register_signal.received)

    driver.register()
    driver.check(register_signal)
Пример #30
0
def test_signals_when_online_help_menu_item_clicked(driver):
    online_help_signal = ValueMatcherProbe("online help",
                                           "http://blog.tagyourmusic.com/en")

    _ = show_main_window(on_online_help=online_help_signal.received)

    driver.help()
    driver.check(online_help_signal)
Пример #31
0
def test_signals_when_sign_out_menu_item_clicked(driver):
    sign_out_signal = ValueMatcherProbe("sign out")

    window_ = show_main_window(on_sign_out=sign_out_signal.received)
    window_.user_signed_in(User(email="*****@*****.**"))

    driver.sign_out()
    driver.check(sign_out_signal)
Пример #32
0
def test_signals_close_event_on_close(driver):
    closed_signal = ValueMatcherProbe("closed signal")

    widget = CloseableWidget()
    widget.closed.connect(closed_signal.received)

    widget.close()

    driver.check(closed_signal)
Пример #33
0
def test_signals_when_save_project_keyboard_shortcut_is_activated(driver):
    projet = make_album()
    signal = ValueMatcherProbe("save", projet)

    window_ = show_main_window(on_save_project=signal.received)
    window_.display_project_screen(projet)

    driver.save(using_shortcut=True)
    driver.check(signal)
Пример #34
0
def test_makes_play_track_request_when_play_context_menu_item_selected(driver):
    page = show_track_list_tab(
        make_album(type="mp3", tracks=[make_track(track_title="Spain")]))

    play_request = ValueMatcherProbe("play track request", has_title("Spain"))
    page.on_play_track(play_request.received)

    driver.play_track("Spain")
    driver.check(play_request)
Пример #35
0
def test_signals_project_to_open_when_open_action_triggered(driver, using):
    signal = ValueMatcherProbe("open project", "project.tgit")

    _ = show_page(make_project_history(
        make_snapshot(name="project", path="project.tgit")),
                  on_load_project=signal.received)

    driver.open_recent_project(starts_with("project"), using=using)
    driver.check(signal)
Пример #36
0
def test_signals_when_save_project_menu_item_clicked(driver):
    projet = make_album()
    signal = ValueMatcherProbe("save", projet)

    window_ = show_main_window(on_save_project=signal.received)
    window_.display_project_screen(projet)

    driver.save()
    driver.check(signal)
def test_selects_identities_on_isni_lookup(driver):
    signal = ValueMatcherProbe("select identity", "performer")

    _ = show_page(make_album(lead_performer="performer"),
                  make_registered_session(),
                  on_select_identity=signal.received)

    driver.lookup_isni_of_main_artist()
    driver.check(signal)
Пример #38
0
def test_signals_when_request_feature_menu_item_clicked(driver):
    request_feature_signal = ValueMatcherProbe(
        "request feature",
        "mailto:[email protected]?subject=[TGiT] I want more!")

    _ = show_main_window(on_request_feature=request_feature_signal.received)

    driver.request_feature()
    driver.check(request_feature_signal)
Пример #39
0
def test_signals_when_project_closed(driver):
    project = make_album()
    signal = ValueMatcherProbe("close", project)

    window_ = show_main_window(confirm_close=lambda on_accept: on_accept(),
                               on_close_project=signal.received)
    window_.display_project_screen(project)

    driver.close_project()
    driver.check(signal)
Пример #40
0
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)
Пример #41
0
def test_makes_stop_track_request_when_stop_context_menu_item_selected(driver):
    spain = make_track(track_title="Spain")
    stop_request = ValueMatcherProbe("stop track request")

    page = show_track_list_tab(make_album(type="mp3", tracks=[spain]))
    page.on_stop_track(stop_request.received)

    page.playback_started(spain)
    driver.stop_track("Spain")
    driver.check(stop_request)
Пример #42
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)
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)
Пример #44
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)