Exemplo n.º 1
0
    def test_group_updated_in_ads_calls_any_change_handle(self):
        CreateSampleWorkspace(OutputWorkspace="ws1")
        CreateSampleWorkspace(OutputWorkspace="ws2")
        GroupWorkspaces(InputWorkspaces="ws1,ws2", OutputWorkspace="NewGroup")
        CreateSampleWorkspace(OutputWorkspace="ws3")

        self.project.anyChangeHandle = mock.MagicMock()
        ADS.addToGroup("NewGroup", "ws3")

        self.assertEqual(1, self.project.anyChangeHandle.call_count)
Exemplo n.º 2
0
    def test_group_updated_in_ads_calls_any_change_handle(self):
        CreateSampleWorkspace(OutputWorkspace="ws1")
        CreateSampleWorkspace(OutputWorkspace="ws2")
        GroupWorkspaces(InputWorkspaces="ws1,ws2", OutputWorkspace="NewGroup")
        CreateSampleWorkspace(OutputWorkspace="ws3")

        self.project.anyChangeHandle = mock.MagicMock()
        ADS.addToGroup("NewGroup", "ws3")

        self.assertEqual(1, self.project.anyChangeHandle.call_count)
    def test_observeGroupUpdated_calls_groupUpdateHandle_when_set_on_ads_and_a_group_in_the_ads_is_updated(self):
        CreateSampleWorkspace(OutputWorkspace="ws1")
        CreateSampleWorkspace(OutputWorkspace="ws2")
        CreateSampleWorkspace(OutputWorkspace="ws3")
        GroupWorkspaces(InputWorkspaces="ws1,ws2", OutputWorkspace="NewGroup")

        self.fake_class.observeGroupUpdate(True)
        self.fake_class.groupUpdateHandle = mock.MagicMock()
        ADS.addToGroup("NewGroup", "ws3")

        self.assertEqual(self.fake_class.groupUpdateHandle.call_count, 1)
    def test_addToGroup_adds_workspace_to_group(self):
        from mantid.simpleapi import CreateSampleWorkspace, GroupWorkspaces
        CreateSampleWorkspace(OutputWorkspace="ws1")
        CreateSampleWorkspace(OutputWorkspace="ws2")
        GroupWorkspaces(InputWorkspaces="ws1,ws2", OutputWorkspace="NewGroup")
        CreateSampleWorkspace(OutputWorkspace="ws3")

        AnalysisDataService.addToGroup("NewGroup", "ws3")

        group = mtd['NewGroup']

        self.assertEqual(group.size(), 3)
        self.assertCountEqual(group.getNames(), ["ws1", "ws2", "ws3"])
    def test_addToGroup_adds_workspace_to_group(self):
        from mantid.simpleapi import CreateSampleWorkspace, GroupWorkspaces
        CreateSampleWorkspace(OutputWorkspace="ws1")
        CreateSampleWorkspace(OutputWorkspace="ws2")
        GroupWorkspaces(InputWorkspaces="ws1,ws2", OutputWorkspace="NewGroup")
        CreateSampleWorkspace(OutputWorkspace="ws3")

        AnalysisDataService.addToGroup("NewGroup", "ws3")

        group = mtd['NewGroup']

        self.assertEquals(group.size(), 3)
        six.assertCountEqual(self, group.getNames(), ["ws1", "ws2", "ws3"])
Exemplo n.º 6
0
    def test_when_nested_workspaces_are_being_saved_from_the_ADS(self, logger):
        CreateSampleWorkspace(OutputWorkspace="ws1")
        CreateSampleWorkspace(OutputWorkspace="ws2")
        CreateSampleWorkspace(OutputWorkspace="ws3")
        CreateSampleWorkspace(OutputWorkspace="ws4")
        GroupWorkspaces(InputWorkspaces="ws1,ws2", OutputWorkspace="group1")
        GroupWorkspaces(InputWorkspaces="ws4,ws3", OutputWorkspace="group2")
        ADS.addToGroup("group2", "group1")
        ws_saver = workspacesaver.WorkspaceSaver(self.working_directory)

        ws_saver.save_workspaces(["group2"])

        self.assertListEqual(["group1", "group2", "ws1", "ws2", "ws3", "ws4"], ADS.getObjectNames())
        logger.warning.assert_called_with(u'Couldn\'t save workspace in project: "group2" because SaveNexusProcessed: '
                                          u'NeXus files do not support nested groups of groups')
    def test_observeAll_calls_anyChangeHandle_when_set_on_ads_group_updated(self):
        self.fake_class.observeAll(True)
        CreateSampleWorkspace(OutputWorkspace="ws1")
        expected_count = 1
        CreateSampleWorkspace(OutputWorkspace="ws2")
        expected_count += 1
        CreateSampleWorkspace(OutputWorkspace="ws3")
        expected_count += 1
        GroupWorkspaces(InputWorkspaces="ws1,ws2", OutputWorkspace="NewGroup")
        # One for grouping the workspace
        expected_count += 1
        # One for adding it to the ADS
        expected_count += 1

        # Will update group
        ADS.addToGroup("NewGroup", "ws3")
        expected_count += 1

        self.assertEqual(self.fake_class.anyChangeHandle.call_count, expected_count)