private Guid SeedDatabaseForGetByIdTesting() { using (SpiceContext ctx = SetupInMemoryDatabase()) { Field field = Fields.ModelFactory.DomainModel(); ctx.Fields.Add(field); Domain.Species species = Species.ModelFactory.DomainModel(); ctx.Species.Add(species); Plant plant = ModelFactory.DomainModel(field, species); Nutrient nutrient = Tests.Nutrients.ModelFactory.DomainModel(); ctx.Nutrients.Add(nutrient); AdministeredNutrient administeredNutrient = Nutrients.ModelFactory.DomainModel(nutrient, plant); plant.AdministeredNutrients.Add(administeredNutrient); ctx.AdministeredNutrients.Add(administeredNutrient); Event @event = Events.ModelFactory.DomainModel(plant); plant.Events.Add(@event); ctx.Events.Add(@event); ctx.Plants.Add(plant); ctx.Save(); return(plant.Id); } }
private Plant SeedDatabaseForGetEventSummaryTesting() { using (SpiceContext ctx = SetupInMemoryDatabase()) { Plant plant = Plants.ModelFactory.DomainModel(); Event event1 = ModelFactory.DomainModel(plant, EventType.Disease, new DateTime(2018, 1, 1, 0, 0, 0)); Event event2 = ModelFactory.DomainModel(plant, EventType.Disease, new DateTime(2018, 2, 1, 0, 0, 0)); Event event3 = ModelFactory.DomainModel(plant, EventType.Disease, new DateTime(2018, 3, 1, 0, 0, 0)); Event event4 = ModelFactory.DomainModel(plant, EventType.Disease, new DateTime(2018, 4, 1, 0, 0, 0)); Event event5 = ModelFactory.DomainModel(plant, EventType.OverWatering, new DateTime(2018, 1, 1, 0, 0, 0)); plant.Events.Add(event1); plant.Events.Add(event2); plant.Events.Add(event3); plant.Events.Add(event4); plant.Events.Add(event5); ctx.Plants.Add(plant); ctx.Events.Add(event1); ctx.Events.Add(event2); ctx.Events.Add(event3); ctx.Events.Add(event4); ctx.Events.Add(event5); ctx.Save(); return(plant); } }
public void ShouldResolveDatabaseConfig() { var result = new SpiceContext(); Assert.True(result.Database.IsSqlServer()); Assert.Equal(@"Server=(localdb)\MSSQLLocalDB;Database=SpiceDB;Trusted_Connection=True;", result.Database.GetDbConnection().ConnectionString); }
private Guid SeedDatabaseForGetByIdTesting() { using (SpiceContext ctx = SetupInMemoryDatabase()) { Domain.Species species = ModelFactory.DomainModel(); ctx.Species.Add(species); ctx.Save(); return(species.Id); } }
private Guid SeedDatabaseForGetByIdTesting() { using (SpiceContext ctx = SetupInMemoryDatabase()) { Nutrient nutrient = ModelFactory.DomainModel(); ctx.Nutrients.Add(nutrient); ctx.Save(); return(nutrient.Id); } }
private void SeedDatabaseForGetAllTesting() { using (SpiceContext ctx = SetupInMemoryDatabase()) { ctx.Fields.Add(ModelFactory.DomainModel("Field A")); ctx.Fields.Add(ModelFactory.DomainModel("Field B")); ctx.Fields.Add(ModelFactory.DomainModel("Field C")); ctx.Fields.Add(ModelFactory.DomainModel("Field D")); ctx.Save(); } }
private void SeedDatabaseForGetAllTesting() { using (SpiceContext ctx = SetupInMemoryDatabase()) { ctx.Species.Add(ModelFactory.DomainModel("Species A")); ctx.Species.Add(ModelFactory.DomainModel("Species B")); ctx.Species.Add(ModelFactory.DomainModel("Species C")); ctx.Species.Add(ModelFactory.DomainModel("Species D")); ctx.Save(); } }
private void SeedDatabaseForGetAllTesting() { using (SpiceContext ctx = SetupInMemoryDatabase()) { ctx.Nutrients.Add(ModelFactory.DomainModel("Nutrient A")); ctx.Nutrients.Add(ModelFactory.DomainModel("Nutrient B")); ctx.Nutrients.Add(ModelFactory.DomainModel("Nutrient C")); ctx.Nutrients.Add(ModelFactory.DomainModel("Nutrient D")); ctx.Save(); } }
private void SeedDatabaseForGetAllTesting() { using (SpiceContext ctx = SetupInMemoryDatabase()) { Field field = Fields.ModelFactory.DomainModel(); Domain.Species species = Species.ModelFactory.DomainModel(); ctx.Plants.Add(ModelFactory.DomainModel(field)); ctx.Plants.Add(ModelFactory.DomainModel(field, species, 0, 1)); ctx.Save(); } }
private Guid SeedDatabaseForGetByIdTesting() { using (SpiceContext ctx = SetupInMemoryDatabase()) { Field field = ModelFactory.DomainModel(); Plant plant = Plants.ModelFactory.DomainModel(field); ctx.Fields.Add(field); ctx.Plants.Add(plant); ctx.Save(); return(field.Id); } }
private Plant SeedDatabaseForGetByPlantTesting() { using (SpiceContext ctx = SetupInMemoryDatabase()) { Plant plant = Plants.ModelFactory.DomainModel(); Event @event = ModelFactory.DomainModel(); plant.Events.Add(@event); ctx.Plants.Add(plant); ctx.Save(); return(plant); } }
private Plant SeedDatabaseForGetByPlantTesting() { using (SpiceContext ctx = SetupInMemoryDatabase()) { Plant plant = Plants.ModelFactory.DomainModel(); AdministeredNutrient administeredNutrient = ModelFactory.DomainModel(); plant.AdministeredNutrients.Add(administeredNutrient); ctx.Plants.Add(plant); ctx.Save(); return(plant); } }
private Guid SeedDatabaseForGetByPlantIdTesting() { using (SpiceContext ctx = SetupInMemoryDatabase()) { Plant plant = Plants.ModelFactory.DomainModel(); Event event1 = ModelFactory.DomainModel(plant); Event event2 = ModelFactory.DomainModel(plant); Event event3 = ModelFactory.DomainModel(plant); plant.Events.Add(event1); plant.Events.Add(event2); plant.Events.Add(event3); ctx.Plants.Add(plant); ctx.Events.Add(event1); ctx.Events.Add(event2); ctx.Events.Add(event3); ctx.Save(); return(plant.Id); } }
private Plant SeedDatabaseForGetNutrientSummaryTesting() { using (SpiceContext ctx = SetupInMemoryDatabase()) { Plant plant = Plants.ModelFactory.DomainModel(); Nutrient water = new Nutrient { Name = "Water" }; AdministeredNutrient administeredWater1 = ModelFactory.DomainModel(water, date: new DateTime(2018, 1, 1, 0, 0, 0)); AdministeredNutrient administeredWater2 = ModelFactory.DomainModel(water, date: new DateTime(2018, 2, 1, 0, 0, 0)); AdministeredNutrient administeredWater3 = ModelFactory.DomainModel(water, date: new DateTime(2018, 3, 1, 0, 0, 0)); AdministeredNutrient administeredWater4 = ModelFactory.DomainModel(water, date: new DateTime(2018, 4, 1, 0, 0, 0)); AdministeredNutrient administeredWater5 = ModelFactory.DomainModel(water, date: new DateTime(2018, 5, 1, 0, 0, 0)); AdministeredNutrient administerdWater6 = ModelFactory.DomainModel(water, date: new DateTime(2019, 1, 1, 0, 0, 0)); Nutrient fertilizer = new Nutrient { Name = "Fertilizer" }; AdministeredNutrient administeredFertilizer = ModelFactory.DomainModel(fertilizer, date: new DateTime(2018, 1, 1, 0, 0, 0)); plant.AdministeredNutrients.Add(administeredWater1); plant.AdministeredNutrients.Add(administeredWater2); plant.AdministeredNutrients.Add(administeredWater3); plant.AdministeredNutrients.Add(administeredWater4); plant.AdministeredNutrients.Add(administeredWater5); plant.AdministeredNutrients.Add(administerdWater6); plant.AdministeredNutrients.Add(administeredFertilizer); ctx.Plants.Add(plant); ctx.Nutrients.Add(water); ctx.Nutrients.Add(fertilizer); ctx.Save(); return(plant); } }
private Domain.Species SeedDatabaseForGetSpeciesSummaryTesting() { using (SpiceContext ctx = SetupInMemoryDatabase()) { // test data overview: three plants of one species growing on three different fields Domain.Species species = ModelFactory.DomainModel(); Plant plant1 = Plants.ModelFactory.DomainModel(species: species); Plant plant2 = Plants.ModelFactory.DomainModel(species: species); Plant plant3 = Plants.ModelFactory.DomainModel(species: species); // two nutrients - water and fertilizer Nutrient water = Nutrients.ModelFactory.DomainModel("Water"); Nutrient fertilizer = Nutrients.ModelFactory.DomainModel("Fertilizer", dosageUnits: "g"); // plant #1 was watered 3 times with 1ml of water and fertilized once with 1 gram of fertilizer AdministeredNutrient waterPlant11 = Plants.Nutrients.ModelFactory.DomainModel(water, plant1, new DateTime(2017, 01, 01, 0, 0, 0)); AdministeredNutrient waterPlant12 = Plants.Nutrients.ModelFactory.DomainModel(water, plant1, new DateTime(2018, 01, 01, 0, 0, 0)); AdministeredNutrient waterPlant13 = Plants.Nutrients.ModelFactory.DomainModel(water, plant1, new DateTime(2019, 01, 01, 0, 0, 0)); AdministeredNutrient fertilizerPlant1 = Plants.Nutrients.ModelFactory.DomainModel(fertilizer, plant1, new DateTime(2018, 01, 01, 0, 0, 0)); plant1.AdministeredNutrients.Add(waterPlant11); plant1.AdministeredNutrients.Add(waterPlant12); plant1.AdministeredNutrients.Add(waterPlant13); plant1.AdministeredNutrients.Add(fertilizerPlant1); // plant #2 was watered 2 times with 1ml of water and fertilized twice with 1 gram of fertilizer AdministeredNutrient waterPlant21 = Plants.Nutrients.ModelFactory.DomainModel(water, plant2, new DateTime(2017, 01, 01, 0, 0, 0)); AdministeredNutrient waterPlant22 = Plants.Nutrients.ModelFactory.DomainModel(water, plant2, new DateTime(2018, 01, 02, 0, 0, 0)); AdministeredNutrient fertilizerPlant21 = Plants.Nutrients.ModelFactory.DomainModel(fertilizer, plant2, new DateTime(2018, 02, 01, 0, 0, 0)); AdministeredNutrient fertilizerPlant22 = Plants.Nutrients.ModelFactory.DomainModel(fertilizer, plant2, new DateTime(2019, 01, 01, 0, 0, 0)); plant2.AdministeredNutrients.Add(waterPlant21); plant2.AdministeredNutrients.Add(waterPlant22); plant2.AdministeredNutrients.Add(fertilizerPlant21); plant2.AdministeredNutrients.Add(fertilizerPlant22); // plant #3 was not watered and was fertilized four times with 1 gram of fertilizer AdministeredNutrient fertilizerPlant31 = Plants.Nutrients.ModelFactory.DomainModel(fertilizer, plant3, new DateTime(2017, 01, 01, 0, 0, 0)); AdministeredNutrient fertilizerPlant32 = Plants.Nutrients.ModelFactory.DomainModel(fertilizer, plant3, new DateTime(2018, 01, 01, 0, 0, 0)); AdministeredNutrient fertilizerPlant33 = Plants.Nutrients.ModelFactory.DomainModel(fertilizer, plant3, new DateTime(2018, 02, 02, 0, 0, 0)); AdministeredNutrient fertilizerPlant34 = Plants.Nutrients.ModelFactory.DomainModel(fertilizer, plant3, new DateTime(2019, 01, 01, 0, 0, 0)); plant3.AdministeredNutrients.Add(fertilizerPlant31); plant3.AdministeredNutrients.Add(fertilizerPlant32); plant3.AdministeredNutrients.Add(fertilizerPlant33); plant3.AdministeredNutrients.Add(fertilizerPlant34); // Water used in 2017: 2 // Water used in 2018: 2 // Water used in 2019: 1 // Fertilizer used in 2017: 1 // Fertilizer used in 2018: 4 // Fertilizer used in 2019: 2 // Total used water: 5 ml // Total used fertilizer: 7 g ctx.Species.Add(species); ctx.Nutrients.Add(water); ctx.Nutrients.Add(fertilizer); ctx.Plants.Add(plant1); ctx.Plants.Add(plant2); ctx.Plants.Add(plant3); ctx.Save(); return(species); } }