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_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_AssignsVatId()
        {
            var citizen = CitizenBuilder.NewWoman().WithDate(SystemDateTime.Now()).Build();
            registry.Register(citizen);

            Assert.IsFalse(String.IsNullOrWhiteSpace(citizen.VatId));
        }
        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_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);
        }
Beispiel #6
0
    public ICharacter CreateCharacter <T>(int characterID, CharacterRefreshPO characterRefreshPO) where T : ICharacter, new()
    {
        ICharacter character = new T();

        ICharacterBuilder builder = new CitizenBuilder(character, characterID, characterRefreshPO);

        return(CharacterBuilderDirector.Construct(builder));
    }
 public void Register_ForAlreadyRegisteredVatId_ThrowsInvalidOperationException()
 {
     string vatId = TestVatIdForMan;
     var citizen1 = CitizenBuilder.NewMan().WithVatId(vatId).Build();
     var citizen2 = CitizenBuilder.NewMan().WithVatId(vatId).Build();
     registry.Register(citizen1);
     registry.Register(citizen2);
 }
 public void Register_MoreThan5kMenWithSameBirthDate_ExpectedInvalidOperationException()
 {
     for (int i = 0; i < 5001; i++)
     {
         var m = CitizenBuilder.NewMan().WithDate(TestBirthDate).Build();
         registry.Register(m);
     }
 }
        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 Indexer_WhenCitizenChanges_RegistryHasNoChanges()
        {
            var citizen = CitizenBuilder.NewMan().WithDate(SystemDateTime.Now()).Build();
            registry.Register(citizen);

            string id = citizen.VatId;
            citizen.VatId = "0123456789";
            ICitizen foundCitizen = registry[id];

            Assert.AreNotEqual(citizen.VatId, foundCitizen.VatId);
        }
        public void Indexer_WithRegisteredVatId_ReturnsCitizenFoundByVatId()
        {
            var citizen = CitizenBuilder.NewMan().WithDate(SystemDateTime.Now()).Build();
            registry.Register(citizen);

            ICitizen foundCitizen = registry[citizen.VatId];

            Assert.AreEqual(citizen.VatId, foundCitizen.VatId);
            Assert.AreEqual(citizen.FirstName, foundCitizen.FirstName);
            Assert.AreEqual(citizen.LastName, foundCitizen.LastName);
            Assert.AreEqual(citizen.BirthDate, foundCitizen.BirthDate);
        }
Beispiel #13
0
        public Citizen(CitizenBuilder builder)
        {
            this.id        = builder.getId();
            this.NAME      = builder.getName();
            this.MASSAGES  = builder.getMassges();
            this.UNIQUE_ID = UniqueIdCreator.creatUniqueId();

            var modelPrefab = (GameObject)Resources.Load("Models/" + builder.getModelId());

            container = MonoBehaviour.Instantiate(modelPrefab).GetComponent <Container>();
            container.setCharacter(this);
        }
        public void Stats_WithOneManInRegistry_ReturnsMessageOneManAndZeroWomenWithLastRegistrationTimeInfo()
        {
            var bd = TestTodayDate.AddYears(-1);
            var citizen = CitizenBuilder.NewMan().WithDate(bd).Build();

            var yesterday = TestTodayDate.AddDays(-1);
            SystemDateTime.Now = () => yesterday;
            registry.Register(citizen);
            SystemDateTime.Now = () => TestTodayDate;

            var msg = registry.Stats();
            Assert.AreEqual("1 man and 0 women. Last registration was yesterday", 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);
        }