// case: count of books in list (= 2) <= count of records in db (= 4) private void CheckResultWriteBooksFake01() { var mock = new Mock <IDataBase>(); mock.Setup(x => x.Retrieve("SELECT COUNT(Id) FROM Books")) .Returns(new List <string>() { "4" }); mock.Setup(x => x.Retrieve($"SELECT * FROM Books WHERE [Id] = {1} AND [Author] = '{_listOfBooks[0][0]}' " + $"AND [Title] = '{_listOfBooks[0][1]}' AND [ISDN] = '{_listOfBooks[0][2]}' AND [Price] = {Convert.ToDecimal(_listOfBooks[0][3])}")) .Returns(_listOfBooks[0]); mock.Setup(x => x.Retrieve($"SELECT * FROM Books WHERE [Id] = {2} AND [Author] = '{_listOfBooks[1][0]}' " + $"AND [Title] = '{_listOfBooks[1][1]}' AND [ISDN] = '{_listOfBooks[1][2]}' AND [Price] = {Convert.ToDecimal(_listOfBooks[1][3])}")) .Returns(new List <string>()); mock.Setup(x => x.Modify($"UPDATE Books SET [Author] = '{_listOfBooks[1][0]}', [Title] = '{_listOfBooks[1][1]}', [ISDN] = '{_listOfBooks[1][2]}'," + $" [Price] = {Convert.ToDecimal(_listOfBooks[1][3])} WHERE [Id] = {2}")); mock.Setup(x => x.Modify($"DELETE * FROM Books WHERE Id = (SELECT MAX(Id) FROM Books)")); _plugin = new DataSourceAccess(mock.Object); _plugin.WriteBooks(_listOfBooks); mock.VerifyAll(); mock.Verify(x => x.Modify(It.IsAny <string>()), Times.Exactly(3)); mock.Verify(x => x.Retrieve(It.IsAny <string>()), Times.Exactly(3)); }
public SystemManager(SysConfigMgrAccess sysConfig, DataSourceAccess dataSourceAccess) { //create case handler with IDAL CaseHandler m_caseHandler = new CaseHandler(sysConfig, dataSourceAccess); //create system mode manager with ISysConfig and IDAL and case handler SysModeManager m_sysModeMgr = new SysModeManager(sysConfig, dataSourceAccess, m_caseHandler); //create system manager interface with System mode manager SysMgrAccess = new SystemManagerAccess(m_sysModeMgr); }
internal SysModeManager(SysConfigMgrAccess sysConfig, DataSourceAccess dataSourceAccess, CaseHandler handler) { m_SysConfig = sysConfig; m_DataSourceAccess = dataSourceAccess; m_caseHandler = handler; m_LinkedCaseID = string.Empty; m_LinkedCaseSource = string.Empty; //m_PreviousCaseId = string.Empty; //register an event handler with System Configuration Manager to get notified //when configuration is modified. }
public IndexObject(long idxId) { DataSourceAccess dsAccess = new DataSourceAccess("IDX_LIST"); dsAccess.Filter = UQuery.Eq("IDX_ID", idxId); DataRow dr = dsAccess.Execute().AsEnumerable().FirstOrDefault(); if (dr != null) { InitObj(dr); } else { throw new Exception(string.Format("未找到指定的指标(IDX_ID:{0})", idxId)); } }
private void CheckResultThrowingExceptionReadBooksComplete() { FillIncorrectListOfBooks(); _plugin = new DataSourceAccess(_db); string message = "Невозможно загрузить книги из базы данных - прерывание по исключению:" + "\n" + "Ссылка на объект не указывает на экземпляр объекта."; EventArgsString mess = null; _plugin.OnError += delegate(object sender, EventArgsString e) { mess = e; }; _plugin.ReadBooks(); Assert.IsNotNull(mess, "Событие не вызвано"); Assert.AreEqual(message, mess.Message, $"Ожидается сообщение: \"{message}\";" + "\n" + $"Вызвано сообщение: \"{mess.Message}\""); }
// case: count of books in list (= 3) > count of records in db (= 2) private void CheckResultWriteBooksFake02() { _listOfBooks.Clear(); FillListOfBooks(); _listOfBooks.Add(new List <string>() { "Мюллер Д.П.", "C# для чайников", "4-657-4982-77", "324" }); var mock = new Mock <IDataBase>(); mock.Setup(x => x.Retrieve("SELECT COUNT(Id) FROM Books")) .Returns(new List <string>() { "2" }); mock.Setup(x => x.Retrieve($"SELECT * FROM Books WHERE [Id] = {1} AND [Author] = '{_listOfBooks[0][0]}' " + $"AND [Title] = '{_listOfBooks[0][1]}' AND [ISDN] = '{_listOfBooks[0][2]}' AND [Price] = {Convert.ToDecimal(_listOfBooks[0][3])}")) .Returns(new List <string>()); mock.Setup(x => x.Modify($"UPDATE Books SET [Author] = '{_listOfBooks[0][0]}', [Title] = '{_listOfBooks[0][1]}'," + $" [ISDN] = '{_listOfBooks[0][2]}', [Price] = {Convert.ToDecimal(_listOfBooks[0][3])} WHERE [Id] = {1}")); mock.Setup(x => x.Retrieve($"SELECT * FROM Books WHERE [Id] = {2} AND [Author] = '{_listOfBooks[1][0]}' " + $"AND [Title] = '{_listOfBooks[1][1]}' AND [ISDN] = '{_listOfBooks[1][2]}' AND [Price] = {Convert.ToDecimal(_listOfBooks[1][3])}")) .Returns(_listOfBooks[1]); mock.Setup(x => x.Retrieve($"SELECT * FROM Books WHERE [Id] = {3} AND [Author] = '{_listOfBooks[2][0]}' " + $"AND [Title] = '{_listOfBooks[2][1]}' AND [ISDN] = '{_listOfBooks[2][2]}' AND [Price] = {Convert.ToDecimal(_listOfBooks[2][3])}")) .Returns(new List <string>()); mock.Setup(x => x.Modify($"INSERT INTO Books (Id, Author, Title, ISDN, Price)" + $" VALUES ({3}, '{_listOfBooks[2][0]}', '{_listOfBooks[2][1]}', '{_listOfBooks[2][2]}', {Convert.ToDecimal(_listOfBooks[2][3])})")); _plugin = new DataSourceAccess(mock.Object); _plugin.WriteBooks(_listOfBooks); mock.VerifyAll(); mock.Verify(x => x.Modify(It.IsAny <string>()), Times.Exactly(2)); mock.Verify(x => x.Retrieve(It.IsAny <string>()), Times.Exactly(4)); }
private void CheckResultReadBooksFake() { _listOfBooks.Clear(); FillListOfBooks(); var mock = new Mock <IDataBase>(); mock.Setup(x => x.Retrieve("SELECT * FROM Books")) .Returns(ReturnListOfStrings()); _plugin = new DataSourceAccess(mock.Object); var expected = _listOfBooks; var actual = _plugin.ReadBooks(); Assert.IsTrue(actual != null, "Ошибка чтения: Метод возвращает 'null'"); Assert.AreEqual(expected.Count, actual.Count, "Ошибка чтения: Возвращено неправильное число книг"); for (int i = 0; i < expected.Count; i++) { Assert.IsTrue(expected[i][0] == actual[i][0], ($"Ошибка чтения: Поле 'Автор' {i + 1}-й книги прочитано некорректно")); Assert.IsTrue(expected[i][1] == actual[i][1], ($"Ошибка чтения: Поле 'Название' {i + 1}-й книги прочитано некорректно")); Assert.IsTrue(expected[i][2] == actual[i][2], ($"Ошибка чтения: Поле 'ISDN' {i + 1}-й книги прочитано некорректно")); Assert.IsTrue(expected[i][3] == actual[i][3], ($"Ошибка чтения: Поле 'Цена' {i + 1}-й книги прочитано некорректно")); } }
public void TestInitialize() { _connectString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=..\..\..\DataBases\Books.mdb;"; _plugin = new DataSourceAccess(); FillListOfBooks(); }
public CaseHandler(SysConfigMgrAccess sysConfigMgrAccess, DataSourceAccess dataAccessLayer) { m_SysConfigMgrAccess = sysConfigMgrAccess; m_dataSourceAccess = dataAccessLayer; m_caseCollection = new CaseCollection(); }