Code Duplication    Length = 9-13 lines in 3 locations

smartdispatch/tests/test_job_generator.py 3 locations

@@ 76-88 (lines=13) @@
73
        assert_equal(job_generator.pbs_list[1].commands, self.commands[2:])
74
75
    def test_generate_pbs4_mem(self):
76
        # Should need four PBS files
77
        command_params = {'mem_per_command': self.mem_per_node}
78
        job_generator = JobGenerator(self.queue, self.commands, command_params)
79
        assert_equal(len(job_generator.pbs_list), 4)
80
        assert_equal([pbs.commands[0] for pbs in job_generator.pbs_list], self.commands)
81
82
        # Since queue has no gpus it should not be specified in PBS resource `nodes`
83
        assert_true('gpus' not in job_generator.pbs_list[0].resources['nodes'])
84
85
        # Test modules to load
86
        # Check if needed modules for this queue are included in the PBS file
87
        assert_equal(job_generator.pbs_list[0].modules, self.modules)
88
89
    def test_generate_pbs2_gpu(self):
90
        # Test nb_gpus_per_command argument
91
        # Should need two PBS files
@@ 53-65 (lines=13) @@
50
        assert_equal(job_generator.pbs_list[0].commands, self.commands[:2])
51
        assert_equal(job_generator.pbs_list[1].commands, self.commands[2:])
52
53
    def test_generate_pbs4_cpu(self):
54
        # Should need four PBS files
55
        command_params = {'nb_cores_per_command': self.cores}
56
        job_generator = JobGenerator(self.queue, self.commands, command_params=command_params)
57
        assert_equal(len(job_generator.pbs_list), 4)
58
        assert_equal([pbs.commands[0] for pbs in job_generator.pbs_list], self.commands)
59
60
        # Since queue has no gpus it should not be specified in PBS resource `nodes`
61
        assert_true('gpus' not in job_generator.pbs_list[0].resources['nodes'])
62
63
        # Test modules to load
64
        # Check if needed modules for this queue are included in the PBS file
65
        assert_equal(job_generator.pbs_list[0].modules, self.modules)
66
67
    def test_generate_pbs2_mem(self):
68
        # Should need two PBS files
@@ 35-43 (lines=9) @@
32
    def tearDown(self):
33
        shutil.rmtree(self.testing_dir)
34
35
    def test_generate_pbs(self):
36
        job_generator = JobGenerator(self.queue, self.commands, prolog=self.prolog, epilog=self.epilog)
37
38
        # Test nb_cores_per_command argument
39
        # Should needs one PBS file
40
        assert_equal(len(job_generator.pbs_list), 1)
41
        assert_equal(job_generator.pbs_list[0].commands, self.commands)
42
        assert_equal(job_generator.pbs_list[0].prolog, self.prolog)
43
        assert_equal(job_generator.pbs_list[0].epilog, self.epilog)
44
45
    def test_generate_pbs2_cpu(self):
46
        # Should need two PBS files