public void AddClientTest() { // arrange IInsuranceCompany testInsuranceCompany = new InsuranceCompany(); // act InsuranceAccount testClient = new InsuranceAccount(); testInsuranceCompany.AddClient(testClient); // assert Assert.AreSame(testClient, testInsuranceCompany.Clients.LastOrDefault()); }
public void InsurenceCompanyShouldPayBill() { // arrange IInsuranceCompany testInsuranceCompany = new InsuranceCompany(); InsuranceAccount testClient = new InsuranceAccount(); testInsuranceCompany.AddClient(testClient); decimal oldBalance = testInsuranceCompany.Clients.LastOrDefault().Balance; // act testInsuranceCompany.PayBill(testInsuranceCompany.Clients.LastOrDefault(), new Bill()); // assert Assert.IsTrue(oldBalance > testInsuranceCompany.Clients.LastOrDefault().Balance); }
public void UseCaseTest() { // arrange IClinic testClinic = new Clinic(); IDoctor testDoctor = new Dentist(); IPatient testPatient = new Patient(); IInsuranceCompany testInsuranceCompany = new InsuranceCompany(); testInsuranceCompany.Clients.Add(testPatient.Insurance); testClinic.AddDoctor(testDoctor); // act //Пациент приходит в больницу с жалобой testPatient.PatientComplaint.Symptoms.Add(Symptom.Headache); testClinic.AddPatient(testPatient); //Его направляют к нужному врачу(лор, ортопед, стоматолог). IDoctor doctorForPatient = testClinic.GiveDoctor(testClinic.Patients.LastOrDefault()); //Доктор ставит диагноз и выписывает назначение. Diagnosis diagnosisForPatient = doctorForPatient.Diagnosticate(testPatient.PatientComplaint); Treatment appointmentForPatient = doctorForPatient.PrescribeTreatment(diagnosisForPatient); //Больница выставляет счет страховой компании пациента. Bill billForPatient = testClinic.GiveBill(appointmentForPatient); //Страховая компания оплачивает счет. testPatient.PayBill(); //После оплаты больница начинает лечение. testClinic.Cure(testPatient, diagnosisForPatient, appointmentForPatient); // assert Assert.IsNull(testPatient.PatientComplaint.Symptoms); }