public void Diff1ToDiff2ShouldBeState1ToState2Test(IDbStateReference dbState0, IDbStateReference dbState1, IDbStateReference dbState2)
        {
            var dbComparer = new DbComparer();
            var diff1      = dbComparer.GetDbDiff(dbState0, dbState1);
            var diff2      = dbComparer.GetDbDiff(dbState0, dbState2);
            var diff3      = dbComparer.GetDbDiff(dbState1, dbState2);
            var diffOfDiff = dbComparer.GetDbDiff(diff1, diff2);

            diffOfDiff.Should().Be(diff3);
        }
        public void RandomDiff1ToDiff2ShouldBeState1ToState2Test(int n)
        {
            var dbComparer = new DbComparer();
            var dbState0   = TestDataGenerator.GetTestDbRandomState(n);
            var dbState1   = TestDataGenerator.GetTestDbRandomState(n);
            var dbState2   = TestDataGenerator.GetTestDbRandomState(n);
            var diff1      = dbComparer.GetDbDiff(dbState0, dbState1);
            var diff2      = dbComparer.GetDbDiff(dbState0, dbState2);
            var diff3      = dbComparer.GetDbDiff(dbState1, dbState2);
            var diffOfDiff = dbComparer.GetDbDiff(diff1, diff2);

            diffOfDiff.Should().Be(diff3);
        }
示例#3
0
        protected async Task CompareAsync(DbComparerOptions options, ILogger logger)
        {
            logger.LogDebug("Starting comparision");
            var stopwatch = Stopwatch.StartNew();

            var dbComparer     = new DbComparer(options);
            var comparerResult = await dbComparer.CompareAsync();

            if (!comparerResult)
            {
                stopwatch.Stop();
                logger.LogDebug($"Ending comparision {stopwatch.Elapsed:g}");
                throw new Exception(comparerResult.Prettify());
            }

            stopwatch.Stop();
            logger.LogDebug($"Ending comparision {stopwatch.Elapsed:g}");
        }