public MainWindow() { InitializeComponent(); string filePath = Properties.Settings.Default.Postgaarden; var sqliteInstance = SqliteDatabaseConnection.GetInstance(filePath); var empCrud = new SqliteEmployeeCrud(sqliteInstance); var cusCrud = new SqliteCustomerCrud(sqliteInstance); var equiCrud = new SqliteEquipmentCrud(sqliteInstance); var roomCrud = new SqliteRoomCrud(sqliteInstance, equiCrud); bookingCrud = new SqliteBookingCrud(sqliteInstance, roomCrud, cusCrud, empCrud); }
public void TestReadBookingParse() { var mock = new Mock<DatabaseConnection>(); var crud = new SqliteCustomerCrud(mock.Object); mock.Setup(x => x.ExecuteQuery(It.IsAny<string>())) .Returns(new[] { new object[] { "12345678", "Lone Wolf", "Wolfgang", "*****@*****.**" } }); var customer = crud.Read(new Booking()); Assert.AreEqual("12345678", customer.Cvr); Assert.AreEqual("Lone Wolf", customer.Name); Assert.AreEqual("Wolfgang", customer.CompanyName); Assert.AreEqual("*****@*****.**", customer.EmailAddress); }
public void TestReadAll() { var mock = new Mock<DatabaseConnection>(); var crud = new SqliteCustomerCrud(mock.Object); //ExecuteQuery returns an 2d array of objects, simulating a single entry in the table Customer mock.Setup(x => x.ExecuteQuery(It.IsAny<string>())).Returns(() => new object[][] {new object [] {"merch", "jens", "97865467", "*****@*****.**" } }); var customers = crud.Read(); Assert.AreEqual("merch", customers.First().CompanyName); Assert.AreEqual("jens", customers.First().Name); Assert.AreEqual("97865467", customers.First().Cvr); Assert.AreEqual("*****@*****.**", customers.First().EmailAddress); }
public void TestDeleteCustomer() { string sql = ""; var customer = new Customer { CompanyName = "merch", Name = "Sarah", Cvr = "12345678", EmailAddress = "*****@*****.**" }; var mock = new Mock<DatabaseConnection>(); var crud = new SqliteCustomerCrud(mock.Object); //Execute query calls back the string sql containing the string from SqliteCustomerCrud mock.Setup(x => x.ExecuteQuery(It.IsAny<string>())).Callback((string s) => sql = s); crud.Delete(customer); //Is used to force the SqliteCustomerCrud to use the Executequery (DBConnection.ExecuteQuery) mock.Verify(x => x.ExecuteQuery(It.IsAny<string>())); Assert.AreEqual("DELETE FROM Customer WHERE Cvr=" + customer.Cvr + "", sql); }
public void TestCreateToSql() { string sql = ""; var person = new Customer { CompanyName = "Merch", Name = "Jens", Cvr = "12345678", EmailAddress = "*****@*****.**" }; var mock = new Mock<DatabaseConnection>(); var crud = new SqliteCustomerCrud(mock.Object); //Execute query calls back the string sql containing the string from SqliteCustomerCrud mock.Setup(x => x.ExecuteQuery(It.IsAny<string>())).Callback((string s) => sql = s); crud.Create(person); //Is used to force the SqliteCustomerCrud to use the Executequery (DBConnection.ExecuteQuery) //Can be used to verify other things when its used for employee mock.Verify(x => x.ExecuteQuery(It.IsAny<string>())); Assert.AreEqual("INSERT INTO Customer (Company, Name, Cvr, EmailAddress) VALUES (Merch, Jens, 12345678, [email protected])", sql); }
public void TestReadBookingToSql() { string stringToTest = "SELECT Cvr, Name, Company, EmailAddress FROM Customer AS c " + "JOIN Booking AS b ON c.Cvr = b.CustumerCVR " + "WHERE b.Id = 1;"; string sql = ""; var mock = new Mock<DatabaseConnection>(); var crud = new SqliteCustomerCrud(mock.Object); mock.Setup(x => x.ExecuteQuery(It.IsAny<string>())).Callback((string s) => sql = s) .Returns(new[] { new object[] { "12345678", "Lone Wolf", "Wolfgang", "*****@*****.**" } }); crud.Read(new Booking { Id = 1 }); Assert.AreEqual(stringToTest, sql); }