public void GetByCode_Return_InternalServerError() { //Setup Mock <IServiceProvider> serviceProvider = GetServiceProvider(); GarmentCurrencyService service = new GarmentCurrencyService(serviceProvider.Object); serviceProvider.Setup(s => s.GetService(typeof(GarmentCurrencyService))).Returns(service); //Act IActionResult response = GetController(service).GetByCode(null); //Assert int statusCode = this.GetStatusCode(response); Assert.Equal((int)HttpStatusCode.InternalServerError, statusCode); }
public IEnumerable <ValidationResult> Validate(ValidationContext validationContext) { List <ValidationResult> validationResult = new List <ValidationResult>(); if (string.IsNullOrWhiteSpace(this.Code)) { validationResult.Add(new ValidationResult("Code is required", new List <string> { "Code" })); } if (this.Date > DateTime.Now) { validationResult.Add(new ValidationResult("Date must be less than or equal today's date", new List <string> { "Date" })); } if (this.Rate.Equals(null) || this.Rate < 0) { validationResult.Add(new ValidationResult("Rate must be greater than zero", new List <string> { "Rate" })); } if (validationResult.Count.Equals(0)) { /* Service Validation */ GarmentCurrencyService service = (GarmentCurrencyService)validationContext.GetService(typeof(GarmentCurrencyService)); var coba = service.DbContext.Set <GarmentCurrency>().Where(r => r.Code == this.Code); if (service.DbContext.Set <GarmentCurrency>().Count(r => r._IsDeleted.Equals(false) && r.Id != this.Id && r.Code.Equals(this.Code) && r.Date.Equals(this.Date)) > 0) /* Unique */ { validationResult.Add(new ValidationResult("Code and Date already exists", new List <string> { "Code" })); validationResult.Add(new ValidationResult("Code and Date already exists", new List <string> { "Date" })); } } return(validationResult); }
public void GetByCode_Return_Ok() { //Setup CoreDbContext dbContext = _dbContext(GetCurrentAsyncMethod()); Mock <IServiceProvider> serviceProvider = GetServiceProvider(); GarmentCurrencyService service = new GarmentCurrencyService(serviceProvider.Object); serviceProvider.Setup(s => s.GetService(typeof(GarmentCurrencyService))).Returns(service); serviceProvider.Setup(s => s.GetService(typeof(CoreDbContext))).Returns(dbContext); Lib.Models.GarmentCurrency testData = GetTestData(dbContext); //Act IActionResult response = GetController(service).GetByCode(""); //Assert int statusCode = this.GetStatusCode(response); Assert.Equal((int)HttpStatusCode.OK, statusCode); }
protected GarmentCurrenciesController GetController(GarmentCurrencyService service) { var user = new Mock <ClaimsPrincipal>(); var claims = new Claim[] { new Claim("username", "unittestusername") }; user.Setup(u => u.Claims).Returns(claims); GarmentCurrenciesController controller = new GarmentCurrenciesController(service); controller.ControllerContext = new ControllerContext() { HttpContext = new DefaultHttpContext() { User = user.Object } }; controller.ControllerContext.HttpContext.Request.Headers["Authorization"] = "Bearer unittesttoken"; controller.ControllerContext.HttpContext.Request.Path = new PathString("/v1/unit-test"); return(controller); }