private static void TestPayerPlanPeriods(string rawData, string resultData) { var raw = GetPayerPlanPeriods(rawData); var correct = GetPayerPlanPeriods(resultData); var buider = new PremierPersonBuilder(new ChunkBuilder(new ChunkData(), typeof(PremierPersonBuilder))); var visitOccurrences = new Dictionary <long, VisitOccurrence>(); var index = 0; foreach (var payerPlanPeriod in raw) { payerPlanPeriod.VisitOccurrenceId = index; visitOccurrences.Add(index, new VisitOccurrence(payerPlanPeriod)); index++; } var result = buider.BuildPayerPlanPeriods(raw.ToArray(), visitOccurrences).OrderBy(r => r.StartDate).ToList(); Assert.AreEqual(correct.Count(), result.Count); for (var i = 0; i < result.Count; i++) { Assert.AreEqual(correct[i].StartDate, result[i].StartDate); Assert.AreEqual(correct[i].EndDate, result[i].EndDate); Assert.AreEqual(correct[i].SourceValue, result[i].SourceValue); } }
public void TestBuildVisitOccurrences1() { var builder = new PremierPersonBuilder(new ChunkBuilder(new ChunkData(), typeof(PremierPersonBuilder))); var visitOccurrences = GetVisitOccurrences1(); foreach (var visitOccurrence in visitOccurrences) { var de = new DrugExposure(visitOccurrence) { AdditionalFields = new Dictionary <string, string>() }; de.AdditionalFields.Add("serv_day", visitOccurrence.AdditionalFields["max_serv_day"]); de.VisitOccurrenceId = visitOccurrence.Id; builder.AddData(de); } var result = builder.BuildVisitOccurrences(visitOccurrences, new List <ObservationPeriod>().ToArray()).ToList(); Assert.AreEqual(9625131, result[0].Id); Assert.AreEqual(new DateTime(2011, 3, 1), result[0].StartDate); Assert.AreEqual(new DateTime(2011, 3, 1), result[0].EndDate); Assert.AreEqual(2049445909, result[1].Id); Assert.AreEqual(new DateTime(2011, 11, 30), result[1].StartDate); Assert.AreEqual(new DateTime(2012, 1, 1), result[1].EndDate); Assert.AreEqual(9652529, result[2].Id); Assert.AreEqual(new DateTime(2012, 2, 22), result[2].StartDate); Assert.AreEqual(new DateTime(2012, 3, 1), result[2].EndDate); Assert.AreEqual(57308877, result[3].Id); Assert.AreEqual(new DateTime(2012, 9, 1), result[3].StartDate); Assert.AreEqual(new DateTime(2012, 9, 1), result[3].EndDate); }
public void TestBuildPersonRace() { var buider = new PremierPersonBuilder(new ChunkBuilder(new ChunkData(), typeof(PremierPersonBuilder))); var persons = new List <Person>(); persons.Add(new Person(new Entity()) { RaceSourceValue = "1", YearOfBirth = 2001 }); persons.Add(new Person(new Entity()) { RaceSourceValue = "1", YearOfBirth = 2001 }); persons.Add(new Person(new Entity()) { RaceSourceValue = "3", YearOfBirth = 2001 }); persons.Add(new Person(new Entity()) { RaceSourceValue = "1", YearOfBirth = 2001 }); persons.Add(new Person(new Entity()) { RaceSourceValue = "2", YearOfBirth = 2001 }); persons.Add(new Person(new Entity()) { RaceSourceValue = "2", YearOfBirth = 2001 }); var result = buider.BuildPerson(persons); Assert.AreEqual("1", result.RaceSourceValue); }
private static void TestPayerPlanPeriods(string rawData, string resultData) { var raw = GetPayerPlanPeriods(rawData); var correct = GetPayerPlanPeriods(resultData); var buider = new PremierPersonBuilder(new ChunkBuilder(new ChunkData(), typeof(PremierPersonBuilder))); var visitOccurrences = new Dictionary<long, VisitOccurrence>(); var index = 0; foreach (var payerPlanPeriod in raw) { payerPlanPeriod.VisitOccurrenceId = index; visitOccurrences.Add(index, new VisitOccurrence(payerPlanPeriod)); index++; } var result = buider.BuildPayerPlanPeriods(raw.ToArray(), visitOccurrences).OrderBy(r => r.StartDate).ToList(); Assert.AreEqual(correct.Count(), result.Count); for (var i = 0; i < result.Count; i++) { Assert.AreEqual(correct[i].StartDate, result[i].StartDate); Assert.AreEqual(correct[i].EndDate, result[i].EndDate); Assert.AreEqual(correct[i].SourceValue, result[i].SourceValue); } }
public void Test() { Assert.AreEqual(15, PremierPersonBuilder.GetMinutes("OR MINOR ADDL 15 MIN")); Assert.AreEqual(60, PremierPersonBuilder.GetMinutes("OR MINOR EMERGENCY 1ST HR")); Assert.AreEqual(255, PremierPersonBuilder.GetMinutes("OR OPEN HEART 4 HR 15 MIN")); Assert.AreEqual(6 * 60, PremierPersonBuilder.GetMinutes("OR MAJOR 6 HR")); Assert.AreEqual(30, PremierPersonBuilder.GetMinutes("OR MINOR 1ST 30 MIN")); }
public void TestBuildPersonGender() { var buider = new PremierPersonBuilder(new ChunkBuilder(new ChunkData(), typeof(PremierPersonBuilder))); var persons = new List<Person>(); persons.Add(new Person(new Entity()) {GenderConceptId = 1}); persons.Add(new Person(new Entity()) {GenderConceptId = 2}); var result = buider.BuildPerson(persons); Assert.IsNull(result); }
public void TestBuildPersonYearOfBirth() { var buider = new PremierPersonBuilder(new ChunkBuilder(new ChunkData(), typeof(PremierPersonBuilder))); var persons = new List<Person> { new Person(new Entity()) {YearOfBirth = 2001}, new Person(new Entity()) {YearOfBirth = 1999}, new Person(new Entity()) {YearOfBirth = 2000} }; var result = buider.BuildPerson(persons); Assert.AreEqual(2001, result.YearOfBirth); }
public void TestBuildPersonRace() { var buider = new PremierPersonBuilder(new ChunkBuilder(new ChunkData(), typeof(PremierPersonBuilder))); var persons = new List<Person>(); persons.Add(new Person(new Entity()) {RaceSourceValue = "1", YearOfBirth = 2001}); persons.Add(new Person(new Entity()) {RaceSourceValue = "1", YearOfBirth = 2001}); persons.Add(new Person(new Entity()) {RaceSourceValue = "3", YearOfBirth = 2001}); persons.Add(new Person(new Entity()) {RaceSourceValue = "1", YearOfBirth = 2001}); persons.Add(new Person(new Entity()) {RaceSourceValue = "2", YearOfBirth = 2001}); persons.Add(new Person(new Entity()) {RaceSourceValue = "2", YearOfBirth = 2001}); var result = buider.BuildPerson(persons); Assert.AreEqual("1", result.RaceSourceValue); }
public void TestBuildPersonGender() { var buider = new PremierPersonBuilder(new ChunkBuilder(new ChunkData(), typeof(PremierPersonBuilder))); var persons = new List <Person>(); persons.Add(new Person(new Entity()) { GenderConceptId = 1 }); persons.Add(new Person(new Entity()) { GenderConceptId = 2 }); var result = buider.BuildPerson(persons); Assert.IsNull(result); }
public void TestBuildPerson() { var builder = new PremierPersonBuilder(new ChunkBuilder(new ChunkData(), typeof(PremierPersonBuilder))); var personRecords = new List <Person> { new Person { PersonId = 1, StartDate = DateTime.Parse("2000-11-01"), EndDate = DateTime.Parse("2000-11-01"), GenderSourceValue = "F", GenderConceptId = 8532, YearOfBirth = 1968 }, new Person { PersonId = 1, StartDate = DateTime.Parse("2001-01-01"), EndDate = DateTime.Parse("2001-01-01"), GenderSourceValue = "F", GenderConceptId = 8532, YearOfBirth = 1967 }, new Person { PersonId = 1, StartDate = DateTime.Parse("2003-03-01"), EndDate = DateTime.Parse("2003-03-01"), GenderSourceValue = "F", GenderConceptId = 8532, YearOfBirth = 1999 } }; var person = builder.BuildPerson(personRecords); Assert.AreEqual("F", person.GenderSourceValue); Assert.AreEqual(8532, person.GenderConceptId); Assert.AreEqual(1999, person.YearOfBirth); }
public void TestBuildPerson() { var builder = new PremierPersonBuilder(new ChunkBuilder(new ChunkData(), typeof(PremierPersonBuilder))); var personRecords = new List<Person> { new Person { PersonId = 1, StartDate = DateTime.Parse("2000-11-01"), EndDate = DateTime.Parse("2000-11-01"), GenderSourceValue = "F", GenderConceptId = 8532, YearOfBirth = 1968 }, new Person { PersonId = 1, StartDate = DateTime.Parse("2001-01-01"), EndDate = DateTime.Parse("2001-01-01"), GenderSourceValue = "F", GenderConceptId = 8532, YearOfBirth = 1967 }, new Person { PersonId = 1, StartDate = DateTime.Parse("2003-03-01"), EndDate = DateTime.Parse("2003-03-01"), GenderSourceValue = "F", GenderConceptId = 8532, YearOfBirth = 1999 } }; var person = builder.BuildPerson(personRecords); Assert.AreEqual("F", person.GenderSourceValue); Assert.AreEqual(8532, person.GenderConceptId); Assert.AreEqual(1999, person.YearOfBirth); }
public void TestBuildPersonYearOfBirth() { var buider = new PremierPersonBuilder(new ChunkBuilder(new ChunkData(), typeof(PremierPersonBuilder))); var persons = new List <Person> { new Person(new Entity()) { YearOfBirth = 2001 }, new Person(new Entity()) { YearOfBirth = 1999 }, new Person(new Entity()) { YearOfBirth = 2000 } }; var result = buider.BuildPerson(persons); Assert.AreEqual(2001, result.YearOfBirth); }
public void TestBuildVisitOccurrences() { var builder = new PremierPersonBuilder(new ChunkBuilder(new ChunkData(), typeof(PremierPersonBuilder))); var visitOccurrences = GetVisitOccurrences(); foreach (var visitOccurrence in visitOccurrences) { var de = new DrugExposure(visitOccurrence) {AdditionalFields = new Dictionary<string, string>()}; de.AdditionalFields.Add("serv_day", visitOccurrence.AdditionalFields["max_serv_day"]); de.VisitOccurrenceId = visitOccurrence.Id; builder.AddData(de); } var result = builder.BuildVisitOccurrences(visitOccurrences, new List<ObservationPeriod>().ToArray()).ToList(); Assert.AreEqual(1175536237, result[0].Id); Assert.AreEqual(new DateTime(2010, 10, 1), result[0].StartDate); Assert.AreEqual(new DateTime(2010, 10, 4), result[0].EndDate); Assert.AreEqual(1228455080, result[1].Id); Assert.AreEqual(new DateTime(2010, 10, 23), result[1].StartDate); Assert.AreEqual(new DateTime(2010, 11, 1), result[1].EndDate); Assert.AreEqual(1430830346, result[2].Id); Assert.AreEqual(new DateTime(2011, 1, 1), result[2].StartDate); Assert.AreEqual(new DateTime(2011, 1, 7), result[2].EndDate); Assert.AreEqual(1511534818, result[3].Id); Assert.AreEqual(new DateTime(2011, 2, 1), result[3].StartDate); Assert.AreEqual(new DateTime(2011, 2, 6), result[3].EndDate); Assert.AreEqual(1560724070, result[4].Id); Assert.AreEqual(new DateTime(2011, 2, 13), result[4].StartDate); Assert.AreEqual(new DateTime(2011, 4, 1), result[4].EndDate); Assert.AreEqual(1569075673, result[5].Id); Assert.AreEqual(new DateTime(2011, 5, 1), result[5].StartDate); Assert.AreEqual(new DateTime(2011, 5, 8), result[5].EndDate); Assert.AreEqual(1568584891, result[6].Id); Assert.AreEqual(new DateTime(2011, 5, 9), result[6].StartDate); Assert.AreEqual(new DateTime(2011, 5, 11), result[6].EndDate); Assert.AreEqual(1606647218, result[7].Id); Assert.AreEqual(new DateTime(2011, 7, 1), result[7].StartDate); Assert.AreEqual(new DateTime(2011, 7, 3), result[7].EndDate); Assert.AreEqual(1606676096, result[8].Id); Assert.AreEqual(new DateTime(2011, 7, 4), result[8].StartDate); Assert.AreEqual(new DateTime(2011, 7, 10), result[8].EndDate); Assert.AreEqual(1649550323, result[9].Id); Assert.AreEqual(new DateTime(2011, 8, 1), result[9].StartDate); Assert.AreEqual(new DateTime(2011, 8, 10), result[9].EndDate); Assert.AreEqual(1649545709, result[10].Id); Assert.AreEqual(new DateTime(2011, 8, 11), result[10].StartDate); Assert.AreEqual(new DateTime(2011, 8, 21), result[10].EndDate); Assert.AreEqual(1856443013, result[11].Id); Assert.AreEqual(new DateTime(2011, 10, 1), result[11].StartDate); Assert.AreEqual(new DateTime(2011, 10, 10), result[11].EndDate); }
public void TestBuildVisitOccurrences() { var builder = new PremierPersonBuilder(new ChunkBuilder(new ChunkData(), typeof(PremierPersonBuilder))); var visitOccurrences = GetVisitOccurrences(); foreach (var visitOccurrence in visitOccurrences) { var de = new DrugExposure(visitOccurrence) { AdditionalFields = new Dictionary <string, string>() }; de.AdditionalFields.Add("serv_day", visitOccurrence.AdditionalFields["max_serv_day"]); de.VisitOccurrenceId = visitOccurrence.Id; builder.AddData(de); } var result = builder.BuildVisitOccurrences(visitOccurrences, new List <ObservationPeriod>().ToArray()).ToList(); Assert.AreEqual(1175536237, result[0].Id); Assert.AreEqual(new DateTime(2010, 10, 1), result[0].StartDate); Assert.AreEqual(new DateTime(2010, 10, 4), result[0].EndDate); Assert.AreEqual(1228455080, result[1].Id); Assert.AreEqual(new DateTime(2010, 10, 23), result[1].StartDate); Assert.AreEqual(new DateTime(2010, 11, 1), result[1].EndDate); Assert.AreEqual(1430830346, result[2].Id); Assert.AreEqual(new DateTime(2011, 1, 1), result[2].StartDate); Assert.AreEqual(new DateTime(2011, 1, 7), result[2].EndDate); Assert.AreEqual(1511534818, result[3].Id); Assert.AreEqual(new DateTime(2011, 2, 1), result[3].StartDate); Assert.AreEqual(new DateTime(2011, 2, 6), result[3].EndDate); Assert.AreEqual(1560724070, result[4].Id); Assert.AreEqual(new DateTime(2011, 2, 13), result[4].StartDate); Assert.AreEqual(new DateTime(2011, 4, 1), result[4].EndDate); Assert.AreEqual(1569075673, result[5].Id); Assert.AreEqual(new DateTime(2011, 5, 1), result[5].StartDate); Assert.AreEqual(new DateTime(2011, 5, 8), result[5].EndDate); Assert.AreEqual(1568584891, result[6].Id); Assert.AreEqual(new DateTime(2011, 5, 9), result[6].StartDate); Assert.AreEqual(new DateTime(2011, 5, 11), result[6].EndDate); Assert.AreEqual(1606647218, result[7].Id); Assert.AreEqual(new DateTime(2011, 7, 1), result[7].StartDate); Assert.AreEqual(new DateTime(2011, 7, 3), result[7].EndDate); Assert.AreEqual(1606676096, result[8].Id); Assert.AreEqual(new DateTime(2011, 7, 4), result[8].StartDate); Assert.AreEqual(new DateTime(2011, 7, 10), result[8].EndDate); Assert.AreEqual(1649550323, result[9].Id); Assert.AreEqual(new DateTime(2011, 8, 1), result[9].StartDate); Assert.AreEqual(new DateTime(2011, 8, 10), result[9].EndDate); Assert.AreEqual(1649545709, result[10].Id); Assert.AreEqual(new DateTime(2011, 8, 11), result[10].StartDate); Assert.AreEqual(new DateTime(2011, 8, 21), result[10].EndDate); Assert.AreEqual(1856443013, result[11].Id); Assert.AreEqual(new DateTime(2011, 10, 1), result[11].StartDate); Assert.AreEqual(new DateTime(2011, 10, 10), result[11].EndDate); }
public void TestBuildVisitOccurrences1() { var builder = new PremierPersonBuilder(new ChunkBuilder(new ChunkData(), typeof(PremierPersonBuilder))); var visitOccurrences = GetVisitOccurrences1(); foreach (var visitOccurrence in visitOccurrences) { var de = new DrugExposure(visitOccurrence) { AdditionalFields = new Dictionary<string, string>() }; de.AdditionalFields.Add("serv_day", visitOccurrence.AdditionalFields["max_serv_day"]); de.VisitOccurrenceId = visitOccurrence.Id; builder.AddData(de); } var result = builder.BuildVisitOccurrences(visitOccurrences, new List<ObservationPeriod>().ToArray()).ToList(); Assert.AreEqual(9625131, result[0].Id); Assert.AreEqual(new DateTime(2011, 3, 1), result[0].StartDate); Assert.AreEqual(new DateTime(2011, 3, 1), result[0].EndDate); Assert.AreEqual(2049445909, result[1].Id); Assert.AreEqual(new DateTime(2011, 11, 30), result[1].StartDate); Assert.AreEqual(new DateTime(2012, 1, 1), result[1].EndDate); Assert.AreEqual(9652529, result[2].Id); Assert.AreEqual(new DateTime(2012, 2, 22), result[2].StartDate); Assert.AreEqual(new DateTime(2012, 3, 1), result[2].EndDate); Assert.AreEqual(57308877, result[3].Id); Assert.AreEqual(new DateTime(2012, 9, 1), result[3].StartDate); Assert.AreEqual(new DateTime(2012, 9, 1), result[3].EndDate); }
public void TestPremierPersonUniqueEntities() { var conditionOccurrences = new List <ConditionOccurrence>(); var drugExposures = new List <DrugExposure>(); var visitOccurrences = new Dictionary <long, VisitOccurrence>(); var builder = new PremierPersonBuilder(new ChunkBuilder(new ChunkData(), typeof(PremierPersonBuilder))); var ent = new Entity { Id = 1, ConceptId = 1, PersonId = 1, ProviderId = 1, VisitOccurrenceId = 1, StartDate = new DateTime(2013, 1, 1), EndDate = new DateTime(2013, 1, 1), TypeConceptId = 1, SourceValue = "1" }; var visitOccurrence = new VisitOccurrence(new Entity { PersonId = 1, StartDate = new DateTime(2000, 1, 1), EndDate = new DateTime(2020, 1, 1) }) { AdditionalFields = new Dictionary <string, string> { { "disc_mon_seq", "1" } }, Id = 1 }; visitOccurrences.Add(visitOccurrence.Id, visitOccurrence); conditionOccurrences.Add(new ConditionOccurrence(ent)); conditionOccurrences.Add(new ConditionOccurrence(ent)); drugExposures.Add(new DrugExposure(new Entity { PersonId = 1, ConceptId = 535714, VisitOccurrenceId = 1, TypeConceptId = 38000179, SourceValue = "90384" } )); drugExposures.Add(new DrugExposure(new Entity { PersonId = 1, ConceptId = 535714, VisitOccurrenceId = 1, TypeConceptId = 38000179, SourceValue = "99.11" } )); var coResult = builder.BuildConditionOccurrences(conditionOccurrences.ToArray(), visitOccurrences, new ObservationPeriod[] {}); var deResult = builder.BuildDrugExposures(drugExposures.ToArray(), visitOccurrences, new ObservationPeriod[] { }); Assert.AreEqual(1, coResult.Count()); Assert.AreEqual(2, deResult.Count()); }
public void TestPremierPersonUniqueEntities() { var conditionOccurrences = new List<ConditionOccurrence>(); var drugExposures = new List<DrugExposure>(); var visitOccurrences = new Dictionary<long, VisitOccurrence>(); var builder = new PremierPersonBuilder(new ChunkBuilder(new ChunkData(), typeof(PremierPersonBuilder))); var ent = new Entity { Id = 1, ConceptId = 1, PersonId = 1, ProviderId = 1, VisitOccurrenceId = 1, StartDate = new DateTime(2013, 1, 1), EndDate = new DateTime(2013, 1, 1), TypeConceptId = 1, SourceValue = "1" }; var visitOccurrence = new VisitOccurrence(new Entity { PersonId = 1, StartDate = new DateTime(2000, 1, 1), EndDate = new DateTime(2020, 1, 1) }) { AdditionalFields = new Dictionary<string, string> {{"disc_mon_seq", "1"}}, Id = 1 }; visitOccurrences.Add(visitOccurrence.Id, visitOccurrence); conditionOccurrences.Add(new ConditionOccurrence(ent)); conditionOccurrences.Add(new ConditionOccurrence(ent)); drugExposures.Add(new DrugExposure(new Entity { PersonId = 1, ConceptId = 535714, VisitOccurrenceId = 1, TypeConceptId = 38000179, SourceValue = "90384" } )); drugExposures.Add(new DrugExposure(new Entity { PersonId = 1, ConceptId = 535714, VisitOccurrenceId = 1, TypeConceptId = 38000179, SourceValue = "99.11" } )); var coResult = builder.BuildConditionOccurrences(conditionOccurrences.ToArray(), visitOccurrences, new ObservationPeriod[] {}); var deResult = builder.BuildDrugExposures(drugExposures.ToArray(), visitOccurrences, new ObservationPeriod[] { }); Assert.AreEqual(1, coResult.Count()); Assert.AreEqual(2, deResult.Count()); }