public void HandleRecordInsertNewRecordToDBTest() { PTRecord record = new PTRecord("name", DateTime.Today, new TimeSpan(0, 10, 0)); PTDatabase.HandleRecord(record); PTDate expectedDate = new PTDate(1, DateTime.Today); PTProcessInfo expectedInfo = new PTProcessInfo(1, "name", new TimeSpan(0, 10, 0)); PTDate actualDate = PTDatabase.GetDateForDateTime(DateTime.Today); PTProcessInfo actaulInfo = PTDatabase.GetInfoForProcessOnDate(record.name, actualDate); Assert.AreEqual(expectedDate, actualDate); Assert.AreEqual(expectedInfo, actaulInfo); }
public void HandleRecordInsertsSeparateRecordforDifferentProcessInDBTest() { PTRecord record1 = new PTRecord("name1", DateTime.Today, new TimeSpan(0, 10, 0)); PTRecord record2 = new PTRecord("name2", DateTime.Today, new TimeSpan(0, 20, 0)); PTDate expectedDate = new PTDate(1, DateTime.Today); PTProcessInfo expectedInfo1 = new PTProcessInfo(1, record1.name, new TimeSpan(0, 10, 0)); PTProcessInfo expectedInfo2 = new PTProcessInfo(2, record2.name, new TimeSpan(0, 20, 0)); PTDatabase.HandleRecord(record1); PTDate actualDate = PTDatabase.GetDateForDateTime(DateTime.Today); PTProcessInfo actaulInfo1 = PTDatabase.GetInfoForProcessOnDate(record1.name, actualDate); Assert.AreEqual(expectedDate, actualDate); Assert.AreEqual(expectedInfo1, actaulInfo1); PTDatabase.HandleRecord(record2); PTProcessInfo actaulInfo2 = PTDatabase.GetInfoForProcessOnDate(record2.name, actualDate); Assert.AreEqual(expectedInfo2, actaulInfo2); }
public void HandleRecordUpdatesExistingEntryInDBTest() { PTRecord record1 = new PTRecord("name", DateTime.Today, new TimeSpan(0, 10, 0)); PTRecord record2 = new PTRecord("name", DateTime.Today, new TimeSpan(0, 20, 0)); PTDate expectedDate = new PTDate(1, DateTime.Today); PTProcessInfo expectedInfo1 = new PTProcessInfo(1, "name", new TimeSpan(0, 10, 0)); PTProcessInfo expectedInfo2 = new PTProcessInfo(1, "name", new TimeSpan(0, 30, 0)); PTDatabase.HandleRecord(record1); PTDate actualDate = PTDatabase.GetDateForDateTime(DateTime.Today); PTProcessInfo actaulInfo1 = PTDatabase.GetInfoForProcessOnDate(record1.name, actualDate); Assert.AreEqual(expectedDate, actualDate); Assert.AreEqual(expectedInfo1, actaulInfo1); PTDatabase.HandleRecord(record2); PTProcessInfo actaulInfo2 = PTDatabase.GetInfoForProcessOnDate(record1.name, actualDate); Assert.AreEqual(expectedInfo2, actaulInfo2); }
public void GetDateTableTest() { PTManager target = new PTManager(); DataTable expected = new DataTable("Dates"); expected.Columns.Add("Date", Type.GetType("System.DateTime")); DataRow newRow = expected.NewRow(); newRow["Date"] = DateTime.Today; expected.Rows.Add(newRow); string expectedProcessName = "name1"; DateTime expectedDateTime = DateTime.Today; List <PTRecord> recordList = PTManager.MakeRecords(expectedProcessName, expectedDateTime); recordList = PTManager.MakeRecords(expectedProcessName, expectedDateTime); PTDatabase.HandleRecord(recordList[0]); DataTable actual = target.GetDateTable(); Assert.IsTrue(DataTableComparer.AreEqual(expected, actual)); }
public void GetProcessInfoTableForDateTest() { string expectedProcessName = "name1"; PTManager target = new PTManager(); DataTable expected = new DataTable("ProcessInfos"); expected.Columns.Add("Name", Type.GetType("System.String")); expected.Columns.Add("ActiveTime", Type.GetType("System.Int32")); DataRow newRow = expected.NewRow(); newRow["Name"] = expectedProcessName; newRow["ActiveTime"] = 0; expected.Rows.Add(newRow); DateTime expectedDateTime = DateTime.Today; List <PTRecord> recordList = PTManager.MakeRecords(expectedProcessName, expectedDateTime); recordList = PTManager.MakeRecords(expectedProcessName, expectedDateTime); PTDatabase.HandleRecord(recordList[0]); DataTable actual = target.GetProcessInfoTableForDate(expectedDateTime); Assert.IsTrue(DataTableComparer.AreEqual(expected, actual)); }
public void HandleRecordInsertsNewEntryForTheSameProcessIfTheDateIsDifferentDBTest() { PTRecord record1 = new PTRecord("name", DateTime.Today - new TimeSpan(1, 0, 0, 0), new TimeSpan(0, 10, 0)); PTRecord record2 = new PTRecord("name", DateTime.Today, new TimeSpan(0, 20, 0)); PTDate expectedDate1 = new PTDate(1, record1.datetime); PTDate expectedDate2 = new PTDate(2, record2.datetime); PTProcessInfo expectedInfo1 = new PTProcessInfo(1, "name", new TimeSpan(0, 10, 0)); PTProcessInfo expectedInfo2 = new PTProcessInfo(2, "name", new TimeSpan(0, 20, 0)); PTDatabase.HandleRecord(record1); PTDate actualDate1 = PTDatabase.GetDateForDateTime(DateTime.Today - new TimeSpan(1, 0, 0, 0)); PTDate actualDate2 = PTDatabase.GetDateForDateTime(DateTime.Today); PTProcessInfo actaulInfo1 = PTDatabase.GetInfoForProcessOnDate(record1.name, actualDate1); Assert.AreEqual(expectedDate1, actualDate1); Assert.AreEqual(expectedInfo1, actaulInfo1); PTDatabase.HandleRecord(record2); PTProcessInfo actaulInfo2 = PTDatabase.GetInfoForProcessOnDate(record1.name, actualDate2); Assert.AreEqual(expectedDate2, actualDate2); Assert.AreEqual(expectedInfo2, actaulInfo2); }