コード例 #1
0
    def test_build_demo_project(self):
        remote = use_remote()
        save_mcurl = remote.config.mcurl
        with pytest.raises(Exception) as exception_info:
            host = "http://noda.host"
            remote.config.mcurl = host + "/api"
            set_remote(remote)

            builder = demo.DemoProject(self._make_test_dir_path())

            builder.build_project()

        remote.config.mcurl = save_mcurl
        set_remote(remote)
        self.assertTrue(str(exception_info.type).find("ConnectionError") > 0)
        self.assertTrue(str(exception_info.value).find("host='noda.host'") > 0)
コード例 #2
0
    def _build_project(self):

        project_name = _fake_name("ExpDeleteTest")
        print ""
        print "Project name: " + project_name

        self.test_project_name = project_name

        builder = demo.DemoProject(self._make_test_dir_path())

        table = builder._make_template_table()
        self.assertIsNotNone(builder._template_id_with(table, 'Create'))
        self.assertIsNotNone(builder._template_id_with(table, 'Sectioning'))
        self.assertIsNotNone(builder._template_id_with(table, 'EBSD SEM'))
        self.assertIsNotNone(builder._template_id_with(table, 'EPMA'))

        project = builder.build_project()

        name = 'Demo Project'
        self.helper.confirm_demo_project_content(project, name, 1)

        project = project.rename(project_name)
        self.assertEqual(project.name, project_name)

        experiments = project.get_all_experiments()
        old_experiment_id = experiments[0].id

        new_experiment_name = "Test: Additional Experiment"
        project = self.helper.add_additional_experiment(
            project, new_experiment_name)

        experiments = project.get_all_experiments()
        old_experiment = None
        new_experiment = None
        for experiment in experiments:
            if experiment.id == old_experiment_id:
                old_experiment = experiment
            if experiment.name == new_experiment_name:
                new_experiment = experiment

        self.assertIsNotNone(old_experiment)
        self.assertIsNotNone(new_experiment)
        self.old_experiment = old_experiment
        self.new_experiment = new_experiment

        return project
コード例 #3
0
    def _build_project(self):
        project_name = _fake_name("ProjectDeleteTest")
        print ""
        print "Project name: " + project_name

        self.test_project_name = project_name

        builder = demo.DemoProject(self._make_test_dir_path())

        project = builder.build_project()

        name = 'Demo Project'
        self.helper.confirm_demo_project_content(project, name, 1)

        project = project.rename(project_name)
        self.assertEqual(project.name, project_name)

        return project
コード例 #4
0
ファイル: test_project_delete.py プロジェクト: bpuchala/mcapi
    def _build_project(self):
        project_name = _fake_name("ProjectDeleteTest")
        print ""
        print "Project name: " + project_name

        self.test_project_name = project_name

        builder = demo.DemoProject(self._make_test_dir_path())

        table = builder._make_template_table()
        self.assertIsNotNone(builder._template_id_with(table, 'Create'))
        self.assertIsNotNone(builder._template_id_with(table, 'Sectioning'))
        self.assertIsNotNone(builder._template_id_with(table, 'EBSD SEM'))
        self.assertIsNotNone(builder._template_id_with(table, 'EPMA'))

        project = builder.build_project()

        name = 'Demo Project'
        self.helper.confirm_demo_project_content(project, name, 1)

        project = project.rename(project_name)
        self.assertEqual(project.name, project_name)

        return project
コード例 #5
0
set_datapath_arg()
set_apikey_arg()

args = parser.parse_args()

host = args.host
path = os_path.abspath(args.datapath)
key = args.apikey

# log_messages
# print "Running script to build demo project: "
# print "  host = " + host + ", "
# print "  key = " + key + ", "
# print "  path = " + path

try:
    builder = demo.DemoProject(host, path, key)
    # a basic get request that makes no changes; will fail if there is a problem with the host or key
    flag = builder.does_project_exist()

    project = builder.build_project()

    if flag:
        print "Refreshed project with name = " + project.name
    else:
        print "Built project with name = " + project.name

except Exception as err:
    traceback.print_exc()
    print 'Error: ', err
コード例 #6
0
    def test_build_demo_project(self):

        # Expected test values
        project_name = 'Demo Project'
        experiment_name = "Demo: Microsegregation in HPDC L380"
        sample_names = [
            'l380', 'L124', 'L124 - 2mm plate', 'L124 - 3mm plate',
            'L124 - 5mm plate', 'L124 - 5mm plate - 3ST',
            'L124 - tensil bar, gage'
        ]
        process_names = [
            'Lift 380 Casting Day  # 1', 'Casting L124',
            'Sectioning of Casting L124',
            'EBSD SEM Data Collection - 5 mm plate',
            'EPMA Data Collection - 5 mm plate - center'
        ]

        builder = demo.DemoProject(self._make_test_dir_path())

        if (builder.does_project_exist()):
            project = builder.get_existing_project()
            project.rename("Set aside",
                           "Forcing existing demo project to be set aside")

        table = builder._make_template_table()
        self.assertIsNotNone(builder._template_id_with(table, 'Create'))
        self.assertIsNotNone(builder._template_id_with(table, 'Sectioning'))
        self.assertIsNotNone(builder._template_id_with(table, 'EBSD SEM'))
        self.assertIsNotNone(builder._template_id_with(table, 'EPMA'))

        project = builder.build_project()

        self.assertIsNotNone(project)
        experiments = project.get_all_experiments()
        self.assertEqual(len(experiments), 1)
        experiment = experiments[0]
        self.assertIsNotNone(experiment)
        self.assertIsNotNone(experiment.project)
        self.assertIsNotNone(experiment.processes)
        self.assertEqual(project.id, experiment.project.id)
        self.assertEqual(project.name, project_name)
        self.assertEqual(experiment.name, experiment_name)

        self.assertEqual(len(experiment.processes), len(process_names))
        for name in process_names:
            found_process = None
            for process in experiment.processes:
                if name == process.name:
                    found_process = process
            self.assertIsNotNone(found_process,
                                 "Expecting to find process.name == " + name)

        self.assertEqual(len(experiment.samples), len(sample_names))
        for name in sample_names:
            found_sample = None
            for sample in experiment.samples:
                if name == sample.name:
                    found_sample = sample
            self.assertIsNotNone(found_sample,
                                 "Expecting to find sample.name == " + name)

        project_directory_path = "/FilesForSample"

        filename_list = [
            'LIFT Specimen Die.jpg', 'L124_photo.jpg',
            'LIFT HPDC Samplesv3.xlsx',
            'Measured Compositions_EzCast_Lift380.pptx',
            'GSD_Results_L124_MC.xlsx', 'Grain_Size_EBSD_L380_comp_5mm.tiff',
            'Grain_Size_EBSD_L380_comp_core.tiff',
            'Grain_Size_EBSD_L380_comp_skin.tiff',
            'Grain_Size_Vs_Distance.tiff', 'L124_plate_5mm_TT_GF2.txt',
            'L124_plate_5mm_TT_IPF.tif', 'EPMA_Analysis_L124_Al.tiff',
            'EPMA_Analysis_L124_Cu.tiff', 'EPMA_Analysis_L124_Si.tiff',
            'ExperimentData_Lift380_L124_20161227.docx',
            'Samples_Lift380_L124_20161227.xlsx'
        ]

        directory = project.get_directory_list(project_directory_path)[-1]
        self.assertEqual(directory.otype, 'directory')
        self.assertEqual(directory.path, project.name + project_directory_path)

        project_files = directory.get_children()
        self.assertEqual(len(project_files), len(filename_list))
        for name in filename_list:
            found_file = None
            for the_file in project_files:
                if name == the_file.name:
                    found_file = the_file
            self.assertIsNotNone(found_file,
                                 "Expecting to find file.name == " + name)

        experiment = project.get_all_experiments()[0]
        experiment = experiment.decorate_with_processes()
        experiment = experiment.decorate_with_samples()
        processes = experiment.processes

        processes_reordered = []
        for name in process_names:
            for probe in processes:
                if name == probe.name:
                    processes_reordered.append(probe)
        self.assertEqual(len(processes), len(processes_reordered))
        processes = processes_reordered

        for process in processes:
            process.decorate_with_output_samples()

        process_file_list = [[0, 2, 3], [0, 1], [1], [4, 5, 6, 7, 8, 9, 10],
                             [11, 12, 13, 14, 15]]

        process_index = 0
        for file_index_list in process_file_list:
            process = processes[process_index]
            for file_index in file_index_list:
                name = filename_list[file_index]
                found_file = None
                for the_file in process.files:
                    if name == the_file.name:
                        found_file = the_file
                error = "In process " + process.name + ": expecting to find file.name == " + name
                self.assertIsNotNone(found_file, error)
            process_index += 1