// Метод для запроса на авторизацию клиента в меню public bool tryUserAuth(int client_id) { _Current_Client = new Client(client_id); // Если клиента не существует if (_Current_Client.Client_ID == 0) return false; return true; }
public void ClientTest() { // Тест конструктора // Ожидаемые данные, взяты из тестовой БД AOS.DB.test int expected_client_id_1 = 23456; string expected_client_fio_1 = "Новиков Павел Николаевич"; string expected_client_phone_1 = "+79084682576"; string expected_client_discount_1 = "0,05"; int expected_client_id_2 = 0; string expected_client_fio_2 = "anonymous"; string expected_client_phone_2 = "none"; string expected_client_discount_2 = "1"; // Полученные данные Client client_1 = new Client(23456); int actual_client_id_1 = client_1.Client_ID; string actual_client_fio_1 = client_1.Client_FIO; string actual_client_phone_1 = client_1.Client_Phone; string actual_client_discount_1 = client_1.getClientDiscount(); Client client_2 = new Client(2345689); int actual_client_id_2 = client_2.Client_ID; string actual_client_fio_2 = client_2.Client_FIO; string actual_client_phone_2 = client_2.Client_Phone; string actual_client_discount_2 = client_2.getClientDiscount(); // Утверждения Assert.AreEqual(expected_client_id_1, actual_client_id_1); Assert.AreEqual(expected_client_fio_1, actual_client_fio_1); Assert.AreEqual(expected_client_phone_1, actual_client_phone_1); Assert.AreEqual(expected_client_discount_1, actual_client_discount_1); Assert.AreEqual(expected_client_id_2, actual_client_id_2); Assert.AreEqual(expected_client_fio_2, actual_client_fio_2); Assert.AreEqual(expected_client_phone_2, actual_client_phone_2); Assert.AreEqual(expected_client_discount_2, actual_client_discount_2); // Тест установки размера скидки // Ожидаемые данные expected_client_discount_1 = "0,08"; // Полученные данные client_1.setClientDiscount(); actual_client_discount_1 = client_1.getClientDiscount(); // Утверждения Assert.AreEqual(expected_client_discount_1, actual_client_discount_1); // Возвращаем значения в БД к прежним using (AOSDB aos_db = new AOSDB()) { // Находим элемент в таблице с клиентами в БД с ID = 23456 AOS_KL_CLIENT client = (from item in aos_db.AOS_KL_CLIENT.ToList<AOS_KL_CLIENT>() .AsParallel<AOS_KL_CLIENT>() where (item.PK_AOS_ID_CLIENT == 23456) select item).Single(); // Возвращаем значение на старте теста client.CLIENT_DISCOUNT = 5; aos_db.SaveChanges(); } }
public void MenuSessionTest_1() { // Тест конструктора MenuSession menu_session = new MenuSession(); // Переключаем язык menu_session.switchMenuLang(); // Ожидаемые данные string expected_lang_menu_flag = "EN"; // Полученные данные string actual_lang_menu_flag = menu_session.lang_menu_flag; // Утверждения Assert.AreEqual(expected_lang_menu_flag, actual_lang_menu_flag); // Переключаем язык menu_session.switchMenuLang(); // Ожидаемые данные expected_lang_menu_flag = "RU"; // Полученные данные actual_lang_menu_flag = menu_session.lang_menu_flag; // Утверждения Assert.AreEqual(expected_lang_menu_flag, actual_lang_menu_flag); // Тест авторизации клиента // Ожидаемые данные Client expected_client = new Client(0); bool expected_auth_flag = false; // Попытка авторизации в меню существующего клиента bool actual_auth_flag = menu_session.tryUserAuth(12); // Утверждения Assert.AreEqual(expected_client.Client_FIO, menu_session.Current_Client.Client_FIO); Assert.AreEqual(expected_auth_flag, actual_auth_flag); // Ожидаемые данные expected_client = new Client(34567); expected_auth_flag = true; // Попытка авторизации в меню существующего клиента actual_auth_flag = menu_session.tryUserAuth(34567); // Утверждения Assert.AreEqual(expected_client.Client_FIO, menu_session.Current_Client.Client_FIO); Assert.AreEqual(expected_auth_flag, actual_auth_flag); // Тест создания заказа // Ожидаемые данные string expected_menu_client_id = "1"; int expected_client_id = menu_session.Current_Client.Client_ID; string expected_present_order_consist = "[{" + '"' + "id" + '"' + ":" + '"' + '5' + '"' + ',' + '"' + "count" + '"' + ':' + '"' + '1' + '"' + "}]"; string expected_history_order_consist = "[{" + '"' + "id" + '"' + ":" + '"' + '5' + '"' + ',' + '"' + "count" + '"' + ':' + '"' + '6' + '"' + "}]"; string expected_order_state = "opened"; decimal expected_order_worth = 2100.00M; // Создаем заказ menu_session.createOrder(expected_menu_client_id, expected_client_id, expected_present_order_consist, expected_history_order_consist, expected_order_worth); // Утверждения Assert.AreEqual(expected_order_state, menu_session.Current_Order.getOrderState()); // Тест отправки сообщения // Ожидаемые данные int expected_msg_client_id = 34567; int expected_msg_order_id = menu_session.Current_Order.Order_ID; string expected_msg_reciever = "cook"; string expected_msg_body = "Сообщене для повара"; // Посылаем сообщение menu_session.sendMessage(expected_msg_reciever, expected_msg_body); using (AOSDB aos_db = new AOSDB()) { AOS_BD_MESSAGE message = (from item in aos_db.AOS_BD_MESSAGE select item).Single(); // Утверждения Assert.AreEqual(expected_msg_client_id, message.FK_AOS_ID_CLIENT); Assert.AreEqual(expected_msg_order_id, message.FK_AOS_ID_ORDER); Assert.AreEqual(expected_msg_reciever, message.MESSAGE_RECIVIER_ID); Assert.AreEqual(expected_msg_body, message.MESSAGE_BODY); // Очищаем таблицу от тестовых данных aos_db.AOS_BD_MESSAGE.Remove(message); aos_db.SaveChanges(); } // Тест запроса на вызов сотрудника // Ожидаемые данные string expected_emenu_client_id = "0.1apb5njklfp"; int expected_call_client_id = 34567; int expected_call_order_id = menu_session.Current_Order.Order_ID; string expected_employee_id = "admin"; // Посылаем запрос на вызов сотрудника menu_session.callStaff(expected_emenu_client_id, expected_employee_id); using (AOSDB aos_db = new AOSDB()) { AOS_BD_CALL_QUEUE call = (from item in aos_db.AOS_BD_CALL_QUEUE select item).Single(); // Утверждения Assert.AreEqual(expected_emenu_client_id, call.CALL_QUEUE_EMENU_CLIENT_ID); Assert.AreEqual(expected_call_client_id, call.FK_AOS_ID_CLIENT); Assert.AreEqual(expected_call_order_id, call.FK_AOS_ID_ORDER); Assert.AreEqual(expected_employee_id, call.CALL_QUEUE_EMPLOYEE_ID); // Очищаем таблицу от тестовых данных aos_db.AOS_BD_CALL_QUEUE.Remove(call); aos_db.SaveChanges(); } // Просим счет menu_session.getBill(); }
// Метод для закрытия сессии меню public bool getBill() { try { // Пересчитываем скидку клиента if (_Current_Client != null && _Current_Client.Client_ID != 0) _Current_Client.setClientDiscount(); // Закрываем заказ и возвращаем сессию в состояние // при старте _lang_menu_flag = "RU"; _Current_Order.closeOrder(); _Current_Order = null; _Current_Client = null; } // Если не удалось закрыть заказ catch (Exception) { return false; } return true; }