public void DataSplitDesignerViewModel_ValidateThis_SourceStringIsEmptyOrWhiteSpace_DoesHaveErrors() { //------------Setup for test-------------------------- var items = new List <DataSplitDTO> { new DataSplitDTO("", DataSplitDTO.SplitTypeChars, "", 0) }; var mi = CreateModelItem(items); mi.SetProperty("SourceString", " "); var viewModel = new DataSplitDesignerViewModel(mi); viewModel.GetDatalistString = () => { const string trueString = "True"; const string noneString = "None"; var datalist = string.Format("<DataList><var Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><a Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><b Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><h Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><r Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><rec Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" ><set Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /></rec></DataList>", trueString, noneString); return(datalist); }; //------------Execute Test--------------------------- viewModel.Validate(); //------------Assert Results------------------------- Assert.AreEqual(1, viewModel.Errors.Count); StringAssert.Contains(viewModel.Errors[0].Message, Warewolf.Resource.Errors.ErrorResource.DataSplitStringToSplitErrorTest); }
public void DataSplitDesignerViewModel_ValidateThis_SourceStringIsNotEmpty_DoesNotHaveErrors() { //------------Setup for test-------------------------- var items = new List <DataSplitDTO> { new DataSplitDTO("", DataSplitDTO.SplitTypeChars, "", 0) }; var mi = CreateModelItem(items); mi.SetProperty("SourceString", "a,b,c"); var viewModel = new DataSplitDesignerViewModel(mi); viewModel.GetDatalistString = () => { const string trueString = "True"; const string noneString = "None"; var datalist = string.Format("<DataList><var Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><a Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><b Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><h Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><r Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><rec Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" ><set Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /></rec></DataList>", trueString, noneString); return(datalist); }; //------------Execute Test--------------------------- viewModel.Validate(); //------------Assert Results------------------------- Assert.IsNull(viewModel.Errors); }
public void DataSplitDesignerViewModel_ValidateCollectionItem_ValidatesPropertiesOfDTO() { //------------Setup for test-------------------------- var mi = ModelItemUtils.CreateModelItem(new DsfDataSplitActivity()); mi.SetProperty("DisplayName", "Split"); mi.SetProperty("SourceString", "a,b"); var dto = new DataSplitDTO("a]]", DataSplitDTO.SplitTypeIndex, "a", 0); // ReSharper disable PossibleNullReferenceException var miCollection = mi.Properties["ResultsCollection"].Collection; var dtoModelItem = miCollection.Add(dto); // ReSharper restore PossibleNullReferenceException var viewModel = new DataSplitDesignerViewModel(mi); viewModel.GetDatalistString = () => { const string trueString = "True"; const string noneString = "None"; var datalist = string.Format("<DataList><var Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><a Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><b Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><h Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><r Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><rec Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" ><set Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /></rec></DataList>", trueString, noneString); return(datalist); }; //------------Execute Test--------------------------- viewModel.Validate(); //------------Assert Results------------------------- Assert.AreEqual(2, viewModel.Errors.Count); StringAssert.Contains(viewModel.Errors[0].Message, Warewolf.Resource.Errors.ErrorResource.DataSplitInvalidExpressionErrorTest); Verify_IsFocused(dtoModelItem, viewModel.Errors[0].Do, "IsOutputVariableFocused"); StringAssert.Contains(viewModel.Errors[1].Message, Warewolf.Resource.Errors.ErrorResource.DataSplitUsingNullErrorTest); Verify_IsFocused(dtoModelItem, viewModel.Errors[1].Do, "IsAtFocused"); }
public void DataSplitDesignerViewModel_ValidateCollectionItem_ValidatesPropertiesOfDTO() { //------------Setup for test-------------------------- var mi = ModelItemUtils.CreateModelItem(new DsfDataSplitActivity()); mi.SetProperty("DisplayName", "Split"); mi.SetProperty("SourceString", "a,b"); var dto = new DataSplitDTO("a]]", DataSplitDTO.SplitTypeIndex, "a", 0); // ReSharper disable PossibleNullReferenceException var miCollection = mi.Properties["ResultsCollection"].Collection; var dtoModelItem = miCollection.Add(dto); // ReSharper restore PossibleNullReferenceException var viewModel = new DataSplitDesignerViewModel(mi); viewModel.GetDatalistString = () => { const string trueString = "True"; const string noneString = "None"; var datalist = string.Format("<DataList><var Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><a Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><b Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><h Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><r Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><rec Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" ><set Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /></rec></DataList>", trueString, noneString); return datalist; }; //------------Execute Test--------------------------- viewModel.Validate(); //------------Assert Results------------------------- Assert.AreEqual(2, viewModel.Errors.Count); StringAssert.Contains(viewModel.Errors[0].Message, "'Results' - Invalid expression: opening and closing brackets don't match"); Verify_IsFocused(dtoModelItem, viewModel.Errors[0].Do, "IsOutputVariableFocused"); StringAssert.Contains(viewModel.Errors[1].Message, "'Using' must be a real number"); Verify_IsFocused(dtoModelItem, viewModel.Errors[1].Do, "IsAtFocused"); }
public void DataSplitDesignerViewModel_ValidateThis_SourceStringIsEmptyOrWhiteSpace_DoesHaveErrors() { //------------Setup for test-------------------------- var items = new List<DataSplitDTO> { new DataSplitDTO("", DataSplitDTO.SplitTypeChars, "", 0) }; var mi = CreateModelItem(items); mi.SetProperty("SourceString", " "); var viewModel = new DataSplitDesignerViewModel(mi); viewModel.GetDatalistString = () => { const string trueString = "True"; const string noneString = "None"; var datalist = string.Format("<DataList><var Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><a Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><b Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><h Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><r Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><rec Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" ><set Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /></rec></DataList>", trueString, noneString); return datalist; }; //------------Execute Test--------------------------- viewModel.Validate(); //------------Assert Results------------------------- Assert.AreEqual(1, viewModel.Errors.Count); StringAssert.Contains(viewModel.Errors[0].Message, "'String to Split' cannot be empty or only white space"); }
public void DataSplitDesignerViewModel_ValidateThis_SourceStringIsNotEmpty_DoesNotHaveErrors() { //------------Setup for test-------------------------- var items = new List<DataSplitDTO> { new DataSplitDTO("", DataSplitDTO.SplitTypeChars, "", 0) }; var mi = CreateModelItem(items); mi.SetProperty("SourceString", "a,b,c"); var viewModel = new DataSplitDesignerViewModel(mi); viewModel.GetDatalistString = () => { const string trueString = "True"; const string noneString = "None"; var datalist = string.Format("<DataList><var Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><a Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><b Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><h Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><r Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /><rec Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" ><set Description=\"\" IsEditable=\"{0}\" ColumnIODirection=\"{1}\" /></rec></DataList>", trueString, noneString); return datalist; }; //------------Execute Test--------------------------- viewModel.Validate(); //------------Assert Results------------------------- Assert.IsNull(viewModel.Errors); }