public void AddMissingColumn_Test_ColumnDidNotExistAndWeDetectedItCorrectly()
        {
            // Create a test database
            FAKE_SqlLiteDatabase db = CreateTestDatabase(String.Format("{0}", dbConstants.ID));

            db.InsertData(dbConstants.table_name, new string[3] {
                dbConstants.STATUS,
                dbConstants.XML,
                dbConstants.GUID
            }
                          , new object[3] {
                "boo status", "boo xml", "GUID_A"
            });
            _w.output(db.BackupDatabase());
            // add ColumnA to it
            bool result = db.TestAddMissingColumn(dbConstants.table_name, new string[1] {
                "boomer"
            },
                                                  new string[1] {
                "TEXT"
            });

            // check return value is true
            Assert.True(result);
            _w.output(db.BackupDatabase());
            // add ColumnA to it again. This time return value should be false (because we did not need to add the column)
            result = db.TestAddMissingColumn(dbConstants.table_name, new string[1] {
                "boomer"
            },
                                             new string[1] {
                "TEXT"
            });
            Console.WriteLine("Result #2 = " + result);
            Assert.False(result);
        }
        public void GuidDoesExist()
        {
            _w.output("GUIDDOESEXIST");
            bool result = false;

            _w.output("here1");
            // Create a test database
            FAKE_SqlLiteDatabase db = CreateTestDatabase(String.Format("{0}", dbConstants.ID));

            _w.output("here");
            try {
                db.InsertData(dbConstants.table_name, new string[3] {
                    dbConstants.STATUS,
                    dbConstants.XML,
                    dbConstants.GUID
                }
                              , new object[3] {
                    "boo status", "boo xml", "GUID_A"
                });

                result = db.TestAddMissingColumn(dbConstants.table_name, new string[1] {
                    "boomer"
                },
                                                 new string[1] {
                    "TEXT"
                });
            } catch (Exception ex) {
                _w.output(ex.ToString());
            }
            _w.output("here");
            Assert.True(db.Exists(dbConstants.table_name, dbConstants.GUID, "GUID_A"));
            _w.output(result);
        }
        public void GuidDoesNotExist()
        {
            // Create a test database
            FAKE_SqlLiteDatabase db = CreateTestDatabase(String.Format("{0}", dbConstants.ID));

            db.InsertData(dbConstants.table_name, new string[3] {
                dbConstants.STATUS, dbConstants.XML, dbConstants.GUID
            }, new object[3] {
                "boo status", "boo xml", "GUID_A"
            });

            bool result = db.TestAddMissingColumn(dbConstants.table_name, new string[1] {
                "boomer"
            },
                                                  new string[1] {
                "TEXT"
            });

            Console.WriteLine("GuidDoesNotExist");
            Assert.False(db.Exists(dbConstants.table_name, dbConstants.GUID, "GUID_B"));
        }
        public void AddMissingColumn_ListOfColumnsNotEqualToListOfTypes()
        {
            // Create a test database
            FAKE_SqlLiteDatabase db = CreateTestDatabase(String.Format("{0}", dbConstants.ID));

            db.InsertData(dbConstants.table_name, new string[3] {
                dbConstants.STATUS,
                dbConstants.XML,
                dbConstants.GUID
            }
                          , new object[3] {
                "boo status", "boo xml", "GUID_A"
            });

            bool result = db.TestAddMissingColumn(dbConstants.table_name, new string[2] {
                "boomer", "poob"
            },
                                                  new string[1] {
                "TEXT"
            });
        }