private bool CreateTestWorkSpace() { bool InvalidName = false; foreach (char c in tbWorkspaceName.Text) { if (Path.GetInvalidFileNameChars().Contains(c)) { InvalidName = true; break; } } if (InvalidName) { MessageBox.Show("The Test Workspace Name is Invalid! Select a name that can be used as the name of a Windows folder.", "Invalid Test Workspace Name", MessageBoxButtons.OK); tbWorkspaceName.Focus(); tbWorkspaceName.SelectAll(); return(false); } if (!TestWorkspaceDataProvider. GetTestWorkspaceDataProvider().IsWorkspaceNameUnique(tbWorkspaceName.Text)) { MessageBox.Show("The Test Workspace Name is Duplicate!", "Dupllicate Test Workspace Name", MessageBoxButtons.OK); return(false); } if (rbContinuousController.Checked) { testWorkspace = new CCTestWorkspace(tbWorkspaceName.Text); } else if (rbSimulink.Checked) { testWorkspace = new SLTestWorkspace(tbWorkspaceName.Text); } else { testWorkspace = new IOTestWorkspace(tbWorkspaceName.Text); } return(true); }
public TestWorkspace LoadTestWorkspace(string testWorkspaceName) { XmlReaderSettings xmlSettings = new XmlReaderSettings(); xmlSettings.ValidationType = ValidationType.None; XmlReader workspaceReader = XmlReader.Create( GetWorkspaceInfoFilePath(testWorkspaceName), xmlSettings); FunctionTypeEnum functionType = FunctionTypeEnum.Continuous_Controller; TestWorkspace testWorkspace = null; while (workspaceReader.Read()) { if (workspaceReader.NodeType == XmlNodeType.Element && workspaceReader.Name == "FunctionType") { workspaceReader.Read(); functionType = (FunctionTypeEnum)Enum.Parse(typeof(FunctionTypeEnum), workspaceReader.Value, true); switch (functionType) { case FunctionTypeEnum.Continuous_Controller: testWorkspace = new CCTestWorkspace(testWorkspaceName); break; case FunctionTypeEnum.State_Based_Controller: testWorkspace = new SLTestWorkspace(testWorkspaceName); break; case FunctionTypeEnum.Input_Output: testWorkspace = new IOTestWorkspace(testWorkspaceName); break; } workspaceReader.Read(); } if (workspaceReader.NodeType == XmlNodeType.Element && workspaceReader.Name == "SimulationTime") { workspaceReader.Read(); testWorkspace.SetSimulationTime(Int16.Parse(workspaceReader.Value)); workspaceReader.Read(); } if (workspaceReader.NodeType == XmlNodeType.Element && workspaceReader.Name == "ModelRunningTime") { workspaceReader.Read(); testWorkspace.SetModelRunningTime(Int16.Parse(workspaceReader.Value)); workspaceReader.Read(); } } workspaceReader.Close(); switch (testWorkspace.functionType) { case FunctionTypeEnum.Continuous_Controller: testWorkspace.modelSettings = SettingFilesManager.LoadModelSettings( GetWorkspacePath(testWorkspaceName)); LoadCCTestWorkspace((CCTestWorkspace)testWorkspace); break; case FunctionTypeEnum.State_Based_Controller: testWorkspace.modelSettings = SettingFilesManager.LoadModelSettings( GetWorkspacePath(testWorkspaceName)); LoadSBTestWorkspace((SLTestWorkspace)testWorkspace); break; case FunctionTypeEnum.Input_Output: break; } return(testWorkspace); }