コード例 #1
0
        public void RetrieveAllDatabaseNodesTest()
        {
            DatabasesXmlHandler dbHandler = new DatabasesXmlHandler();
            DatabaseInfo        dbInfo    = new DatabaseInfo();
            Guid tmpGuid = Guid.NewGuid();

            dbInfo.ID              = tmpGuid;
            dbInfo.Host            = "localhost";
            dbInfo.User            = "******";
            dbInfo.Password        = "******";
            dbInfo.DatabaseName    = "TestDatabase";
            dbInfo.StartTime       = new TimeSpan(4, 30, 0);
            dbInfo.AddUseDatabase  = false;
            dbInfo.IncludeRoutines = true;

            dbHandler.InsertDatabaseNode(dbInfo);
            dbInfo.ID           = Guid.NewGuid();
            dbInfo.DatabaseName = "NewDatabase";
            dbHandler.InsertDatabaseNode(dbInfo);

            Assert.IsTrue(1 < dbHandler.GetAllDatabaseNodes().Count);

            dbHandler.RemoveDatabaseNode(dbInfo.ID);
            dbHandler.RemoveDatabaseNode(tmpGuid);
        }
コード例 #2
0
        public void InsertNewDatabaseNodeToDatabasesXMLFileTest()
        {
            DatabasesXmlHandler dbHandler = new DatabasesXmlHandler();
            DatabaseInfo        dbInfo    = new DatabaseInfo();

            dbInfo.ID              = Guid.NewGuid();
            dbInfo.Host            = "localhost";
            dbInfo.User            = "******";
            dbInfo.Password        = "******";
            dbInfo.DatabaseName    = "test_database";
            dbInfo.StartTime       = new TimeSpan(4, 30, 0);
            dbInfo.AddUseDatabase  = false;
            dbInfo.IncludeRoutines = true;

            dbHandler.InsertDatabaseNode(dbInfo);

            XElement document     = XElement.Load(ConfigurationHandler.DB_CONFIG_FILE);
            var      databaseNode = document
                                    .Elements("Database")
                                    .FirstOrDefault(x => x.Attribute("ID").Value == dbInfo.ID.ToString());
            string databaseName = databaseNode.Element("Name").Value;

            Assert.AreEqual("test_database", databaseName);

            //remove the database node we just created
            dbHandler.RemoveDatabaseNode(dbInfo.ID);
        }
コード例 #3
0
        public void UpdateSpecificDatabaseNodeTest()
        {
            DatabasesXmlHandler dbHandler = new DatabasesXmlHandler();
            DatabaseInfo        dbInfo    = new DatabaseInfo();

            dbInfo.ID              = Guid.NewGuid();
            dbInfo.Host            = "localhost";
            dbInfo.User            = "******";
            dbInfo.Password        = "******";
            dbInfo.DatabaseName    = "TestDatabase";
            dbInfo.StartTime       = new TimeSpan(4, 30, 0);
            dbInfo.AddUseDatabase  = false;
            dbInfo.IncludeRoutines = true;

            dbHandler.InsertDatabaseNode(dbInfo);

            //modify the dbInfo start time
            dbInfo.StartTime = new TimeSpan(22, 59, 0);

            dbHandler.UpdateDatabaseNode(dbInfo);

            dbInfo = dbHandler.GetDatabaseNode(dbInfo.ID)
            ;
            Assert.AreEqual("22:59:00", dbInfo.StartTime.ToString());

            dbHandler.RemoveDatabaseNode(dbInfo.ID);
        }
コード例 #4
0
        public void RetrieveSpecificDatabaseNodeTest()
        {
            DatabasesXmlHandler dbHandler = new DatabasesXmlHandler();
            DatabaseInfo        dbInfo    = new DatabaseInfo();

            dbInfo.ID              = Guid.NewGuid();
            dbInfo.Host            = "localhost";
            dbInfo.User            = "******";
            dbInfo.Password        = "******";
            dbInfo.DatabaseName    = "TestDatabase";
            dbInfo.StartTime       = new TimeSpan(4, 30, 0);
            dbInfo.AddUseDatabase  = false;
            dbInfo.IncludeRoutines = true;

            dbHandler.InsertDatabaseNode(dbInfo);

            DatabaseInfo dbInfo2 = dbHandler.GetDatabaseNode(dbInfo.ID);

            Assert.AreEqual("TestDatabase", dbInfo2.DatabaseName);

            dbHandler.RemoveDatabaseNode(dbInfo.ID);
        }
コード例 #5
0
        public void RemoveSpecificDatabaseNodeTest()
        {
            DatabasesXmlHandler dbHandler = new DatabasesXmlHandler();
            DatabaseInfo        dbInfo    = new DatabaseInfo();

            dbInfo.ID              = Guid.NewGuid();
            dbInfo.Host            = "localhost";
            dbInfo.User            = "******";
            dbInfo.Password        = "******";
            dbInfo.DatabaseName    = "TestDatabase";
            dbInfo.StartTime       = new TimeSpan(4, 30, 0);
            dbInfo.AddUseDatabase  = false;
            dbInfo.IncludeRoutines = true;

            dbHandler.InsertDatabaseNode(dbInfo);
            dbHandler.RemoveDatabaseNode(dbInfo.ID);

            XElement document     = XElement.Load(ConfigurationHandler.DB_CONFIG_FILE);
            var      databaseNode = document
                                    .Elements("Database")
                                    .FirstOrDefault(x => x.Attribute("ID").Value == dbInfo.ID.ToString());

            Assert.IsNull(databaseNode);
        }
コード例 #6
0
 /// <summary>
 /// Adds a database node to the list.
 /// </summary>
 /// <param name="dbInfo">The database information.</param>
 public void addDatabase(DatabaseInfo dbInfo)
 {
     this.databases.Add(dbInfo);
     dbHandler.InsertDatabaseNode(dbInfo);
     new LogHandler().LogMessage(LogHandler.MessageType.INFO, string.Format("The database {0} is now ready for backup", dbInfo.DatabaseName));
 }