public void AssertQuery(string query, Table table)
        {
            var expectedDataCollection = DataCollection.Load(table);
            var fields = expectedDataCollection.Rows[0].Values.Select(a => a.Name);
            var actualDataCollection = _specflowDbSchema.BuildDataCollection(query, fields, Enumerable.Empty <FieldFilter>(), _formatter);

            if (!DataCompare.Compare(expectedDataCollection, actualDataCollection, out string message))
            {
                Assert.Fail($"Query '{query}'.{Environment.NewLine}{message}");
            }
        }
Esempio n. 2
0
        private void ValidateMultiColumnArray(string arrayPropertyName, Table table)
        {
            var actualToken = FindProperty(arrayPropertyName);

            Assert.AreEqual(JTokenType.Array, actualToken.Type, $"Property {arrayPropertyName}. Actual type is not an array");

            var expectedDataset = DataCollection.Load(table);
            var actualDataset   = DataCollection.Load(actualToken.Children());

            if (!DataCompare.Compare(expectedDataset, actualDataset, out string message))
            {
                Assert.Fail($"Array property {arrayPropertyName}.\n{message}");
            }
        }
Esempio n. 3
0
 static void RunOptions(Options opts)
 {
     try
     {
         var appConfiguration = GetConfiguration();
         var dataCompare      = new DataCompare(appConfiguration["DefaultConnection"]);
         var printer          = dataCompare.Compare(opts.PrimaryKey, opts.TableOne, opts.TableTwo);
         printer.Print();
     }
     catch (Exception e)
     {
         Console.WriteLine(e);
     }
 }
        public void AssertTable(string tableName, Table table, IEnumerable <FieldFilter> filters)
        {
            _specflowDb.AssertTableName(tableName);

            var expectedDataCollection = DataCollection.Load(table);

            _specflowDb.AssertTableSchema(tableName, expectedDataCollection, filters);

            var fields = expectedDataCollection.Rows[0].Values.Select(a => a.Name);
            var actualDataCollection = _specflowDbSchema.BuildDataCollection(tableName, fields, filters, _formatter);

            if (!DataCompare.Compare(expectedDataCollection, actualDataCollection, out string message))
            {
                Assert.Fail($"Table '{tableName}'.{Environment.NewLine}{message}");
            }
        }
Esempio n. 5
0
        public void TestWithOneLineDifferen()
        {
            var leftText = new Data("1",
                                    SideEnum.Left,
                                    "one",
                                    new Md5HashStrategy());

            var rightText = new Data("1",
                                     SideEnum.Right,
                                     @"two",
                                     new Md5HashStrategy());

            var dataCompare = new DataCompare(leftText, rightText);

            var result = dataCompare.Compare();

            Assert.Equal(result.LeftResult[0].Match, result.RightResult[0].Match);
            Assert.NotEqual(result.LeftResult[0].Line, result.RightResult[0].Line);
        }
Esempio n. 6
0
        public void TestWithEqualText()
        {
            var leftText = new Data("1",
                                    SideEnum.Left,
                                    @"one
                two
                three",
                                    new Md5HashStrategy());

            var rightText = new Data("1",
                                     SideEnum.Right,
                                     @"one
                two
                three",
                                     new Md5HashStrategy());

            var dataCompare = new DataCompare(leftText, rightText);

            var result = dataCompare.Compare();

            Assert.Equal(result.LeftResult, result.RightResult);
        }
Esempio n. 7
0
 public IActionResult Compare([FromBody] DataCompare compare)
 {
     return(new JsonResult(compare.Compare()));
 }