def test_UI_will_edit_the_given_Project_instance(self): """testing if a Project instance is passed the interface will allow the given Project instance to be edited """ new_client = Client(name='Test Client 1') new_client.save() new_project = Project("Test Project") new_project.create() dialog = project_properties.MainDialog(project=new_project) # now edit the project from the UI new_name = "Test Project New Name" new_fps = 50 dialog.name_lineEdit.setText(new_name) new_client_2_name = 'Test Client 2' dialog.clients_comboBox.lineEdit().setText(new_client_2_name) dialog.fps_spinBox.setValue(new_fps) dialog.resolution_comboBox.setCurrentIndex(3) preset_name = dialog.resolution_comboBox.currentText() resolution_data = conf.resolution_presets[preset_name] dialog.active_checkBox.setChecked(False) dialog.shot_number_prefix_lineEdit.setText("PL") dialog.shot_number_padding_spinBox.setValue(5) dialog.revision_number_prefix_lineEdit.setText("rev") dialog.revision_number_padding_spinBox.setValue(3) dialog.version_number_prefix_lineEdit.setText("ver") dialog.version_number_padding_spinBox.setValue(5) new_structure = "This is the new structure\nwith three lines\n" + \ "and this is the third line" dialog.structure_textEdit.setText(new_structure) # hit ok QTest.mouseClick(dialog.buttonBox.buttons()[0], Qt.LeftButton) # now check the data self.assertEqual(new_project.name, new_name) self.assertEqual(new_project.client.name, new_client_2_name) # check if a client is created with that name new_client_2 = Client.query().filter( Client.name == new_client_2_name).first() self.assertIsInstance(new_client_2, Client) self.assertEqual(new_project.fps, new_fps) self.assertEqual(new_project.width, resolution_data[0]) self.assertEqual(new_project.height, resolution_data[1]) self.assertEqual(new_project.pixel_aspect, resolution_data[2]) self.assertEqual(new_project.active, False) self.assertEqual(new_project.shot_number_padding, 5) self.assertEqual(new_project.shot_number_prefix, "PL") self.assertEqual(new_project.rev_number_padding, 3) self.assertEqual(new_project.rev_number_prefix, "rev") self.assertEqual(new_project.ver_number_padding, 5) self.assertEqual(new_project.ver_number_prefix, "ver") self.assertEqual(new_project.structure, new_structure)
def test_UI_will_edit_the_given_Project_instance(self): """testing if a Project instance is passed the interface will allow the given Project instance to be edited """ new_client = Client(name='Test Client 1') new_client.save() new_project = Project("Test Project") new_project.create() dialog = project_properties.MainDialog(project=new_project) # now edit the project from the UI new_name = "Test Project New Name" new_fps = 50 dialog.name_lineEdit.setText(new_name) new_client_2_name = 'Test Client 2' dialog.clients_comboBox.lineEdit().setText(new_client_2_name) dialog.fps_spinBox.setValue(new_fps) dialog.resolution_comboBox.setCurrentIndex(3) preset_name = dialog.resolution_comboBox.currentText() resolution_data = conf.resolution_presets[preset_name] dialog.active_checkBox.setChecked(False) dialog.shot_number_prefix_lineEdit.setText("PL") dialog.shot_number_padding_spinBox.setValue(5) dialog.revision_number_prefix_lineEdit.setText("rev") dialog.revision_number_padding_spinBox.setValue(3) dialog.version_number_prefix_lineEdit.setText("ver") dialog.version_number_padding_spinBox.setValue(5) new_structure = "This is the new structure\nwith three lines\n" + \ "and this is the third line" dialog.structure_textEdit.setText(new_structure) # hit ok QTest.mouseClick(dialog.buttonBox.buttons()[0], Qt.LeftButton) # now check the data self.assertEqual(new_project.name, new_name) self.assertEqual(new_project.client.name, new_client_2_name) # check if a client is created with that name new_client_2 = Client.query().filter(Client.name==new_client_2_name).first() self.assertIsInstance(new_client_2, Client) self.assertEqual(new_project.fps, new_fps) self.assertEqual(new_project.width, resolution_data[0]) self.assertEqual(new_project.height, resolution_data[1]) self.assertEqual(new_project.pixel_aspect, resolution_data[2]) self.assertEqual(new_project.active, False) self.assertEqual(new_project.shot_number_padding, 5) self.assertEqual(new_project.shot_number_prefix, "PL") self.assertEqual(new_project.rev_number_padding, 3) self.assertEqual(new_project.rev_number_prefix, "rev") self.assertEqual(new_project.ver_number_padding, 5) self.assertEqual(new_project.ver_number_prefix, "ver") self.assertEqual(new_project.structure, new_structure)
def test_passing_a_Project_instance_will_fill_the_interface_with_the_project( self): """testing if passing a Project instance will fill the interface with the data coming from the given Project instance """ new_client = Client(name='Client Agency 1', code='CA1') new_client.save() new_project = Project("Test Project") new_project.client = new_client new_project.width = 720 new_project.height = 576 new_project.pixel_aspect = 1.067 new_project.fps = 30 new_project.active = True dialog = project_properties.MainDialog(project=new_project) # now check if the interface is filled properly self.assertEqual(dialog.name_lineEdit.text(), new_project.name) self.assertEqual(dialog.code_lineEdit.text(), new_project.code) # preset name preset_name = dialog.resolution_comboBox.currentText() self.assertEqual(conf.resolution_presets[preset_name][0], new_project.width) self.assertEqual(conf.resolution_presets[preset_name][1], new_project.height) self.assertEqual(conf.resolution_presets[preset_name][2], new_project.pixel_aspect) self.assertEqual(dialog.fps_spinBox.value(), new_project.fps) self.assertEqual(dialog.active_checkBox.isChecked(), True) # Advanced settings self.assertEqual(dialog.shot_number_prefix_lineEdit.text(), new_project.shot_number_prefix) self.assertEqual(dialog.shot_number_padding_spinBox.value(), new_project.shot_number_padding) # self.assertEqual( # dialog.revision_number_prefix_lineEdit.text(), # new_project.rev_number_prefix # ) # self.assertEqual( # dialog.revision_number_padding_spinBox.value(), # new_project.rev_number_padding # ) # self.assertEqual( # dialog.version_number_prefix_lineEdit.text(), # new_project.ver_number_prefix # ) # self.assertEqual( # dialog.version_number_padding_spinBox.value(), # new_project.ver_number_padding # ) self.assertEqual(dialog.structure_textEdit.toPlainText(), new_project.structure)
def button_box_ok_clicked(self): """runs when the ok button clicked """ # if there is no project given create a new one and return it # create_project # get the data from the input fields name = self.name_lineEdit.text() code = self.code_lineEdit.text() # check if the code is empty if code=="": # raise an error please QtGui.QMessageBox.critical( self, "Error", "Code field can not be empty,\n" "Please enter a proper Code!!!" ) return client_name = self.clients_comboBox.currentText() client = Client.query().filter(Client.name==client_name).first() if not client: # just create the client client = Client(name=client_name) client.save() resolution_name = self.resolution_comboBox.currentText() resolution_data = conf.resolution_presets[resolution_name] fps = self.fps_spinBox.value() active = self.active_checkBox.isChecked() # advanced properties shot_number_padding = self.shot_number_padding_spinBox.value() shot_number_prefix = self.shot_number_prefix_lineEdit.text() rev_number_padding = self.revision_number_padding_spinBox.value() rev_number_prefix = self.revision_number_prefix_lineEdit.text() ver_number_padding = self.version_number_padding_spinBox.value() ver_number_prefix = self.version_number_prefix_lineEdit.text() structure_code = self.structure_textEdit.toPlainText() is_new_project = False if self.project is None: logger.debug("no project is given creating new one") # create the project self.project = Project(name=name, code=code) is_new_project = True else: logger.debug("updating the given project") # update the project self.project.name = name self.project.client = client self.project.fps = fps self.project.width = resolution_data[0] self.project.height = resolution_data[1] self.project.pixel_aspect = resolution_data[2] self.project.active = active self.project.shot_number_padding = shot_number_padding self.project.shot_number_prefix = shot_number_prefix self.project.rev_number_padding = rev_number_padding self.project.rev_number_prefix = rev_number_prefix self.project.ver_number_padding = ver_number_padding self.project.ver_number_prefix = ver_number_prefix self.project.structure = structure_code if is_new_project: self.project.create() else: self.project.save() # and close the dialog self.close()
def button_box_ok_clicked(self): """runs when the ok button clicked """ # if there is no project given create a new one and return it # create_project # get the data from the input fields name = self.name_lineEdit.text() code = self.code_lineEdit.text() # check if the code is empty if code == "": # raise an error please QtGui.QMessageBox.critical( self, "Error", "Code field can not be empty,\n" "Please enter a proper Code!!!") return client_name = self.clients_comboBox.currentText() client = Client.query().filter(Client.name == client_name).first() if not client: # just create the client client = Client(name=client_name) client.save() resolution_name = self.resolution_comboBox.currentText() resolution_data = conf.resolution_presets[resolution_name] fps = self.fps_spinBox.value() active = self.active_checkBox.isChecked() # advanced properties shot_number_padding = self.shot_number_padding_spinBox.value() shot_number_prefix = self.shot_number_prefix_lineEdit.text() rev_number_padding = self.revision_number_padding_spinBox.value() rev_number_prefix = self.revision_number_prefix_lineEdit.text() ver_number_padding = self.version_number_padding_spinBox.value() ver_number_prefix = self.version_number_prefix_lineEdit.text() structure_code = self.structure_textEdit.toPlainText() is_new_project = False if self.project is None: logger.debug("no project is given creating new one") # create the project self.project = Project(name=name, code=code) is_new_project = True else: logger.debug("updating the given project") # update the project self.project.name = name self.project.client = client self.project.fps = fps self.project.width = resolution_data[0] self.project.height = resolution_data[1] self.project.pixel_aspect = resolution_data[2] self.project.active = active self.project.shot_number_padding = shot_number_padding self.project.shot_number_prefix = shot_number_prefix self.project.rev_number_padding = rev_number_padding self.project.rev_number_prefix = rev_number_prefix self.project.ver_number_padding = ver_number_padding self.project.ver_number_prefix = ver_number_prefix self.project.structure = structure_code if is_new_project: self.project.create() else: self.project.save() # and close the dialog self.close()
def test_passing_a_Project_instance_will_fill_the_interface_with_the_project(self): """testing if passing a Project instance will fill the interface with the data coming from the given Project instance """ new_client = Client(name='Client Agency 1', code='CA1') new_client.save() new_project = Project("Test Project") new_project.client = new_client new_project.width = 720 new_project.height = 576 new_project.pixel_aspect = 1.067 new_project.fps = 30 new_project.active = True dialog = project_properties.MainDialog(project=new_project) # now check if the interface is filled properly self.assertEqual( dialog.name_lineEdit.text(), new_project.name ) self.assertEqual( dialog.code_lineEdit.text(), new_project.code ) # preset name preset_name = dialog.resolution_comboBox.currentText() self.assertEqual( conf.resolution_presets[preset_name][0], new_project.width ) self.assertEqual( conf.resolution_presets[preset_name][1], new_project.height ) self.assertEqual( conf.resolution_presets[preset_name][2], new_project.pixel_aspect ) self.assertEqual( dialog.fps_spinBox.value(), new_project.fps ) self.assertEqual( dialog.active_checkBox.isChecked(), True ) # Advanced settings self.assertEqual( dialog.shot_number_prefix_lineEdit.text(), new_project.shot_number_prefix ) self.assertEqual( dialog.shot_number_padding_spinBox.value(), new_project.shot_number_padding ) # self.assertEqual( # dialog.revision_number_prefix_lineEdit.text(), # new_project.rev_number_prefix # ) # self.assertEqual( # dialog.revision_number_padding_spinBox.value(), # new_project.rev_number_padding # ) # self.assertEqual( # dialog.version_number_prefix_lineEdit.text(), # new_project.ver_number_prefix # ) # self.assertEqual( # dialog.version_number_padding_spinBox.value(), # new_project.ver_number_padding # ) self.assertEqual( dialog.structure_textEdit.toPlainText(), new_project.structure )