Beispiel #1
0
        public void RunDiff(string fileNameTemplate, bool addDefaults, bool addTransaction, bool ignoreFunctionWhitespace, bool ignoreStartWith)
        {
            using (var origRdr = new StreamReader(GetScript(fileNameTemplate + "_original.sql")))
                using (var modifRdr = new StreamReader(GetScript(fileNameTemplate + "_new.sql")))
                    using (var expectedDiffRdr = new StreamReader(GetScript(fileNameTemplate + "_diff.sql")))
                        using (var ms = new MemoryStream())
                            using (var writer = new StreamWriter(ms))
                                using (var diffReader = new StreamReader(ms))
                                {
                                    var arguments = new PgDiffArguments
                                    {
                                        AddDefaults = addDefaults,
                                        //AddTransaction = addTransaction, //TODO: this is a bug of the Java version. The transaction arg was ignored in it
                                        IgnoreFunctionWhitespace = ignoreFunctionWhitespace,
                                        IgnoreStartWith          = ignoreStartWith
                                    };

                                    PgDiff.CreateDiff(writer, arguments, origRdr, modifRdr);
                                    writer.Flush();
                                    ms.Seek(0, SeekOrigin.Begin);

                                    Assert.AreEqual(
                                        expectedDiffRdr.ReadToEnd().Replace("\r\n", "\n").Trim(),
                                        diffReader.ReadToEnd().Replace("\r\n", "\n").Trim());
                                }
        }
Beispiel #2
0
        public void RunDiffSameNew(string fileNameTemplate, bool addDefaults, bool addTransaction, bool ignoreFunctionWhitespace, bool ignoreStartWith)
        {
            using (var origRdr = new StreamReader(GetScript(fileNameTemplate + "_new.sql")))
                using (var modifRdr = new StreamReader(GetScript(fileNameTemplate + "_new.sql")))
                    using (var ms = new MemoryStream())
                        using (var writer = new StreamWriter(ms))
                            using (var diffReader = new StreamReader(ms))
                            {
                                var arguments = new PgDiffArguments();
                                PgDiff.CreateDiff(writer, arguments, origRdr, modifRdr);
                                writer.Flush();

                                var diff = diffReader.ReadToEnd();
                                Assert.AreEqual("", diff.Trim());
                            }
        }