Exemplo n.º 1
0
        public void Test_if_database_was_mapped_to_Fake_and_saved_in_XML()
        {
            // Test for SQL Server 13.0.4422.0
            var dbConn = new DatabaseConnectionMSSQL()
            {
                Database   = FakeDatabaseFactory.NewDatabase("Name_which_will_be_replaced_after_mapping"),
                Connection = new SqlConnection()
                {
                    ConnectionString = $"" +
                                       $"Server=mssql6.gear.host;" +
                                       $"Database=testdb49;" +
                                       $"User Id=testdb49;" +
                                       $"Password=;"
                }
            };

            dbConn.ToFake("testdb49"); // This weird name is an actual Database Name

            var fakeDb = dbConn.Database;

            var fileStream = new FileStream("db_mssql.xml", FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite);

            using (var writer = XmlWriter.Create(fileStream))
            {
                var serializer = new FakeDbSerializer <XmlReader, XmlWriter>()
                {
                    Database      = fakeDb,
                    Configuration = new FakeDbXMLByColumnConfiguration()
                };
                serializer.WriteDatabase(writer);
            }

            Assert.True(fakeDb.Tables.Count() > 0);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Returns new <see cref="IFakeDatabase"/> with some pre-build data.
        /// </summary>
        /// <returns></returns>
        public static IFakeDatabase GetDatabaseWithData()
        {
            var db = FakeDatabaseFactory.NewDatabase("Test Database");

            var accTable = db.AddTable("Accounts");

            accTable.AddColumn("AccountId", typeof(Guid));
            accTable.AddColumn("FirstName", typeof(string));
            accTable.AddColumn("LastName", typeof(string));
            accTable.AddColumn("CountryName", typeof(string));
            {
                var fakeRow = accTable.GetRow(0);
                fakeRow["AccountId"]   = Guid.NewGuid();
                fakeRow["FirstName"]   = "Krzysztof";
                fakeRow["LastName"]    = "Dobrzynski";
                fakeRow["CountryName"] = "Poland";

                fakeRow = accTable.GetRow(1);
                fakeRow["AccountId"]   = Guid.NewGuid();
                fakeRow["FirstName"]   = "Esteban";
                fakeRow["LastName"]    = "Hulio";
                fakeRow["CountryName"] = "Spain";

                fakeRow = accTable.GetRow(2);
                fakeRow["AccountId"]   = Guid.NewGuid();
                fakeRow["FirstName"]   = "A";
                fakeRow["LastName"]    = "B";
                fakeRow["CountryName"] = "C";

                fakeRow = accTable.GetRow(3);
                fakeRow["AccountId"]   = Guid.NewGuid();
                fakeRow["FirstName"]   = "123";
                fakeRow["LastName"]    = "321";
                fakeRow["CountryName"] = "123";
            }

            var countryTable = db.AddTable("Countries");

            countryTable.AddColumn("CountryId", typeof(Guid));
            countryTable.AddColumn("CountryName", typeof(string));
            {
                var fakeRow = countryTable.GetRow(0);
                fakeRow["CountryId"]   = Guid.NewGuid();
                fakeRow["CountryName"] = "Poland";

                fakeRow = countryTable.GetRow(1);
                fakeRow["CountryId"]   = Guid.NewGuid();
                fakeRow["CountryName"] = "Spain";

                fakeRow = countryTable.GetRow(2);
                fakeRow["CountryId"]   = Guid.NewGuid();
                fakeRow["CountryName"] = "Germany";

                fakeRow = countryTable.GetRow(3);
                fakeRow["CountryId"]   = Guid.NewGuid();
                fakeRow["CountryName"] = "USA";
            }

            return(db);
        }
Exemplo n.º 3
0
        public void Test_if_database_was_mapped_to_Fake_and_saved_in_XML()
        {
            var dbConn = new DatabaseConnectionMySQL()
            {
                Database   = FakeDatabaseFactory.NewDatabase("Name_which_will_be_replaced_after_mapping"),
                Connection = new MySqlConnection()
                {
                    ConnectionString = $"" +
                                       $"Data Source=sql11.freemysqlhosting.net;" +
                                       $"Initial Catalog=INFORMATION_SCHEMA;" + // Start in Database where all required informations about all Databases on Server are stored
                                       $"User id=sql11192873;" +
                                       $"Password=;"
                }
            };

            dbConn.ToFake("sql11192873"); // This weird name is an actual Database Name

            var fakeDb = dbConn.Database;

            var fileStream = new FileStream("db_mysql.xml", FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite);

            using (var writer = XmlWriter.Create(fileStream))
            {
                var serializer = new FakeDbSerializer <XmlReader, XmlWriter>()
                {
                    Database      = fakeDb,
                    Configuration = new FakeDbXMLByColumnConfiguration()
                };
                serializer.WriteDatabase(writer);
            }

            Assert.True(fakeDb.Tables.Count() > 0);
        }
        public void Try_to_read_IFakeDatabase_from_file_using_DataSet()
        {
            try
            {
                File.Delete(PATH_2);
            }
            catch (Exception) { }

            var db         = FakeDatabaseData.GetDatabaseWithData();
            var fileStream = new FileStream(PATH_2, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite);

            var serializer = new FakeDbSerializer <XmlReader, XmlWriter>()
            {
                Database      = db,
                Configuration = new FakeDbDataSetConfiguration()
            };

            lock (new object())
            {
                serializer.WriteDatabase(XmlWriter.Create(fileStream));
                fileStream.Flush();
                fileStream.Close();
            }

            // Prepare to read
            serializer.Database = FakeDatabaseFactory.NewDatabase("New empty Database for Read Test");
            fileStream          = new FileStream(PATH_2, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite);
            serializer.ReadDatabase(XmlReader.Create(fileStream));

            var dbReaded = serializer.Database;

            Assert.True(db != null);
            Assert.Equal("Test Database", db.Name);
            Assert.True(db.Tables.Count() == 2);
            Assert.Equal("Poland", db["Countries"]["CountryName"][0]);
        }
Exemplo n.º 5
0
        public void Was_Fake_Database_successfully_created()
        {
            var database = FakeDatabaseFactory.NewDatabase("Test Database");

            Assert.NotNull(database);
        }