public void GetConstraint_SingleRow_CorrectConstraint() { var sutXmlStubFactory = new Mock <Systems.ExecutionXml>(); var itemXmlStubFactory = new Mock <QueryableXml>(); itemXmlStubFactory.Setup(i => i.GetQuery()).Returns("query"); sutXmlStubFactory.Setup(s => s.Item).Returns(itemXmlStubFactory.Object); var sutXml = sutXmlStubFactory.Object; sutXml.Item = itemXmlStubFactory.Object; var columnDef = Mock.Of <ColumnDefinitionXml> ( c => c.Index == 1 && c.Role == ColumnRole.Value && c.Type == ColumnType.Text ); var ctrXml = new EqualToXml(true); ctrXml.Behavior = EqualToXml.ComparisonBehavior.SingleRow; ctrXml.Query = new QueryXml(); ctrXml.Query.InlineQuery = "select * from Table;"; var builder = new ResultSetEqualToBuilder(); builder.Setup(sutXml, ctrXml); builder.Build(); var ctr = builder.GetConstraint(); Assert.That(ctr, Is.InstanceOf <EqualToConstraint>()); Assert.That(((EqualToConstraint)ctr).Engine, Is.InstanceOf <SingleRowComparer>()); Assert.That(((EqualToConstraint)ctr).Engine.Settings, Is.InstanceOf <SettingsSingleRowComparison>()); }
protected internal TestSuiteXml BuildResultSetsBased() { var testSuite = new TestSuiteXml(); var queries = Directory.GetFiles(actual.Directory); foreach (var query in queries) { if (File.Exists(Path.Combine(expect.Directory, Path.GetFileNameWithoutExtension(query) + ".csv"))) { var test = new TestXml(); testSuite.Tests.Add(test); test.Name = Path.GetFileNameWithoutExtension(query); test.Categories.AddRange(Path.GetFileNameWithoutExtension(query).Split(new string[] { " - " }, StringSplitOptions.RemoveEmptyEntries)); var ctr = new EqualToXml(); test.Constraints.Add(ctr); ctr.ResultSetOld = new ResultSetXml() { File = Path.Combine(expect.Directory, Path.GetFileNameWithoutExtension(query) + ".csv") }; var sut = new Systems.ExecutionXml(); test.Systems.Add(sut); ((QueryXml)sut.Item).File = query; ((QueryXml)sut.Item).ConnectionString = actual.ConnectionString; } } return(testSuite); }
public void GetConstraint_BuildWithParallel_CorrectConstraint() { var sutXmlStubFactory = new Mock <Systems.ExecutionXml>(); var itemXmlStubFactory = new Mock <QueryableXml>(); itemXmlStubFactory.Setup(i => i.GetQuery()).Returns("query"); sutXmlStubFactory.Setup(s => s.Item).Returns(itemXmlStubFactory.Object); var sutXml = sutXmlStubFactory.Object; sutXml.Item = itemXmlStubFactory.Object; var ctrXml = new EqualToXml(true) { ResultSet = new ResultSetXml() }; var builder = new ResultSetEqualToBuilder(); builder.Setup(sutXml, ctrXml, null, null, new ServiceLocator()); builder.Build(); var ctr = builder.GetConstraint(); Assert.That(ctr, Is.InstanceOf <EqualToConstraint>()); Assert.That(((EqualToConstraint)ctr).IsParallelizeQueries(), Is.True); }
public void GetConstraint_BuildWithQuery_CorrectConstraint() { var sutXmlStubFactory = new Mock <Systems.ExecutionXml>(); var itemXmlStubFactory = new Mock <QueryableXml>(); itemXmlStubFactory.Setup(i => i.GetQuery()).Returns("query"); sutXmlStubFactory.Setup(s => s.Item).Returns(itemXmlStubFactory.Object); var sutXml = sutXmlStubFactory.Object; sutXml.Item = itemXmlStubFactory.Object; var ctrXml = new EqualToXml(SettingsXml.Empty); ctrXml.Query = new Items.QueryXml() { InlineQuery = "query" }; var builder = new ResultSetEqualToBuilder(); builder.Setup(sutXml, ctrXml); builder.Build(); var ctr = builder.GetConstraint(); Assert.That(ctr, Is.InstanceOf <EqualToConstraint>()); }
public void GetConstraint_BuildWithResultSet_CorrectConstraint() { var sutXmlStubFactory = new Mock <Systems.ExecutionXml>(); var itemXmlStubFactory = new Mock <QueryXml>(); itemXmlStubFactory.Setup(i => i.Settings).Returns(SettingsXml.Empty); itemXmlStubFactory.Setup(i => i.InlineQuery).Returns("query"); sutXmlStubFactory.Setup(s => s.Item).Returns(itemXmlStubFactory.Object); var sutXml = sutXmlStubFactory.Object; sutXml.Item = itemXmlStubFactory.Object; var ctrXml = new EqualToXml(SettingsXml.Empty) { ResultSetOld = new ResultSetXml() }; var builder = new ResultSetEqualToBuilder(); builder.Setup(sutXml, ctrXml, null, null, new ServiceLocator()); builder.Build(); var ctr = builder.GetConstraint(); Assert.That(ctr, Is.InstanceOf <EqualToConstraint>()); }
public void GetSystemUnderTest_Build_CorrectDiscoveryCommand() { var sutXmlStubFactory = new Mock <Systems.ExecutionXml>(); var itemXmlStubFactory = new Mock <QueryableXml>(); itemXmlStubFactory.Setup(i => i.GetQuery()).Returns("query"); sutXmlStubFactory.Setup(s => s.Item).Returns(itemXmlStubFactory.Object); var sutXml = sutXmlStubFactory.Object; sutXml.Item = itemXmlStubFactory.Object; var ctrXml = new EqualToXml(SettingsXml.Empty); ctrXml.Query = new Items.QueryXml() { InlineQuery = "query" }; var builder = new ExecutionEqualToBuilder(); builder.Setup(sutXml, ctrXml); builder.Build(); var sut = builder.GetSystemUnderTest(); Assert.That(sut, Is.InstanceOf <IDbCommand>()); }
public void Serialize_InlineQuery_UseCData() { // Create an instance of the XmlSerializer specifying type and namespace. var ctrXml = new EqualToXml(); var queryXml = new QueryXml { ConnectionString = "my connection-string", InlineQuery = "select * from table" }; ctrXml.Query = queryXml; var overrides = new WriteOnlyAttributes(); overrides.Build(); var serializer = new XmlSerializer(typeof(EqualToXml), overrides); var stream = new MemoryStream(); var writer = new StreamWriter(stream, Encoding.UTF8); serializer.Serialize(writer, ctrXml); var content = Encoding.UTF8.GetString(stream.ToArray()); writer.Close(); stream.Close(); Debug.WriteLine(content); Assert.That(content, Is.StringContaining("<![CDATA[")); Assert.That(content, Is.StringContaining("select * from table")); Assert.That(content, Is.StringContaining("my connection-string")); Assert.That(content.Split(new[] { ' ' }), Has.Exactly(1).EqualTo("*")); }
public void GetSystemUnderTest_ExecutionXml_IResultSetService() { var sutXmlStubFactory = new Mock <Systems.ExecutionXml>(); var itemXmlStubFactory = new Mock <QueryableXml>(); itemXmlStubFactory.Setup(i => i.GetQuery()).Returns("query"); sutXmlStubFactory.Setup(s => s.Item).Returns(itemXmlStubFactory.Object); var sutXml = sutXmlStubFactory.Object; sutXml.Item = itemXmlStubFactory.Object; var ctrXml = new EqualToXml(SettingsXml.Empty) { Query = new QueryXml() { InlineQuery = "query" } }; var builder = new ResultSetEqualToBuilder(); builder.Setup(sutXml, ctrXml); builder.Build(); var sut = builder.GetSystemUnderTest(); Assert.That(sut, Is.Not.Null); Assert.That(sut, Is.InstanceOf <IResultSetService>()); }
public void GetConstraint_BuildWithTolerance_CorrectConstraint() { var sutXmlStubFactory = new Mock <Systems.ExecutionXml>(); var itemXmlStubFactory = new Mock <QueryableXml>(); itemXmlStubFactory.Setup(i => i.GetQuery()).Returns("query"); sutXmlStubFactory.Setup(s => s.Item).Returns(itemXmlStubFactory.Object); var sutXml = sutXmlStubFactory.Object; sutXml.Item = itemXmlStubFactory.Object; var ctrXml = new EqualToXml(SettingsXml.Empty); ctrXml.Query = new Items.QueryXml() { InlineQuery = "query" }; ctrXml.Tolerance = "10"; var builder = new ResultSetEqualToBuilder(); builder.Setup(sutXml, ctrXml); builder.Build(); var ctr = builder.GetConstraint(); Assert.That(ctr, Is.InstanceOf <EqualToConstraint>()); //Get the tolerance for the column with 1 (and not 0) to avoid to get the tolerance on a key. var settings = ((EqualToConstraint)ctr).Engine.Settings as SettingsResultSetComparisonByIndex; Assert.That(settings.GetTolerance(1).ValueString, Is.EqualTo("10")); }
public void Instantiate_StructureEqualTo_ArgumentException() { var sutXml = new StructureXml(); var ctrXml = new EqualToXml(); var testCaseFactory = new TestCaseFactory(); Assert.Throws <ArgumentException>(delegate { testCaseFactory.Instantiate(sutXml, ctrXml); }); }
protected override void SpecificSetup(AbstractSystemUnderTestXml sutXml, AbstractConstraintXml ctrXml) { if (!(ctrXml is EqualToXml)) { throw new ArgumentException("Constraint must be a 'EqualToXml'"); } ConstraintXml = (EqualToXml)ctrXml; }
public void IsHandling_StructureEqualTo_False() { var sutXml = new StructureXml(); var ctrXml = new EqualToXml(); var testCaseFactory = new TestCaseFactory(); var actual = testCaseFactory.IsHandling(sutXml.GetType(), ctrXml.GetType()); Assert.That(actual, Is.False); }
public void IsHandling_QueryEqualTo_True() { var sutXml = new ExecutionXml(); var ctrXml = new EqualToXml(); var testCaseFactory = new TestCaseFactory(); var actual = testCaseFactory.IsHandling(sutXml.GetType(), ctrXml.GetType()); Assert.That(actual, Is.True); }
private ResultSetComparisonSettings BuildSettings() { //Buiding object used during test var xml = new EqualToXml(); //default values/def xml.KeysDef = ResultSetComparisonSettings.KeysChoice.AllExpectLast; //default tolerance xml.Tolerance = "100"; //Build a value column (numeric, specific tolerance) var colXml = new ColumnDefinitionXml(); colXml.Index = 1; colXml.Role = ColumnRole.Value; colXml.Type = ColumnType.Numeric; colXml.Tolerance = "1"; //Build a value column (without info) var colLightXml = new ColumnDefinitionXml(); colLightXml.Index = 2; colLightXml.Role = ColumnRole.Value; //Build a value column (numeric) var col4Xml = new ColumnDefinitionXml(); col4Xml.Index = 4; col4Xml.Role = ColumnRole.Value; col4Xml.Type = ColumnType.Numeric; //Build a ignore column (without info) var colIgnoreXml = new ColumnDefinitionXml(); colIgnoreXml.Index = 5; colIgnoreXml.Role = ColumnRole.Ignore; //Add columns to definition var cols = new List <ColumnDefinitionXml>(); cols.Add(colXml); cols.Add(colLightXml); cols.Add(col4Xml); cols.Add(colIgnoreXml); xml.columnsDef = cols; //get settings var settings = xml.GetSettings(); //Set the columnCount settings.ApplyTo(10); return(settings); }
private EqualToXml BuildEqualToXml() { //Buiding object used during test var xml = new EqualToXml(); //default values/def xml.KeyName = "Zero, Three, Six, Seven, Eight"; //default values/def xml.ValueName = "Nine"; //default values/def xml.ValuesDefaultType = ColumnType.Numeric; //default tolerance xml.Tolerance = "100"; //Build a value column (numeric, specific tolerance) var colXml = new ColumnDefinitionXml(); colXml.Name = "One"; colXml.Role = ColumnRole.Value; colXml.Type = ColumnType.Numeric; colXml.Tolerance = "1"; //Build a value column (without info) var colLightXml = new ColumnDefinitionXml(); colLightXml.Name = "Two"; colLightXml.Role = ColumnRole.Value; //Build a value column (numeric) var col4Xml = new ColumnDefinitionXml(); col4Xml.Name = "Four"; col4Xml.Role = ColumnRole.Value; col4Xml.Type = ColumnType.Numeric; //Build a ignore column (without info) var colIgnoreXml = new ColumnDefinitionXml(); colIgnoreXml.Name = "Five"; colIgnoreXml.Role = ColumnRole.Ignore; //Add columns to definition var cols = new List <ColumnDefinitionXml>(); cols.Add(colXml); cols.Add(colLightXml); cols.Add(col4Xml); cols.Add(colIgnoreXml); xml.columnsDef = cols; return(xml); }
private EqualToXml BuildEqualToXmlIndex() { //Buiding object used during test var xml = new EqualToXml(); //default values/def xml.KeysDef = SettingsResultSetComparisonByIndex.KeysChoice.AllExpectLast; //default values/def xml.ValuesDefaultType = ColumnType.Numeric; //default tolerance xml.Tolerance = "100"; //Build a value column (numeric, specific tolerance) var colXml = new ColumnDefinitionXml(); colXml.Index = 1; colXml.Role = ColumnRole.Value; colXml.Type = ColumnType.Numeric; colXml.Tolerance = "1"; //Build a value column (without info) var colLightXml = new ColumnDefinitionXml(); colLightXml.Index = 2; colLightXml.Role = ColumnRole.Value; //Build a value column (numeric) var col4Xml = new ColumnDefinitionXml(); col4Xml.Index = 4; col4Xml.Role = ColumnRole.Value; col4Xml.Type = ColumnType.Numeric; //Build a ignore column (without info) var colIgnoreXml = new ColumnDefinitionXml(); colIgnoreXml.Index = 5; colIgnoreXml.Role = ColumnRole.Ignore; //Add columns to definition var cols = new List <ColumnDefinitionXml>(); cols.Add(colXml); cols.Add(colLightXml); cols.Add(col4Xml); cols.Add(colIgnoreXml); xml.columnsDef = cols; return(xml); }
public void GetConstraint_Transformer_CorrectConstraint() { var sutXmlStubFactory = new Mock <Systems.ExecutionXml>(); var itemXmlStubFactory = new Mock <QueryableXml>(); itemXmlStubFactory.Setup(i => i.GetQuery()).Returns("query"); sutXmlStubFactory.Setup(s => s.Item).Returns(itemXmlStubFactory.Object); var sutXml = sutXmlStubFactory.Object; sutXml.Item = itemXmlStubFactory.Object; var transformation = Mock.Of <TransformationXml> ( t => t.Language == LanguageType.CSharp && t.OriginalType == ColumnType.Text && t.Code == "value.Substring(2)" ); var columnDef = Mock.Of <ColumnDefinitionXml> ( c => c.Index == 1 && c.Role == ColumnRole.Value && c.Type == ColumnType.Text && c.TransformationInner == transformation ); var ctrXml = new EqualToXml(true); ctrXml.Query = new QueryXml(); ctrXml.Query.InlineQuery = "select * from Table;"; Assert.That(ctrXml.ColumnsDef.Count, Is.EqualTo(0)); ctrXml.columnsDef.Add(columnDef); Assert.That(ctrXml.ColumnsDef.Count, Is.EqualTo(1)); var builder = new ResultSetEqualToBuilder(); builder.Setup(sutXml, ctrXml); builder.Build(); var ctr = builder.GetConstraint(); Assert.That(ctr, Is.InstanceOf <EqualToConstraint>()); Assert.That(((EqualToConstraint)ctr).TransformationProvider, Is.Not.Null); }
public void Instantiate_QueryEqualTo_TestCase() { var sutXml = new ExecutionXml(); var ctrXml = new EqualToXml(); var builderMockFactory = new Mock <ITestCaseBuilder>(); builderMockFactory.Setup(b => b.Setup(sutXml, ctrXml, TestConfiguration.Default, It.IsAny <Dictionary <string, ITestVariable> >())); builderMockFactory.Setup(b => b.Build()); builderMockFactory.Setup(b => b.GetSystemUnderTest()).Returns(new SqlCommand()); builderMockFactory.Setup(b => b.GetConstraint()).Returns(new EqualToConstraint(null)); var builder = builderMockFactory.Object; var testCaseFactory = new TestCaseFactory(); testCaseFactory.Register(typeof(ExecutionXml), typeof(EqualToXml), builder); var tc = testCaseFactory.Instantiate(sutXml, ctrXml); Assert.That(tc, Is.Not.Null); builderMockFactory.VerifyAll(); }
public void GetSystemUnderTest_ResultSetSystemXml_IResultSetService() { var sutXmlStub = new Mock <Systems.ResultSetSystemXml>(); sutXmlStub.Setup(s => s.File).Returns("myFile.csv"); var sutXml = sutXmlStub.Object; var ctrXml = new EqualToXml(SettingsXml.Empty) { Query = new QueryXml() { InlineQuery = "select * from query" } }; var builder = new ResultSetEqualToBuilder(); builder.Setup(sutXml, ctrXml); builder.Build(); var sut = builder.GetSystemUnderTest(); Assert.That(sut, Is.Not.Null); Assert.That(sut, Is.InstanceOf <IResultSetService>()); }