public void Register_ForCitizenWithEmptyVatId_AssignedVatIdIsTenCharsLength() { var citizen = CitizenBuilder.NewWoman().WithDate(new DateTime(1909, 7, 5)).Build(); registry.Register(citizen); Assert.AreEqual(10, citizen.VatId.Length); }
public void Register_ForCitizenWithEmptyVatId_AssignsVatIdBasedOnBirthDate() { var citizen = CitizenBuilder.NewWoman().WithDate(new DateTime(1991, 8, 24)).Build(); registry.Register(citizen); StringAssert.StartsWith(citizen.VatId, "33473"); }
public void Register_ForCitizenWithEmptyVatId_AssignedVatIdContainsDigitsOnly() { var citizen = CitizenBuilder.NewWoman().WithDate(SystemDateTime.Now()).Build(); registry.Register(citizen); StringAssert.Matches(citizen.VatId, new Regex("^[0-9]+$")); }
public void Register_ForCitizenWithEmptyVatId_AssignsVatId() { var citizen = CitizenBuilder.NewWoman().WithDate(SystemDateTime.Now()).Build(); registry.Register(citizen); Assert.IsFalse(String.IsNullOrWhiteSpace(citizen.VatId)); }
public void Register_ForWomanWithEmptyVatId_AssignsVatIdWithEvenCounter() { var citizen = CitizenBuilder.NewWoman().WithDate(TestBirthDate).Build(); registry.Register(citizen); int counter = Int32.Parse(citizen.VatId.Substring(5, 4)); Assert.AreEqual(0, counter & 1); }
public void Register_ForTwoWomenWithSameBirthDate_AssignsDifferentVatIds() { var w1 = CitizenBuilder.NewWoman().WithDate(TestBirthDate).Build(); var w2 = CitizenBuilder.NewWoman().WithDate(TestBirthDate).Build(); registry.Register(w1); registry.Register(w2); Assert.AreNotEqual(w1.VatId, w2.VatId); }
public void Stats_WithOneWomanInRegistry_ReturnsMessageZeroMenAndOneWomanWithLastRegistrationTimeInfo() { var bd = TestTodayDate.AddYears(-1); var citizen = CitizenBuilder.NewWoman().WithDate(bd).Build(); registry.Register(citizen); var msg = registry.Stats(); Assert.AreEqual("0 men and 1 woman. Last registration was now", msg); }
public void Stats_WithOneManAndOneWomanInRegistry_ReturnsMessageOneManAndOneWomenWithLastRegistrationTimeInfo() { var bd = TestTodayDate.AddYears(-1); var citizen = CitizenBuilder.NewMan().WithDate(bd).Build(); var twoDaysAgo = TestTodayDate.AddDays(-2); SystemDateTime.Now = () => twoDaysAgo; registry.Register(citizen); citizen = CitizenBuilder.NewWoman().WithDate(bd).Build(); SystemDateTime.Now = () => twoDaysAgo; registry.Register(citizen); SystemDateTime.Now = () => TestTodayDate; var msg = registry.Stats(); Assert.AreEqual("1 man and 1 woman. Last registration was 2 days ago", msg); }