public void Should_Mask_Encounter_PersonId_And_EncounterId() { var pepper = Guid.NewGuid(); var enc = new EncounterDatasetRecord { Salt = Guid.NewGuid(), PersonId = "abc123", EncounterId = "def456" }; var anon = new Anonymizer<EncounterDatasetRecord>(pepper); anon.Anonymize(enc); Assert.NotEqual("abc123", enc.PersonId); Assert.NotEqual("def456", enc.EncounterId); }
public void Should_Not_Shift_Encounter_AdmitDate_And_DischargeDate_Null() { var pepper = Guid.NewGuid(); var enc = new EncounterDatasetRecord { Salt = Guid.NewGuid() }; var anon = new Anonymizer<EncounterDatasetRecord>(pepper); anon.Anonymize(enc); Assert.Null(enc.AdmitDate); Assert.Null(enc.DischargeDate); }
public void Should_Shift_Encounter_AdmitDate_And_DischargeDate_NotNull() { var pepper = Guid.NewGuid(); var enc = new EncounterDatasetRecord { Salt = Guid.NewGuid(), AdmitDate = new DateTime(2018, 12, 13, 10, 33, 00), DischargeDate = new DateTime(2018, 12, 14, 10, 33, 00) }; var anon = new Anonymizer<EncounterDatasetRecord>(pepper); var diff = enc.DischargeDate.Value.Subtract(enc.AdmitDate.Value).Minutes; anon.Anonymize(enc); Assert.NotNull(enc.AdmitDate); Assert.NotNull(enc.DischargeDate); Assert.NotEqual(new DateTime(2018, 12, 13, 10, 33, 00), enc.AdmitDate); Assert.NotEqual(new DateTime(2018, 12, 14, 10, 33, 00), enc.DischargeDate); Assert.Equal(diff, enc.DischargeDate.Value.Subtract(enc.AdmitDate.Value).Minutes); }
EncounterDatasetRecord GetRecord(SqlDataReader reader) { var enc = new EncounterDatasetRecord { Salt = reader.GetGuid(Plan.Salt.Index), PersonId = reader.GetNullableString(Plan.PersonId?.Index), AdmitDate = reader.GetNullableDateTime(Plan.AdmitDate?.Index), AdmitSource = reader.GetNullableString(Plan.AdmitSource?.Index), Class = reader.GetNullableString(Plan.Class?.Index), DischargeDate = reader.GetNullableDateTime(Plan.DischargeDate?.Index), DischargeDisposition = reader.GetNullableString(Plan.DischargeDisposition?.Index), EncounterId = reader.GetNullableString(Plan.EncounterId?.Index), Location = reader.GetNullableString(Plan.Location?.Index), Status = reader.GetNullableString(Plan.Status?.Index) }; return(enc); }