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}");
            }
        }
Beispiel #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}");
            }
        }
Beispiel #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);
     }
 }
Beispiel #4
0
        private void button3_Click(object sender, EventArgs e)
        {
            var    fileName = DateTime.Now.ToString("yyyyMMddHHmmss");
            string sql      = DataCompare.GetDataChanges(DBHelper.GetSourceDatabase(), DBHelper.GetTargetDatabase());
            string path     = $@"D:\sql\updatedata{fileName}.sql";

            SaveTxtFile(path, sql);
            if (string.IsNullOrWhiteSpace(sql))
            {
                MessageBox.Show("没有要修改的sql脚本");
            }
            else
            {
                MessageBox.Show($"脚本路径{path}");
            }
        }
        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}");
            }
        }
        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);
        }
        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);
        }
Beispiel #8
0
 public void SetDataComparison(DataCompare <T> dataCompare)
 {
     _dataCompare = dataCompare;
 }
Beispiel #9
0
 public PBinaryTree(T data, DataCompare <T> dataCompare)
 {
     _rootNode    = new BNode <T>(data);
     _dataCompare = dataCompare;
 }
Beispiel #10
0
        private Boolean Validate(JProperty jProperty)
        {
            //use the DataCompare class to check the input data
            switch (jProperty.Name)
            {
            case "Accelaration Pedal":
                return(DataCompare.AccelarationPedal(Convert.ToDouble(jProperty.Value.ToString())));

                break;

            case "RPM":
                return(DataCompare.RPM(Convert.ToDouble(jProperty.Value.ToString())));

                break;

            case "Power":
                return(DataCompare.Power(Convert.ToDouble(jProperty.Value.ToString())));

                break;

            case "Torque":
                return(DataCompare.Torque(Convert.ToDouble(jProperty.Value.ToString())));

                break;

            case "Cylinders":
                return(DataCompare.Cylinders(Convert.ToDouble(jProperty.Value.ToString())));

                break;

            case "Valves per Cylinder":
                return(DataCompare.ValvesperCylinder(Convert.ToDouble(jProperty.Value.ToString())));

                break;

            case "Cylinder Capacity":
                return(DataCompare.CylinderCapacity(Convert.ToDouble(jProperty.Value.ToString())));

                break;

            case "Top Speed":
                return(DataCompare.TopSpeed(Convert.ToDouble(jProperty.Value.ToString())));

                break;

            case "Acceleration":
                return(DataCompare.Acceleration(Convert.ToDouble(jProperty.Value.ToString())));

                break;

            case "Fuel Consumption":
                return(DataCompare.FuelConsumption(Convert.ToDouble(jProperty.Value.ToString())));

                break;

            case "CO2 Emmissions":
                return(DataCompare.CO2Emissions(Convert.ToDouble(jProperty.Value.ToString())));

                break;

            case "Weight":
                return(DataCompare.Weight(Convert.ToDouble(jProperty.Value.ToString())));

                break;

            default:
                return(false);

                break;
            }
        }
Beispiel #11
0
 public IActionResult Compare([FromBody] DataCompare compare)
 {
     return(new JsonResult(compare.Compare()));
 }