private void ConfigureMvc(IServiceCollection services) { services .AddMvcCore(config => { config.RespectBrowserAcceptHeader = true; config.ReturnHttpNotAcceptable = true; //config.Filters.Add(new RequestBodyInsightsFilter(StatusCodes.Status400BadRequest)); }) .AddAuthorization() .AddFormatterMappings() .AddJsonFormatters() .AddXmlSerializerFormatters() .AddCors() .SetCompatibilityVersion(CompatibilityVersion.Version_2_2); services.AddVersionedApiExplorer(options => { options.GroupNameFormat = "'v'VVV"; options.SubstituteApiVersionInUrl = true; }); services.AddApiVersioning(options => { options.UseApiBehavior = false; options.ReportApiVersions = true; options.AssumeDefaultVersionWhenUnspecified = true; options.DefaultApiVersion = new ApiVersion(1, 0); ChargesController.Convention(options); }); }
public void Post_Test_NewCharge() { ChargesController controler = new ChargesController(); controler.RavenSession = RavenSession; RavenSession.Store(new Owner { Email = "*****@*****.**", Id = 1, Name = "Tester", UserName = "******" }); RavenSession.Store(new Asset { OwnerId = 1, Id = 1, Name = "Asset1" }); RavenSession.SaveChanges(); var newCharge = new Charge { AccountNumber = "1234", Amount = 500, Automatic = false, Counterparty = "Counterparty", Name = "Name", Notes = "Notes", PaymentDay = 1, Unit = 2, }; controler.RavenSession = RavenSession; var result = controler.Post(newCharge, 1); RavenSession.SaveChanges(); var charge = RavenSession.Load <Asset>(1).Charges.First(); Assert.AreEqual(charge.Id, 1); Assert.AreEqual(charge.Name, "Name"); Assert.AreEqual(charge.Notes, "Notes"); Assert.AreEqual(charge.PaymentDay, 1); Assert.AreEqual(charge.Unit, 2); Assert.AreEqual(charge.Amount, 500); }