private void Enter_Load(object sender, EventArgs e) { IRepository <Medicine> rep = new MedicinesRepository(); dataGridView1.AutoGenerateColumns = false; dataGridView1.DataSource = rep.GetAll(); DataGridViewColumn column = new DataGridViewTextBoxColumn(); column.DataPropertyName = "Name"; column.Name = "Наименование"; dataGridView1.Columns.Add(column); // Initialize and add a check box column. column = new DataGridViewCheckBoxColumn(); column.DataPropertyName = "Available"; column.Name = "В наличии"; dataGridView1.Columns.Add(column); //dataGridView1.Columns[0].Name = "Имя";//.DataPropertyName = "Name"; //dataGridView1.Columns[1].DataPropertyName = "PrducrForm"; //dataGridView1.Columns[2].DataPropertyName = "Manufacturer"; //dataGridView1.Columns[3].DataPropertyName = "Recipe"; //dataGridView1.Columns[4].DataPropertyName = "Price"; //dataGridView1.Columns[5].DataPropertyName = "Available"; }
public void GetMedicineDetails_CorrectData_DetailsOfMedicine() { // Arrange int id = 2; mockContext.Setup(x => x.Medicines).Returns(mockMedicine.Object); var medicinesRepository = new MedicinesRepository(mockContext.Object); // Act var result = medicinesRepository.GetMedicineDetails(id); // Assert Assert.IsNull(result.Errors); Assert.IsNotNull(result); Assert.AreEqual(1, result.Result.TotalCount); Assert.AreEqual(2, result.Result.Items.Id); Assert.AreEqual("Tabletki", result.Result.Items.MedicineTypeName); Assert.AreEqual("Nazwa drugiego leku", result.Result.Items.Name); Assert.AreEqual("40szt", result.Result.Items.ContentQuantity); Assert.AreEqual(11.99M, result.Result.Items.Price); Assert.AreEqual("Pharma", result.Result.Items.Producer); Assert.AreEqual("Super lek powiększony", result.Result.Items.Description); Assert.True(result.IsSuccess); }
public void CreateNewMedicine_DatabaseError_InternalServerError() { // Arrange var model = new MedicineInputModel { Name = "Nowy lek", ContentQuantity = "100ml", Price = 23.49M, Description = "Nowy jeszcze lepszy super lek", Producer = "Pharma", MedicineTypeId = 1 }; var medicinesRepository = new MedicinesRepository(It.IsAny <PharmaStoreContext>()); // Act var result = medicinesRepository.CreateNewMedicine(model); // Assert Assert.IsNotNull(result); Assert.False(result.IsSuccess); Assert.IsNull(result.Result); Assert.AreEqual(1, result.Errors.Count()); Assert.AreEqual(ErrorResources.DatabaseError, result.Errors.Single().Message); Assert.AreEqual((int)ErrorCodes.InternalServerError, result.Errors.Single().ErrorCode); }
public void CreateNewMedicine_BadMedicineTypeId_BadRequestError() { // Arrange var model = new MedicineInputModel { Name = "Nowy lek", ContentQuantity = "100ml", Price = 23.49M, Description = "Nowy jeszcze lepszy super lek", Producer = "Pharma", MedicineTypeId = 0 }; mockContext.Setup(x => x.MedicineTypes).Returns(mockMedicineType.Object); mockContext.Setup(x => x.Medicines).Returns(mockMedicine.Object); var medicinesRepository = new MedicinesRepository(mockContext.Object); // Act var result = medicinesRepository.CreateNewMedicine(model); // Assert Assert.IsNotNull(result); Assert.False(result.IsSuccess); Assert.IsNull(result.Result); Assert.AreEqual(1, result.Errors.Count()); Assert.AreEqual(ErrorResources.InvalidInsertDatabaseData, result.Errors.Single().Message); Assert.AreEqual((int)ErrorCodes.BadRequest, result.Errors.Single().ErrorCode); }
public void TestSaveNotNew() { // подготовка var repository = new MedicinesRepository(); var med = NewTestMedicine(); repository.Save(med); try { // выполнение var med1 = repository.GetAll().SingleOrDefault(m => m.Id == med.Id); med1.Name = "лекарство"; repository.Save(med1); // проверка var m_db = repository.GetAll().SingleOrDefault(m => m.Id == med.Id); Assert.IsTrue(m_db != null); EqualMedicine(med1, m_db); } finally { if (med.Id != 0) { repository.Delete(med); } } }
public void CreateNewMedicine_CorrectData_CreatedMedicine() { // Arrange var model = new MedicineInputModel { Name = "Nowy lek", ContentQuantity = "100ml", Price = 23.49M, Description = "Nowy jeszcze lepszy super lek", Producer = "Pharma", MedicineTypeId = 1 }; mockContext.Setup(x => x.MedicineTypes).Returns(mockMedicineType.Object); mockContext.Setup(x => x.Medicines).Returns(mockMedicine.Object); var medicinesRepository = new MedicinesRepository(mockContext.Object); // Act var result = medicinesRepository.CreateNewMedicine(model); // Assert Assert.IsNull(result.Errors); Assert.IsNotNull(result); Assert.AreEqual(1, result.Result.TotalCount); Assert.AreEqual(ResultResources.CreatingMedicineComplete, result.Result.Items); Assert.True(result.IsSuccess); }
private void DeleteMedButton_Click(object sender, EventArgs e) { Medicine cell = MedicineList.SelectedRows[0].DataBoundItem as Medicine; if (MessageBox.Show("Вы действительно хотите удалить данное лекарственное средство «" + cell.Name + "»?", "Удаление элемента", MessageBoxButtons.OKCancel) == DialogResult.OK) { MedicinesRepository rep = new MedicinesRepository(); rep.Delete(cell); MessageBox.Show("Лекарственное средство " + cell.Name + " удалено!", "Удаление элемента", MessageBoxButtons.OK); MedicineList.DataSource = rep.GetAll(); } }
private void DeleteOrderButton_Click(object sender, EventArgs e) { Order order = OrdersList.SelectedRows[0].DataBoundItem as Order; if (MessageBox.Show("Вы действительно хотите удалить заказ № " + order.Id + "?", "Удаление элемента", MessageBoxButtons.OKCancel) == DialogResult.OK) { MedicinesRepository rep = new MedicinesRepository(); OrdRepository.Delete(order); MessageBox.Show("Заказ № " + order.Id + " удален!", "Удаление элемента", MessageBoxButtons.OK); OrdersList.DataSource = OrdRepository.GetAll(); } }
public void GetMedicineTypes_DatabaseError_InternalServerError() { // Arrange var medicinesRepository = new MedicinesRepository(It.IsAny <PharmaStoreContext>()); // Act var result = medicinesRepository.GetMedicineTypes(); // Assert Assert.IsNotNull(result); Assert.False(result.IsSuccess); Assert.IsNull(result.Result); Assert.AreEqual(1, result.Errors.Count()); Assert.AreEqual(ErrorResources.DatabaseError, result.Errors.Single().Message); Assert.AreEqual((int)ErrorCodes.InternalServerError, result.Errors.Single().ErrorCode); }
public void CreateNewMedicine_InvalidDataNullModelFields_BadRequestErrors() { // Arrange var model = new MedicineInputModel(); var medicinesRepository = new MedicinesRepository(It.IsAny <PharmaStoreContext>()); // Act var result = medicinesRepository.CreateNewMedicine(model); // Assert Assert.IsNull(result.Result); Assert.IsNotNull(result); Assert.AreEqual(4, result.Errors.Count()); Assert.AreEqual(1, result.Errors.Select(x => x.Message).Distinct().Count()); Assert.False(result.IsSuccess); }
public void GetMedicineList_CorrectData_ListOfMedicines() { // Arrange mockContext.Setup(x => x.Medicines).Returns(mockMedicine.Object); var medicinesRepository = new MedicinesRepository(mockContext.Object); // Act var result = medicinesRepository.GetMedicineList(It.IsAny <GetMedicinesViewModel>()); // Assert Assert.IsNull(result.Errors); Assert.IsNotNull(result); Assert.AreEqual(3, result.Result.Items.Count()); Assert.AreEqual(3, result.Result.TotalCount); Assert.True(result.IsSuccess); }
public void GetMedicineDetails_IdDoNotExists_NotFoundError() { // Arrange mockContext.Setup(x => x.Medicines).Returns(mockMedicine.Object); var medicinesRepository = new MedicinesRepository(mockContext.Object); // Act var result = medicinesRepository.GetMedicineDetails(It.IsAny <int>()); // Assert Assert.IsNotNull(result); Assert.IsNull(result.Result); Assert.IsNotNull(result.Errors); Assert.AreEqual(1, result.Errors.Count()); Assert.AreEqual(ErrorResources.ItemNotFound, result.Errors.Single().Message); Assert.AreEqual((int)ErrorCodes.NotFound, result.Errors.Single().ErrorCode); Assert.False(result.IsSuccess); }
public void TestSaveOrderWithMed() { // подготовка var MedRep = new MedicinesRepository(); var med = new Medicine() { Name = "11111", ProductForm = "123", Manufacturer = "Белфарма", Available = true, Price = 12000, Recipe = true }; var order = NewTestOrder(); try { MedRep.Save(med); order.OrderedMedicines = new List <Medicine>(); order.OrderedMedicines.Add(med); // выполнение repository.Save(order); // проверка Order o_db = repository.GetAll().FirstOrDefault(o => o.Id == order.Id); Assert.IsTrue(o_db != null); var med_db = o_db.OrderedMedicines.Find(m => m.Id == med.Id); Assert.AreEqual(med.Name, med_db.Name); } finally { if (order.Id != 0) { repository.Delete(order); } if (med.Id != 0) { MedRep.Delete(med); } } }
public void TestAddMedToOrder() { var MedRep = new MedicinesRepository(); var med = new Medicine() { Name = "11111", ProductForm = "123", Manufacturer = "Белфарма", Available = true, Price = 12000, Recipe = true }; var order = NewTestOrder(); MedRep.Save(med); repository.Save(order); try { var med1 = MedRep.GetAll().FirstOrDefault(m => m.Name == "11111"); var order1 = repository.GetAll().FirstOrDefault(o => o.Name == "test"); order1.OrderedMedicines.Add(med1); repository.Save(order1); var order2 = repository.GetAll().FirstOrDefault(o => o.Id == order.Id); Assert.True(order2.OrderedMedicines.Exists(m => m.Id == med.Id)); } finally { if (order.Id != 0) { repository.Delete(order); } if (med.Id != 0) { MedRep.Delete(med); } } }
public void CreateNewMedicine_InvalidDataTooShortModelFields_BadRequestErrors() { // Arrange var model = new MedicineInputModel { Name = "a", ContentQuantity = "aa", Description = "a", Producer = "a" }; var medicinesRepository = new MedicinesRepository(It.IsAny <PharmaStoreContext>()); // Act var result = medicinesRepository.CreateNewMedicine(model); // Assert Assert.IsNull(result.Result); Assert.IsNotNull(result); Assert.AreEqual(4, result.Errors.Count()); Assert.False(result.IsSuccess); }
public void GetMedicineList_CorrectDataWithFilters_ListOfMedicines() { // Arrange var filters = new GetMedicinesViewModel { SearchValue = "lek" }; mockContext.Setup(x => x.Medicines).Returns(mockMedicine.Object); var medicinesRepository = new MedicinesRepository(mockContext.Object); // Act var result = medicinesRepository.GetMedicineList(filters); // Assert Assert.IsNull(result.Errors); Assert.IsNotNull(result); Assert.AreEqual(2, result.Result.Items.Count()); Assert.AreEqual(2, result.Result.TotalCount); Assert.True(result.IsSuccess); }
public void TestSelectWithProductFormLike() { // подготовка var repository = new MedicinesRepository(); // выполнение var med = NewTestMedicine(); repository.Save(med); try { // проверка var m_db = repository.GetAll().WithProductFormLike("test").FirstOrDefault(); Assert.AreEqual(m_db.ProductForm, med.ProductForm); } finally { if (med.Id != 0) { repository.Delete(med); } } }
public void TestSelectWithId() { // подготовка var repository = new MedicinesRepository(); // выполнение var med = NewTestMedicine(); repository.Save(med); try { // проверка var m_db = repository.GetAll().WithId(med.Id).SingleOrDefault(); Assert.AreEqual(m_db.Id, med.Id); } finally { if (med.Id != 0) { repository.Delete(med); } } }
public void TestDeleteForId() { // подготовка var repository = new MedicinesRepository(); var med = NewTestMedicine(); repository.Save(med); // выполнение try { repository.Delete(med.Id); // проверка Assert.Throws(typeof(InvalidOperationException), delegate { repository.GetAll().Single(m => m.Id == med.Id); }); } finally { if (med.Id != 0) { repository.Delete(med); } } }
public MedicinesController(MedicinesRepository medicinesRepository) { _MedicinesRepository = medicinesRepository; }
private void SafeMedButton_Click(object sender, EventArgs e) { var rep = new MedicinesRepository(); Medicine med; try { med = new Medicine() { Name = NameBox.Text, Available = AvailableCheckBox.Checked, Manufacturer = ManufacturerBox.Text, ProductForm = ProductFormBox.Text, Price = Convert.ToDecimal(PriceBox.Text), Recipe = RecipeСheckBox.Checked }; ValidationClass.ValidateMedicine(med); //if (NameBox.Text == "" || ProductFormBox.Text == "" // || ManufacturerBox.Text == "" || PriceBox.Text == "") //{ // MessageBox.Show("Все поля должны быть заполнены!", "Ошибка!", MessageBoxButtons.OK, MessageBoxIcon.Warning); // return; //} //if (NameBox.Text.Length < 2 || NameBox.Text.Length > 255) //{ // MessageBox.Show("Поле Наименование должно содержать от 2 до 255 символов!", "Ошибка!", MessageBoxButtons.OK, MessageBoxIcon.Error); // return; //} //if (ProductFormBox.Text.Length < 2 || ProductFormBox.Text.Length > 255) //{ // MessageBox.Show("Поле Форма выпуска должно содержать от 2 до 255 символов!", "Ошибка!", MessageBoxButtons.OK, MessageBoxIcon.Error); // return; //} //if (ManufacturerBox.Text.Length < 2 || ManufacturerBox.Text.Length > 255) //{ // MessageBox.Show("Поле Производитель должно содержать от 2 до 255 символов!", "Ошибка!", MessageBoxButtons.OK, MessageBoxIcon.Error); // return; //} //try //{ // if (Convert.ToInt32(PriceBox.Text) < 100 || Convert.ToInt32(PriceBox.Text) > 100000000) // { // MessageBox.Show("Поле Цена должно содержать значения от 100 до 100000000!", "Ошибка!", // MessageBoxButtons.OK, MessageBoxIcon.Error); // return; // } //} //catch (FormatException exception) //{ // MessageBox.Show("Поле Цена должно содержать цифровые значения!", "Ошибка!", // MessageBoxButtons.OK, MessageBoxIcon.Error); // return; //} ValidationClass.IsMedicineAlreadyExist(med, rep); //if (rep.GetAll().IsMedicineExist(NameBox.Text, ProductFormBox.Text, ManufacturerBox.Text)) //{ // MessageBox.Show("Такое лек.средство уже существует в системе!", "Ошибка!", MessageBoxButtons.OK, MessageBoxIcon.Warning); // return; //} } catch (FormatException exception) { MessageBox.Show("Поле Цена должно содержать цифровые значения!", "Ошибка!", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } catch (Exception ex) { MessageBox.Show(ex.Message, "Ошибка!", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if ((sender as Button).Text == "Добавить") { rep.Save(med); MessageBox.Show(String.Format("Лекарственное средство {0} добавленно", NameBox.Text), "Добавление лек.средства", MessageBoxButtons.OK); } else { Medicine dbmed = AdminForm.medicinesControl.MedicineList.SelectedRows[0].DataBoundItem as Medicine; med.Id = dbmed.Id; rep.Save(med); MessageBox.Show("Изменения лек.средства " + med.Name + " сохранены!", "Изменение лек.средства", MessageBoxButtons.OK); } AdminForm.medicinesControl.MedicineList.DataSource = rep.GetAll(); AdminForm.medicinesControl.BringToFront(); }
public MedicinesController() { repository = new MedicinesRepository(); }