public void BuildingManager_Can_Set_Cotractor_For_Maitenance() { // Arrange MaintenanceRequest maintenanceRequest = new MaintenanceRequest(person, "Kvar", "Ne radi grijanje.", "Stan Mile, prvi kat."); RepairService serviceTypeForMock = new RepairService("Ličenje"); Mock<IRepairServicesRepository> repairServicesRepositoryMock = new Mock<IRepairServicesRepository>(); repairServicesRepositoryMock.Setup(x => x.GetById(23)).Returns(serviceTypeForMock); RepairService serviceType = repairServicesRepositoryMock.Object.GetById(23); Maintenance maintenance = new Maintenance(maintenanceRequest, Urgency.High, serviceType, building); LegalPerson legalPerson = new LegalPerson("12345678901", "Mile d.o.o."); Contractor contractor = new Contractor(legalPerson).AddRepairService(serviceType); BuildingManager buildingManager = maintenance.BuildingManager; buildingManager.AddContractor(contractor); // Act maintenance.SetContractor(contractor); // Assert var personSnapshot = new PersonSnapshot(contractor.LegalPerson); Assert.IsNotNull(maintenance.Contractor); Assert.AreEqual(personSnapshot.Oib, maintenance.Contractor.Oib, "Oibs aren't equal."); Assert.AreEqual(personSnapshot.FullName, maintenance.Contractor.FullName, "FullNames aren't equal."); Assert.AreEqual(personSnapshot.Address, maintenance.Contractor.Address, "Addresses aren't equal."); Assert.AreEqual(personSnapshot, maintenance.Contractor); }
public void Can_Save_Maintenance_To_DB() { // Arrange var person = new PhysicalPerson("12345678901", "Ime", "Prezime"); MaintenanceRequest maintenanceRequest = new MaintenanceRequest( person , "Kvar na grijanju" , "Grijanje ne radi" , "Prvi kat, stan 2"); City city = new City(10000, "Zagreb"); Cadastre cadastre = new Cadastre("Trnje", "12345", city); CadastralParticle cadastralParticle = new CadastralParticle(cadastre, "123", 23, "Opis"); LandRegistry landRegistry = new LandRegistry(cadastralParticle); var partitionSpace = landRegistry.CreatePartitionSpace("123", 12, "Opis etaže", person); LegalPerson legalPerson = new LegalPerson("12345678902", "Ime"); BuildingManager buildingManager = new BuildingManager(legalPerson); Building building = new Building(buildingManager) { LandRegistry = landRegistry }; RepairService repairService = new RepairService("Popravak grijanja"); Maintenance maintenance = new Maintenance(maintenanceRequest, Urgency.Normal, repairService, building); IMaintenancesRepository maintenancesRepository = new MaintenancesNHRepository(SessionFactory); // Act IList<Maintenance> maintenancesFromDb = null; using (var session = SessionFactory.OpenSession()) { using (var tx = session.BeginTransaction()) { session.Save(person); session.Save(city); session.Save(legalPerson); session.Save(cadastre); session.Save(landRegistry); session.Save(buildingManager); session.Save(building); session.Save(repairService); maintenancesRepository.SaveOrUpdate(maintenance); tx.Commit(); } using (var tx = session.BeginTransaction()) { maintenancesFromDb = maintenancesRepository.GetAll().ToList(); tx.Commit(); } } // Assert Assert.IsTrue(maintenancesFromDb.Count == 1, "No Maintenance from database."); }
/// <summary> /// Konstruktor /// </summary> /// <param name="maintenanceRequest">zahtjev za popravkom</param> /// <param name="urgency">hitnost</param> /// <param name="serviceType">tip servisa/usluge</param> /// <param name="building">zgrada za koju se prijavljuje kvar</param> public Maintenance(MaintenanceRequest maintenanceRequest, Urgency urgency, RepairService serviceType, Building building) { this.maintenanceRequest = maintenanceRequest; this.building = building; this.urgency = urgency; this.serviceType = serviceType; statusOfMaintenance = StatusOfMaintenance.NotStarted; maintenanceRemarks = new List<MaintenanceRemark>(); }
public void Can_Add_Services_To_Contractor() { // Arrange LegalPerson legalPerson = new LegalPerson("12345678901", "Mile d.o.o."); RepairService repairService1 = new RepairService("Ličenje"); RepairService repairService2 = new RepairService("vodovodne cijevi"); RepairService[] repairServices = new RepairService[] { repairService1, repairService2 }; // Act Contractor contractor = new Contractor(legalPerson, repairServices); RepairService repairService3 = new RepairService("parketi"); contractor.AddRepairService(repairService3); // Assert Assert.AreEqual(3, contractor.RepairServices.Count); Assert.AreEqual(repairService1, contractor.RepairServices.ElementAt(0)); Assert.AreEqual(repairService2, contractor.RepairServices.ElementAt(1)); Assert.AreEqual(repairService3, contractor.RepairServices.ElementAt(2)); }
public void Can_Get_RepairServices_From_DB() { // Arrange RepairService repairService = new RepairService("Popravak vode"); RepairServicesNHRepository repairServicesNhRepository = new RepairServicesNHRepository(SessionFactory); // Act IList<RepairService> repairServicesFromDb = null; using (var session = SessionFactory.OpenSession()) { using (var tx = session.BeginTransaction()) { session.Save(repairService); tx.Commit(); } using (var tx = session.BeginTransaction()) { repairServicesFromDb = repairServicesNhRepository.GetAll().ToList(); tx.Commit(); } } // Assert Assert.IsTrue(repairServicesFromDb.Count == 1, "No RepairService from database."); }
public void Person_Can_Issue_Maitenance_Request() { // Arrange MaintenanceRequest maintenanceRequest = new MaintenanceRequest(person, "Kvar", "Ne radi grijanje.", "Stan Mile, prvi kat."); RepairService serviceTypeForMock = new RepairService("Popravci grijanja i toplana"); Mock<IRepairServicesRepository> repairServicesRepositoryMock = new Mock<IRepairServicesRepository>(); repairServicesRepositoryMock.Setup(x => x.GetById(23)).Returns(serviceTypeForMock); RepairService serviceType = repairServicesRepositoryMock.Object.GetById(23); // Act Maintenance maintenance = new Maintenance(maintenanceRequest, Urgency.High, serviceType, building); // Assert Assert.AreEqual(maintenanceRequest, maintenance.MaintenanceRequest); Assert.AreEqual(StatusOfMaintenance.NotStarted, maintenance.StatusOfMaintenance); Assert.IsNotNull(maintenance.Urgency, "Hitnost nije definirana."); Assert.AreEqual(Urgency.High, maintenance.Urgency); Assert.IsNotNull(maintenance.ServiceType, "Usluga popravka nije definirana."); Assert.AreEqual(serviceType, maintenance.ServiceType); }
/// <summary> /// Dodaje uslugu koje obavlja izvodac radova /// </summary> /// <param name="repairService"></param> public virtual Contractor AddRepairService(RepairService repairService) { repairServices.Add(repairService); return this; }
/// <summary> /// Brise uslugu koju obavlja izvodac radova /// </summary> /// <param name="repairService"></param> /// <returns></returns> public virtual bool RemoveRepairService(RepairService repairService) { return repairServices.Remove(repairService); }
/// <summary> /// Mijenja vrstu usluge /// </summary> /// <param name="serviceType">nova vrsta usluge</param> public virtual void ChangeServiceType(RepairService serviceType) { this.serviceType = serviceType; }