def replicate_integ_with_nth_change_missing(self, n): src_docker_cli = self.docker_clients['missing_nth_src'] dst_docker_cli = self.docker_clients['missing_nth_dst'] # create workspace depot_dir = '/depot/src_changes_missing%d' % n src_depot = '/%s/...' % depot_dir self.build_test_revision(src_docker_cli, depot_dir) src_changes = get_changelist_in_sample_depot(src_docker_cli, src_depot) src_counter = src_changes[n] # replicate if n != 0: replicate_sample_dir(depot_dir, src_docker_cli=src_docker_cli, dst_docker_cli=dst_docker_cli, obliterate=False, skip_verification=True, replicate_change_num=n) replicate_sample_dir(depot_dir, src_docker_cli=src_docker_cli, dst_docker_cli=dst_docker_cli, src_counter=int(src_counter), obliterate=False, skip_verification=True)
def replicate_sampledepot_integ_with_first_n_changes_missing(self, depot_dir, n): src_docker_cli = self.docker_clients['first_n_src'] dst_docker_cli = self.docker_clients['first_n_dst'] src_depot = '/%s/...' % depot_dir src_changes = get_changelist_in_sample_depot(src_docker_cli, src_depot) src_counter = src_changes[n] # replicate replicate_sample_dir(depot_dir, src_docker_cli=src_docker_cli, dst_docker_cli=dst_docker_cli, src_counter=int(src_counter), skip_verification=True)
def test_replicate_sample_depot_obliterate2(self): '''obliterate a file revision which is created by "branch to" ''' test_case = 'replicate_sample_depot_obliterate2' depot_dir = '/depot/Jamgraph' depot_file = '//depot/Jamgraph/REL1.0/src/jamgraph.vcproj#1' src_docker_cli = self.docker_clients['obliterate0'] self.obliterate_file_rev(src_docker_cli, depot_file) replicate_sample_dir(depot_dir, src_docker_cli=src_docker_cli, dst_docker_cli=self.docker_clients[1], do_integration_verification=False) logger.passed(test_case)
def test_replicate_sample_depot_obliterate1(self): '''obliterate 2nd revision of a file ''' test_case = 'replicate_sample_depot_obliterate1' depot_dir = '/depot/Misc/Artwork' depot_file = '//depot/Misc/Artwork/HQ.psd#2' src_docker_cli = self.docker_clients['obliterate1'] self.obliterate_file_rev(src_docker_cli, depot_file) replicate_sample_dir(depot_dir, src_docker_cli=src_docker_cli, dst_docker_cli=self.docker_clients[1], do_integration_verification=False) logger.passed(test_case)
def test_replicate_sample_depot_obliterate3(self): '''obliterate a file revision which is used as "branch from" in future change ''' test_case = 'replicate_sample_depot_obliterate3' depot_dir = '/depot/Jamgraph' depot_file = '//depot/Jamgraph/MAIN/src/jamgraph.vcproj#3' src_docker_cli = self.docker_clients['obliterate1'] self.obliterate_file_rev(src_docker_cli, depot_file) replicate_sample_dir(depot_dir, src_docker_cli=src_docker_cli, dst_docker_cli=self.docker_clients[1], do_integration_verification=False) logger.passed(test_case)
def test_replicate_integ_with_no_missing_change(self): '''replication integrations with missing revisions, i.e. missing changes ''' test_case = 'replicate_integ_with_missing_change' src_docker_cli = self.docker_clients['no_missing_src'] dst_docker_cli = self.docker_clients['no_missing_dst'] # create workspace depot_dir = '/depot/src_changes' self.build_test_revision(src_docker_cli, depot_dir) # replicate replicate_sample_dir(depot_dir, src_docker_cli=src_docker_cli, dst_docker_cli=dst_docker_cli) logger.passed(test_case)
def test_replicate_with_additional_target_rev(self): '''replication integrations with additional revision in target depot. This test is designed for BENG-1447 ''' test_case = 'replicate_with_additional_target_rev' src_docker_cli = self.docker_clients['move_non_last_rev_src'] dst_docker_cli = self.docker_clients['move_non_last_rev_dst'] # create source revision graph depot_dir = '/depot/src_move_graph' from_file_path = self.build_test_revision_move(src_docker_cli, depot_dir) # replicate all changelists but the last one src_depot = '/%s/...' % depot_dir src_changes = get_changelist_in_sample_depot(src_docker_cli, src_depot) num_change = len(src_changes) replicate_sample_dir(depot_dir, src_docker_cli=src_docker_cli, dst_docker_cli=dst_docker_cli, obliterate=False, replicate_change_num=num_change-1) # add one revision in target "move from" file dst_depot_dir = '/depot/buildtest%s' % depot_dir from_file_name = os.path.basename(from_file_path) with get_p4d_from_docker(dst_docker_cli, dst_depot_dir) as dst_p4: dst_from_file_path = os.path.join(dst_p4.cwd, from_file_name) dst_p4.run_sync('-f') dst_p4.run_edit(dst_from_file_path) with open(dst_from_file_path, 'at') as f: f.write('target additional rev') dst_p4.run_submit('-d', 'target additional rev') # replicate the last changelist replicate_sample_dir(depot_dir, src_docker_cli=src_docker_cli, dst_docker_cli=dst_docker_cli, src_counter=int(src_changes[-2]), skip_verification=True) logger.passed(test_case)
def replicate_sample_dir_withdocker(self, depot_dir): replicate_sample_dir(depot_dir, src_docker_cli=self.docker_clients[0], dst_docker_cli=self.docker_clients[1])