public void ToDelimitedString_WithAllProperties_ReturnsCorrectlySequencedFields() { DateTime today = DateTime.Today; IType hl7Type = new VisitingHours { StartDayRange = "1", EndDayRange = "2", StartHourRange = new DateTime(today.Year, today.Month, today.Day, 3, 33, 0), EndHourRange = new DateTime(today.Year, today.Month, today.Day, 4, 44, 4) }; string expected = "1^2^033300^044404"; string actual = hl7Type.ToDelimitedString(); Assert.Equal(expected, actual); }
public void FromDelimitedString_WithAllProperties_ReturnsCorrectlyInitializedFields() { DateTime today = DateTime.Today; IType expected = new VisitingHours { StartDayRange = "1", EndDayRange = "2", StartHourRange = new DateTime(today.Year, today.Month, today.Day, 3, 33, 0), EndHourRange = new DateTime(today.Year, today.Month, today.Day, 4, 44, 4) }; IType actual = new VisitingHours(); actual.FromDelimitedString("1^2^033300^044404"); expected.Should().BeEquivalentTo(actual); }
/// <inheritdoc/> public string ToDelimitedString() { CultureInfo culture = CultureInfo.CurrentCulture; return(string.Format( culture, StringHelper.StringFormatSequence(0, 12, Configuration.FieldSeparator), Id, PrimaryKeyValueLdp?.ToDelimitedString(), LocationDepartment, LocationService != null ? string.Join(Configuration.FieldRepeatSeparator, LocationService) : null, SpecialtyType != null ? string.Join(Configuration.FieldRepeatSeparator, SpecialtyType.Select(x => x.ToDelimitedString())) : null, ValidPatientClasses != null ? string.Join(Configuration.FieldRepeatSeparator, ValidPatientClasses) : null, ActiveInactiveFlag, ActivationDateLdp.HasValue ? ActivationDateLdp.Value.ToString(Consts.DateTimeFormatPrecisionSecond, culture) : null, InactivationDateLdp.HasValue ? InactivationDateLdp.Value.ToString(Consts.DateTimeFormatPrecisionSecond, culture) : null, InactivatedReason, VisitingHours != null ? string.Join(Configuration.FieldRepeatSeparator, VisitingHours.Select(x => x.ToDelimitedString())) : null, ContactPhone?.ToDelimitedString() ).TrimEnd(Configuration.FieldSeparator.ToCharArray())); }