public void t_PointSurvey_Delete() { PointSurvey_ado setupObject = null; // backdoor data setup DbTestHelper.LoadAdoObjects(delegate(IbaUnitTestEntities iba) { setupObject = PointSurvey_ado.CreatePointSurvey_ado(TestHelper.TestGuid3, TestHelper.TestGuid1, DateTime.Now, DateTime.Now.AddMinutes(5)); setupObject.NoiseCode = 0; setupObject.SiteVisitId = TestHelper.TestGuid1; iba.AddToPointSurvey_ado1(setupObject); }); List <PointSurvey_ado> PointSurveyAdolist = DbTestHelper.LoadExtraneousPointSurveys(); PointSurveyMapper.Delete(new FiftyMeterPointSurvey() { Id = setupObject.EventId }); // Validate results using (IbaUnitTestEntities iba = new IbaUnitTestEntities()) { var PointSurveyQuery = from PointSurveys in iba.PointSurvey_ado1 select PointSurveys; Assert.IsNotNull(PointSurveyQuery, "Query result is null"); Assert.AreEqual(PointSurveyAdolist.Count(), PointSurveyQuery.Count(), "Wrong number of results in query"); validateExtraPointSurveyAdos(PointSurveyAdolist, PointSurveyQuery); } }
/// <summary> /// Loads extra PointSurvey objects to improve testing /// </summary> /// <returns> /// List of <see cref="PointSurvey_ado"/> objects /// </returns> public static List <PointSurvey_ado> LoadExtraneousPointSurveys() { List <PointSurvey_ado> surveyList = new List <PointSurvey_ado>(); PointSurvey_ado extra1 = PointSurvey_ado.CreatePointSurvey_ado(TestHelper.TestGuid1, TestHelper.TestGuid1, DateTime.Now, DateTime.Now.AddMinutes(5)); extra1.NoiseCode = 0; extra1.SiteVisitId = TestHelper.TestGuid1; LoadAdoObjects((IbaUnitTestEntities iba) => { iba.AddToPointSurvey_ado1(extra1); }); surveyList.Add(extra1); PointSurvey_ado extra2 = PointSurvey_ado.CreatePointSurvey_ado(TestHelper.TestGuid2, TestHelper.TestGuid2, DateTime.Now.AddMinutes(10), DateTime.Now.AddMinutes(15)); extra2.NoiseCode = 0; extra2.SiteVisitId = TestHelper.TestGuid1; LoadAdoObjects((IbaUnitTestEntities iba) => { iba.AddToPointSurvey_ado1(extra2); }); surveyList.Add(extra2); return(surveyList); }
private static void validateObjectEquality(FiftyMeterPointSurvey survey, PointSurvey_ado adoPointSurvey) { Assert.IsNotNull(adoPointSurvey, "There is no PointSurvey with the ID to test for"); Assert.AreEqual(TestHelper.TestString(survey.EndTimeStamp.Value), TestHelper.TestString(adoPointSurvey.EndTime), "EndTimeStamp"); Assert.AreEqual(survey.Id, adoPointSurvey.EventId, "PointSurveyId"); Assert.AreEqual(survey.LocationId, adoPointSurvey.LocationId, "LocationId"); Assert.AreEqual(TestHelper.TestString(survey.StartTimeStamp.Value), TestHelper.TestString(adoPointSurvey.StartTime), "StartTimeStamp"); Assert.AreEqual(survey.NoiseCode, adoPointSurvey.NoiseCode, "NoiseCode"); }
/// <summary> /// Loads a single PointSurvey to the database /// </summary> /// <param name="endDateTime"></param> /// <param name="startdateTime"></param> /// <param name="locationId"></param> /// <param name="siteVisitId"></param> /// <param name="pointSurveyId">Guid</param> public static PointSurvey_ado LoadSinglePointSurvey(Guid pointSurveyId, Guid siteVisitId, Guid locationId, DateTime startdateTime, DateTime endDateTime) { PointSurvey_ado ado = null; LoadAdoObjects((IbaUnitTestEntities iba) => { ado = PointSurvey_ado.CreatePointSurvey_ado(pointSurveyId, locationId, startdateTime, endDateTime); ado.SiteVisitId = siteVisitId; iba.AddToPointSurvey_ado1(ado); }); return(ado); }
private static void validateExtraPointSurveyAdos(List <PointSurvey_ado> extraList, IQueryable <PointSurvey_ado> PointSurveyQuery) { foreach (PointSurvey_ado extra in extraList) { PointSurvey_ado adoPointSurvey = PointSurveyQuery.First(x => x.EventId == extra.EventId); Assert.IsNotNull(adoPointSurvey, "There is no longer an object with id " + extra.EventId.ToString()); Assert.AreEqual(TestHelper.TestString(extra.EndTime), TestHelper.TestString(adoPointSurvey.EndTime), "EndTime for id " + extra.EventId.ToString()); Assert.AreEqual(extra.EventId, adoPointSurvey.EventId, "EventId for id " + extra.EventId.ToString()); Assert.AreEqual(extra.LocationId, adoPointSurvey.LocationId, "LocationId for id " + extra.EventId.ToString()); Assert.AreEqual(extra.NoiseCode, adoPointSurvey.NoiseCode, "NoiseCode for id " + extra.EventId.ToString()); Assert.AreEqual(TestHelper.TestString(extra.StartTime), TestHelper.TestString(adoPointSurvey.StartTime), "StartTime for id " + extra.EventId.ToString()); } }
private void setupOakwood() { Location_ado site = Location_ado.CreateLocation_ado(TestHelper.TestGuid1, OAKWOOD, LookupConstants.LocationTypeSite); Location_ado point = Location_ado.CreateLocation_ado(TestHelper.TestGuid2, "Point", LookupConstants.LocationTypePoint); point.ParentLocationId = site.LocationId; SiteVisit_ado visit = DbTestHelper.LoadSingleSiteVisit(TestHelper.TestGuid1, site.LocationId, DateTime.Now.AddHours(-7)); PointSurvey_ado survey = PointSurvey_ado.CreatePointSurvey_ado(TestHelper.TestGuid2, point.LocationId, DateTime.Now.AddHours(-7), DateTime.Now.AddHours(-6)); survey.SiteVisitId = visit.EventId; DbTestHelper.LoadAdoObjects((IbaUnitTestEntities iba) => { iba.AddToPointSurvey_ado1(survey); iba.AddToLocation_ado(site); iba.AddToLocation_ado(point); iba.SaveChanges(); }); List <Observation_ado> obsList = new List <Observation_ado>(); addABunchOfObservations(obsList, 35, List[0].SpeciesId, survey.EventId); addABunchOfObservations(obsList, 26, List[1].SpeciesId, survey.EventId); addABunchOfObservations(obsList, 21, List[2].SpeciesId, survey.EventId); addABunchOfObservations(obsList, 16, List[3].SpeciesId, survey.EventId); addABunchOfObservations(obsList, 11, List[4].SpeciesId, survey.EventId); addABunchOfObservations(obsList, 6, List[5].SpeciesId, survey.EventId); addABunchOfObservations(obsList, 5, List[6].SpeciesId, survey.EventId); addABunchOfObservations(obsList, 3, List[7].SpeciesId, survey.EventId); addABunchOfObservations(obsList, 3, List[8].SpeciesId, survey.EventId); addABunchOfObservations(obsList, 3, List[9].SpeciesId, survey.EventId); addABunchOfObservations(obsList, 3, List[10].SpeciesId, survey.EventId); addABunchOfObservations(obsList, 3, List[11].SpeciesId, survey.EventId); addABunchOfObservations(obsList, 2, List[12].SpeciesId, survey.EventId); addABunchOfObservations(obsList, 2, List[13].SpeciesId, survey.EventId); addABunchOfObservations(obsList, 2, List[14].SpeciesId, survey.EventId); addABunchOfObservations(obsList, 1, List[15].SpeciesId, survey.EventId); addABunchOfObservations(obsList, 1, List[16].SpeciesId, survey.EventId); addABunchOfObservations(obsList, 1, List[17].SpeciesId, survey.EventId); addABunchOfObservations(obsList, 1, List[18].SpeciesId, survey.EventId); addABunchOfObservations(obsList, 25, List[19].SpeciesId, survey.EventId); loadObservations(obsList); }
public void t_SelectAllForEvent_SiteVisit() { Guid siteVisitid = DbTestHelper.TestGuid3; DbTestHelper.LoadSingleSiteVisit(siteVisitid); Guid eventId = DbTestHelper.TestGuid1; Guid eventId2 = DbTestHelper.TestGuid2; Guid speciesId1 = new Guid(DbTestHelper.SPECIES_1_ID); Guid speciesId2 = new Guid(DbTestHelper.SPECIES_2_ID); string speciesCode1 = DbTestHelper.SPECIES_1_CODE; string speciesCode2 = DbTestHelper.SPECIES_2_CODE; string comments1 = string.Empty; string comments2 = "comments 2"; DbTestHelper.LoadAdoObjects((IbaUnitTestEntities iba) => { PointSurvey_ado survey1 = PointSurvey_ado.CreatePointSurvey_ado(eventId, true, DbTestHelper.TestGuid2, DateTime.Now, DateTime.Now.AddHours(2)); survey1.SiteVisitId = siteVisitid; iba.AddToPointSurvey_ado1(survey1); PointSurvey_ado survey2 = PointSurvey_ado.CreatePointSurvey_ado(eventId2, true, DbTestHelper.TestGuid2, DateTime.Now, DateTime.Now.AddHours(2)); survey2.SiteVisitId = siteVisitid; iba.AddToPointSurvey_ado1(survey2); }); multiBackdoorSetup(eventId, speciesId1, speciesId2, comments1, comments2); multiBackdoorSetup(eventId2, speciesId1, speciesId2, comments1, comments2); // Run the system List<FiftyMeterDataEntry> entryList = FiftyMeterDataEntryMapper.SelectAllForEvent(siteVisitid); // Validate results Assert.IsNotNull(entryList, "entrylist is null"); Assert.AreEqual(4, entryList.Count(), "entrylist does not contain 4 objects"); // TODO: need to make sure the grouping handles different PointSurveyId values, separating them appropriately. ValidateFiftyMeterDataEntryObject(eventId, comments1, entryList, "1", 0, 1, speciesCode1); ValidateFiftyMeterDataEntryObject(eventId, comments2, entryList, "2", 2, 1, speciesCode2); ValidateFiftyMeterDataEntryObject(eventId2, comments1, entryList, "1", 0, 1, speciesCode1); ValidateFiftyMeterDataEntryObject(eventId2, comments2, entryList, "2", 2, 1, speciesCode2); }
public void t_PointSurvey_Select_ByGuid() { PointSurvey_ado setupObject = null; // backdoor data setup DbTestHelper.LoadAdoObjects(delegate(IbaUnitTestEntities iba) { setupObject = PointSurvey_ado.CreatePointSurvey_ado(TestHelper.TestGuid3, TestHelper.TestGuid1, DateTime.Now, DateTime.Now.AddMinutes(5)); setupObject.NoiseCode = 0; setupObject.SiteVisitId = TestHelper.TestGuid1; iba.AddToPointSurvey_ado1(setupObject); }); List <PointSurvey_ado> extraList = DbTestHelper.LoadExtraneousPointSurveys(); // Exercise the test FiftyMeterPointSurvey resultObject = PointSurveyMapper.Select(setupObject.EventId); validateObjectEquality(resultObject, setupObject); }
public void t_PointSurvey_Save_Update() { PointSurvey_ado setupObject = null; // backdoor data setup DbTestHelper.LoadAdoObjects(delegate(IbaUnitTestEntities iba) { setupObject = PointSurvey_ado.CreatePointSurvey_ado(TestHelper.TestGuid3, TestHelper.TestGuid1, DateTime.Now, DateTime.Now.AddMinutes(5)); setupObject.NoiseCode = 0; setupObject.SiteVisitId = TestHelper.TestGuid1; iba.AddToPointSurvey_ado1(setupObject); }); List <PointSurvey_ado> extraList = DbTestHelper.LoadExtraneousPointSurveys(); // Setup object to be saved. Change everything except the Id. FiftyMeterPointSurvey toSave = new FiftyMeterPointSurvey() { Id = setupObject.EventId, EndTimeStamp = setupObject.EndTime.AddHours(1), LocationId = TestHelper.TestGuid4, NoiseCode = 0, StartTimeStamp = setupObject.StartTime.AddHours(0.5) }; // Execute the test PointSurveyMapper.Update(toSave); // Validate results using (IbaUnitTestEntities iba = new IbaUnitTestEntities()) { var PointSurveyQuery = from PointSurveys in iba.PointSurvey_ado1 select PointSurveys; Assert.IsNotNull(PointSurveyQuery, "Query result is null"); Assert.AreEqual(extraList.Count() + 1, PointSurveyQuery.Count(), "Wrong number of results in query"); PointSurvey_ado adoPointSurvey = PointSurveyQuery.First(x => x.EventId == setupObject.EventId); validateObjectEquality(toSave, adoPointSurvey); validateExtraPointSurveyAdos(extraList, PointSurveyQuery); } }
public void t_PointSurvey_Save_Insert() { FiftyMeterPointSurvey toInsert = new FiftyMeterPointSurvey() { Id = TestHelper.TestGuid1, EndTimeStamp = DateTime.Now, LocationId = TestHelper.TestGuid4, NoiseCode = 0, StartTimeStamp = DateTime.Now.AddHours(-2) }; PointSurveyMapper.Insert(toInsert); using (IbaUnitTestEntities iba = new IbaUnitTestEntities()) { var PointSurveyQuery = from PointSurveys in iba.PointSurvey_ado1 select PointSurveys; Assert.IsNotNull(PointSurveyQuery, "Query result is null"); Assert.AreEqual(1, PointSurveyQuery.Count(), "Wrong number of results in query"); PointSurvey_ado adoPointSurvey = PointSurveyQuery.First(); validateObjectEquality(toInsert, adoPointSurvey); } }
public void t_GetCommunityBreeding() { DateTime breedingdate1 = new DateTime(2010, 07, 01); DateTime breedingdate2 = new DateTime(2010, 06, 11); DateTime breedingdate3 = new DateTime(2009, 06, 11, 9, 32, 0); List <Location_ado> siteList = DbTestHelper.LoadSites(); SiteVisit_ado visit1 = DbTestHelper.LoadSingleSiteVisit(TestHelper.TestGuid1, siteList[0].LocationId, breedingdate1); SiteVisit_ado visit2 = DbTestHelper.LoadSingleSiteVisit(TestHelper.TestGuid2, siteList[1].LocationId, breedingdate2); SiteVisit_ado extra = DbTestHelper.LoadSingleSiteVisit(TestHelper.TestGuid3, siteList[0].LocationId, breedingdate3); PointSurvey_ado surveyExtra = DbTestHelper.LoadSinglePointSurvey(TestHelper.TestGuid5, extra.EventId, TestHelper.TestGuid1, breedingdate3, breedingdate3.AddMinutes(5)); PointSurvey_ado survey1 = DbTestHelper.LoadSinglePointSurvey(TestHelper.TestGuid3, visit1.EventId, TestHelper.TestGuid1, DateTime.Now, DateTime.Now.AddHours(1)); PointSurvey_ado survey2 = DbTestHelper.LoadSinglePointSurvey(TestHelper.TestGuid4, visit2.EventId, TestHelper.TestGuid1, DateTime.Now, DateTime.Now.AddHours(1)); // To make this test interesting, there must be several factors: // A supplemental to ignore // At least one observation inside of 50m // At least one outside of 50m for each species // A site that has count of zero therefore shouldn't show up // And relative abundance cannot calculate as zero Observation_ado supplementalSite1 = Observation_ado.CreateObservation_ado(0, visit1.EventId, new Guid(TestHelper.SPECIES_1_ID), LookupConstants.ObservationTypeSupplemental); Observation_ado site1Species1Beyond = Observation_ado.CreateObservation_ado(0, survey1.EventId, new Guid(TestHelper.SPECIES_1_ID), LookupConstants.ObservationTypePointBeyond50m); Observation_ado site1Species1Less = Observation_ado.CreateObservation_ado(0, survey1.EventId, new Guid(TestHelper.SPECIES_1_ID), LookupConstants.ObservationTypePointLess50m); Observation_ado site1Species1Less2 = Observation_ado.CreateObservation_ado(0, survey1.EventId, new Guid(TestHelper.SPECIES_1_ID), LookupConstants.ObservationTypePointLess50m); Observation_ado site1Species2Beyond = Observation_ado.CreateObservation_ado(0, survey1.EventId, new Guid(TestHelper.SPECIES_2_ID), LookupConstants.ObservationTypePointBeyond50m); Observation_ado site1Species3Less = Observation_ado.CreateObservation_ado(0, survey1.EventId, new Guid(TestHelper.SPECIES_3_ID), LookupConstants.ObservationTypePointLess50m); Observation_ado site1Species3Beyond = Observation_ado.CreateObservation_ado(0, survey1.EventId, new Guid(TestHelper.SPECIES_3_ID), LookupConstants.ObservationTypePointBeyond50m); Observation_ado site2Species3Beyond = Observation_ado.CreateObservation_ado(0, survey2.EventId, new Guid(TestHelper.SPECIES_3_ID), LookupConstants.ObservationTypePointBeyond50m); Observation_ado site2Species3Less = Observation_ado.CreateObservation_ado(0, survey2.EventId, new Guid(TestHelper.SPECIES_3_ID), LookupConstants.ObservationTypePointLess50m); Observation_ado site2Species2Beyond = Observation_ado.CreateObservation_ado(0, survey2.EventId, new Guid(TestHelper.SPECIES_2_ID), LookupConstants.ObservationTypePointBeyond50m); Observation_ado site2Species2Less = Observation_ado.CreateObservation_ado(0, survey2.EventId, new Guid(TestHelper.SPECIES_2_ID), LookupConstants.ObservationTypePointLess50m); Observation_ado extraObservation = Observation_ado.CreateObservation_ado(0, surveyExtra.EventId, new Guid(TestHelper.SPECIES_1_ID), LookupConstants.ObservationTypePointBeyond50m); DbTestHelper.LoadAdoObjects((IbaUnitTestEntities iba) => { iba.AddToObservation_ado(supplementalSite1); iba.AddToObservation_ado(site1Species1Beyond); iba.AddToObservation_ado(site1Species2Beyond); iba.AddToObservation_ado(site2Species3Beyond); iba.AddToObservation_ado(site1Species1Less); iba.AddToObservation_ado(site1Species1Less2); iba.AddToObservation_ado(site2Species3Less); iba.AddToObservation_ado(site1Species3Less); iba.AddToObservation_ado(site2Species2Beyond); iba.AddToObservation_ado(site2Species2Less); iba.AddToObservation_ado(extraObservation); iba.SaveChanges(); }); DataSet resultSet = mappers.ResultsMapper.GetCommunityBreeding(2010); Assert.IsNotNull(resultSet, "Resultset is null"); Assert.AreEqual(1, resultSet.Tables.Count, "Wrong table count"); DataTable table = resultSet.Tables[0]; Assert.IsTrue(table.Columns.Contains("LocationName"), "Missing LocationName column"); Assert.IsTrue(table.Columns.Contains("Richness"), "Missing Richness column"); Assert.IsTrue(table.Columns.Contains("DiversityIndex"), "Missing DiversityIndex column"); Assert.IsTrue(table.Columns.Contains("Evenness"), "Missing Evenness column"); Assert.AreEqual(2, table.Rows.Count, "Wrong row count"); var locationQuery = from locs in table.AsEnumerable() //where locs.Field<Guid>("LocationId").Equals(siteList[0].LocationId) select new { LocationId = locs.Field <Guid>("LocationId"), LocationName = locs.Field <string>("LocationName"), Richness = locs.Field <int>("Richness"), Diversity = locs.Field <decimal>("DiversityIndex"), Evenness = locs.Field <decimal>("Evenness") }; var result = from l1 in locationQuery where l1.LocationName.Equals(siteList[0].LocationName) select l1; Assert.AreEqual(1, result.Count(), "does not contain row for location 1"); Assert.AreEqual(siteList[0].LocationId, result.First().LocationId, "wrong location ID for location 1"); Assert.AreEqual(3, result.First().Richness, "Wrong Richness for location 1"); Assert.AreEqual(0.8044m, result.First().Diversity, "Wrong DiversityIndex for location 1"); Assert.AreEqual(0.7322m, result.First().Evenness, "Wrong Evenness for location 1"); result = from l1 in locationQuery where l1.LocationName.Equals(siteList[1].LocationName) select l1; Assert.AreEqual(1, result.Count(), "does not contain row for location 2"); Assert.AreEqual(siteList[1].LocationId, result.First().LocationId, "wrong location ID for location 2"); Assert.AreEqual(2, result.First().Richness, "Wrong Richness for location 2"); Assert.AreEqual(0.5828m, result.First().Diversity, "Wrong DiversityIndex for location 2"); Assert.AreEqual(0.8409m, result.First().Evenness, "Wrong Evenness for location 2"); }