}//Populate the list of Service objects private void btnAddService_Click(object sender, EventArgs e) { //Here we call from the Service Contract logic if (txtSDescript.Text.Equals("")) { MessageBox.Show("Please enter service description details", "EMPTY FIELDS!!", MessageBoxButtons.OK, MessageBoxIcon.Error); }//Data validation if (txtSDuration.Text.Equals(""))//Data Validation { MessageBox.Show("Please enter service duration details", "EMPTY FIELDS!!", MessageBoxButtons.OK, MessageBoxIcon.Error); }//Data Validation else { description = txtSDescript.Text; duration = int.Parse(txtSDuration.Text); newService = new Service(description, duration); Sl.AddService(newService); MessageBox.Show("Service successfully Added", " ADD", MessageBoxButtons.OK, MessageBoxIcon.Information); //Perform Fom transition Hide(); frmServiceContract form = new frmServiceContract(); form.ShowDialog(); } //Add the Service } //Validate inputs and add service
public async Task AddService_AddingService_ServiceAdded() { var serviceData = new List <Service>().AsQueryable(); var serviceMockSet = new Mock <DbSet <Service> >(); serviceMockSet.As <IDbAsyncEnumerable <Service> >() .Setup(m => m.GetAsyncEnumerator()) .Returns(new TestDbAsyncEnumerator <Service>(serviceData.GetEnumerator())); serviceMockSet.As <IQueryable <Service> >() .Setup(m => m.Provider) .Returns(new TestDbAsyncQueryProvider <Service>(serviceData.Provider)); serviceMockSet.As <IQueryable <Service> >().Setup(m => m.Expression).Returns(serviceData.Expression); var serviceDateData = new List <ServiceDate>().AsQueryable(); var serviceDateMockSet = new Mock <DbSet <ServiceDate> >(); serviceDateMockSet.As <IDbAsyncEnumerable <ServiceDate> >() .Setup(m => m.GetAsyncEnumerator()) .Returns(new TestDbAsyncEnumerator <ServiceDate>(serviceDateData.GetEnumerator())); serviceDateMockSet.As <IQueryable <ServiceDate> >() .Setup(m => m.Provider) .Returns(new TestDbAsyncQueryProvider <ServiceDate>(serviceDateData.Provider)); serviceDateMockSet.As <IQueryable <ServiceDate> >() .Setup(m => m.Expression) .Returns(serviceDateData.Expression); var mockContext = new Mock <ExtremeSportDBEntities>(); mockContext.Setup(m => m.Service).Returns(serviceMockSet.Object); mockContext.Setup(m => m.ServiceDate).Returns(serviceDateMockSet.Object); var serviceLogic = new ServiceLogic { Context = mockContext.Object }; var b = await serviceLogic.AddService(new DtoService { InstructorId = 1, Dates = new List <DateTime> { new DateTime(1944, 05, 09) }, ServiceTypeId = 1 }); Assert.AreEqual(b, true); serviceMockSet.Verify(m => m.Add(It.IsAny <Service>()), Times.Once()); mockContext.Verify(m => m.SaveChangesAsync(), Times.Once()); }