public void Test_CtorWithAd() { // Given MotorBoatAd ad = new MotorBoatAd { Title = "title", MotorBoatType = new Bea.Domain.Reference.MotorBoatType { Label = "type" }, MotorType = new Bea.Domain.Reference.MotorBoatEngineType { Label = "motor type" }, Year = 2012, Length = 15.80000d, Hp = 89, City = new City(), CreatedBy = new User() }; var helperMock = new Moq.Mock <IHelperService>(); helperMock.Setup(x => x.GetCulture()).Returns(new System.Globalization.CultureInfo("Fr")); // When MotorBoatAdDetailsModel actual = new MotorBoatAdDetailsModel(ad, helperMock.Object); // Then Assert.AreEqual(ad.Title, actual.Title); Assert.AreEqual(ad.MotorBoatType.Label, actual.BoatType); Assert.AreEqual(ad.MotorType.Label, actual.MotorType); Assert.AreEqual(ad.Year, actual.Year); Assert.AreEqual("15,80 Mtr", actual.Length); Assert.AreEqual("89 Cv", actual.Hp); }
public void Test_CtorWithAd_NoTypes() { // Given MotorBoatAd ad = new MotorBoatAd { Title = "title", City = new City(), CreatedBy = new User() }; // When MotorBoatAdDetailsModel actual = new MotorBoatAdDetailsModel(ad, null); // Then Assert.AreEqual(ad.Title, actual.Title); Assert.AreEqual(String.Empty, actual.BoatType); Assert.AreEqual(String.Empty, actual.MotorType); Assert.AreEqual(null, actual.Year); Assert.AreEqual(String.Empty, actual.Length); Assert.AreEqual(String.Empty, actual.Hp); }
protected AdDetailsModel CreateAdDetailsModelFromAd(AdTypeEnum adType, long adId) { AdDetailsModel model = null; BaseAd ad = null; // Get the right Ad based on its type switch (adType) { case AdTypeEnum.Ad: ad = _adRepository.GetAdById <Ad>(adId); model = new AdDetailsModel(ad); break; case AdTypeEnum.CarAd: ad = _adRepository.GetAdById <CarAd>(adId); model = new CarAdDetailsModel(ad as CarAd); break; case AdTypeEnum.MotoAd: ad = _adRepository.GetAdById <MotoAd>(adId); model = new MotoAdDetailsModel(ad as MotoAd); break; case AdTypeEnum.OtherVehiculeAd: ad = _adRepository.GetAdById <OtherVehicleAd>(adId); model = new OtherVehicleAdDetailsModel(ad as OtherVehicleAd); break; case AdTypeEnum.SailingBoatAd: ad = _adRepository.GetAdById <SailingBoatAd>(adId); model = new SailingBoatAdDetailsModel(ad as SailingBoatAd, _helperService); break; case AdTypeEnum.MotorBoatAd: ad = _adRepository.GetAdById <MotorBoatAd>(adId); model = new MotorBoatAdDetailsModel(ad as MotorBoatAd, _helperService); break; case AdTypeEnum.MotorBoatEngineAd: ad = _adRepository.GetAdById <MotorBoatEngineAd>(adId); model = new MotorBoatEngineAdDetailsModel(ad as MotorBoatEngineAd); break; case AdTypeEnum.WaterSportAd: ad = _adRepository.GetAdById <WaterSportAd>(adId); model = new WaterSportAdDetailsModel(ad as WaterSportAd); break; case AdTypeEnum.RealEstateAd: ad = _adRepository.GetAdById <RealEstateAd>(adId); model = new RealEstateAdDetailsModel(ad as RealEstateAd); break; default: return(null); } // Compute whether or not this Ad is new (less than 3 days) model.IsNew = ad.CreationDate > _helperService.GetCurrentDateTime().AddHours(-72); return(model); }