def test_send_file_to_itunes(self):
        """Scenario: Send to iTunes.
 
        Given I have "Send to iTunes" checked
        When  I convert the an apple format 
        Then the file is added to my iTunes library
        """
        item = "mp4-0.mp4"
        mvc = MVCGui()
        mvc.choose_device_conversion("iPad")
        mvc.choose_itunes()
        mvc.start_conversions()
        mvc.verify_completed(item, 30)
        assert mvc.verify_itunes(item)
    def test_send_file_to_itunes(self):
        """Scenario: Send to iTunes.
 
        Given I have "Send to iTunes" checked
        When  I convert the an apple format 
        Then the file is added to my iTunes library
        """
        item = "mp4-0.mp4"
        mvc = MVCGui()
        mvc.choose_device_conversion("iPad")
        mvc.choose_itunes()
        mvc.start_conversions()
        mvc.verify_completed(item, 30)
        assert mvc.verify_itunes(item)
def convert_to_format(device_output):
    print device_output
    expected_failures = ['fake_video.mp4']
    mvc = MVCGui()
    mvc.mvc_focus()
    datadir, testfiles = data.test_data(many=True, new=True)
    mvc.browse_for_files(datadir, testfiles)
    output_dir = tempfile.mkdtemp()
    mvc.choose_save_location(output_dir)
    mvc.choose_device_conversion("device_output")
    mvc.start_conversions()
    for item in testfiles:
        if item in expected_failures:
            mvc.verify_failed(item, 120)
        else:
            mvc.verify_completed(item, 120)
        mvc.clear_finished_files(item)
    mvc.clear_and_start_over()
def convert_to_format(device_output):
    print device_output
    expected_failures = ['fake_video.mp4']
    mvc = MVCGui()
    mvc.mvc_focus()
    datadir, testfiles = data.test_data(many=True, new=True)
    mvc.browse_for_files(datadir, testfiles)
    output_dir = tempfile.mkdtemp()
    mvc.choose_save_location(output_dir)
    mvc.choose_device_conversion("device_output")
    mvc.start_conversions()
    for item in testfiles:
        if item in expected_failures:
            mvc.verify_failed(item, 120)
        else:
            mvc.verify_completed(item, 120)
        mvc.clear_finished_files(item)
    mvc.clear_and_start_over()
    def test_browse_more_files_while_converting(self):
        """Scenario: Choose additional files and add to list with conversions in progress.

        Given I have files in the list
            And I start conversion
        When I browse for several new files
        Then the new files are added to the list
        """

        mvc = MVCGui()
        datadir, testfiles = data.test_data(many=True)
        mvc.browse_for_files(datadir, testfiles)
        mvc.choose_device_conversion("iPad")
        mvc.start_conversion()

        moredatadir, moretestfiles = data.test_data(many=False, new=True)
        item = testfiles[0]
        mvc.browse_for_files(moredatadir, item)
        assert mvc.verify_file_in_list(item)
        assert mvc.verify_completed(item, 60)
    def test_drag_more_file_while_converting(self):
        """Scenario: Drag additional files to the existing list with conversions in progress.

        Given I have files in the list
            And I start conversion
        When I drag a new file to the drop zone 
        Then the new file is added to the list and is converted
        """

        mvc = MVCGui()
        datadir, testfiles = data.test_data(many=True)
        mvc.browse_for_files(datadir, testfiles)
        mvc.choose_device_conversion("iPad")
        mvc.start_conversion()

        moredatadir, moretestfiles = data.test_data(many=False, new=True)
        item = testfiles[0]
        mvc.drag_and_drop_files(moredatadir, item)
        assert mvc.verify_file_in_list(item)
        assert mvc.verify_completed(item, 60)