示例#1
0
        private CitizenReadyAddress CreateCitizen()
        {
            var ret = new CitizenReadyAddress()
            {
                AddressingName = "Beemen Beshara",
                CareOfName     = "Beemen Beshara",
                CityName       = "CPH City",
                PostCode       = 1234,
                PostDistrict   = "CPH District",
                Door           = "1",
                Floor          = "7",
                PNR            = 120420070111m,
                HouseNumber    = "sada",
                RoadName       = "Studistraede Studistraede Studistraede Studistraede",
                RoadCode       = 112
            };

            ret.Roads.Add(new Road()
            {
                MunicipalityCode   = 561,
                RoadCode           = ret.RoadCode,
                RoadName           = ret.RoadName,
                RoadAddressingName = ret.RoadName.Substring(0, 20),
            });
            return(ret);
        }
示例#2
0
        public CitizenAddressTests()
        {
            var citizen = CreateCitizen();

            ValidAddressTestValues = new CitizenReadyAddress[] { citizen };
            AllAddressTestValues   = new CitizenReadyAddress[] { citizen };
        }
示例#3
0
        public void ToAddressPostalType_NullRoad_ThrowsException()
        {
            var citizen = new CitizenReadyAddress()
            {
            };

            citizen.ToAddressPostalType();
        }
示例#4
0
        public void ToAddressPostalType_Valid_CorrectPostCodeIdentifier(CitizenReadyAddress citizen)
        {
            var postCode = Utilities.RandomShort();

            citizen.PostCode = postCode;
            var result = citizen.ToAddressPostalType();

            Assert.AreEqual(postCode.ToString(), result.PostCodeIdentifier);
        }
示例#5
0
        public void ToSpecielVejkodeIndikator_InvalidCode_ThrowsException(
            [Values(-20, -1, 0, 10000, 10022)] short roadCode)
        {
            var citizen = new CitizenReadyAddress()
            {
                RoadCode = roadCode
            };

            citizen.ToSpecielVejkodeIndikator();
        }
示例#6
0
        public void GetActiveRoad_OneRoad_ReturnsCorrect()
        {
            var citizen = new CitizenReadyAddress();
            var road    = new Road();

            citizen.Roads.Add(road);
            var result = citizen.GetActiveRoad();

            Assert.AreEqual(road, result);
        }
示例#7
0
        public void ToSpecielVejkodeIndikator_LowCode_ReturnsFalse(
            [Values(1, 4, 5, 34, 500, 700, 899)] short roadCode)
        {
            var citizen = new CitizenReadyAddress()
            {
                RoadCode = roadCode
            };
            var result = citizen.ToSpecielVejkodeIndikator();

            Assert.False(result);
        }
示例#8
0
        public void ToSpecielVejkodeIndikator_HighCode_ReturnsTrue(
            [Values(9900, 9950, 9999)] short roadCode)
        {
            var citizen = new CitizenReadyAddress()
            {
                RoadCode = roadCode
            };
            var result = citizen.ToSpecielVejkodeIndikator();

            Assert.True(result);
        }
示例#9
0
        public void ToDanskAdresseType_Empty_UkendtAdresseIndikatorFalse()
        {
            var citizen = new CitizenReadyAddress()
            {
                RoadCode = 22
            };

            citizen.Roads.Add(new Road()
            {
                RoadCode = 22
            });
            var result = citizen.ToDanskAdresseType();

            Assert.False(result.UkendtAdresseIndikator);
        }
示例#10
0
        public void ToDanskAdresseType_ValidNormalCode_SpecielVejkodeIndikatorTrue(
            [ValueSource("ValidAddressTestValues")] CitizenReadyAddress citizen,
            [Values(9900, 9950)] short roadCode)
        {
            var val = citizen.RoadCode;

            citizen.RoadCode = roadCode;
            try
            {
                var result = citizen.ToDanskAdresseType();
                Assert.True(result.SpecielVejkodeIndikator);
            }
            finally
            {
                citizen.RoadCode = val;
            }
        }
示例#11
0
        public void GetActiveRoad_MultipleRoad_ReturnsCorrect(
            [Values(2, 3, 5, 20, 78)] int count)
        {
            int maxOffset = -10000;
            var today     = DateTime.Today;

            var citizen = new CitizenReadyAddress();

            for (int i = 0; i < count; i++)
            {
                var yearOffset = Utilities.Random.Next(-1000, 1000);
                var endDate    = today.AddYears(yearOffset);
                var road       = new Road()
                {
                    RoadEndDate = endDate
                };
                citizen.Roads.Add(road);
                maxOffset = Math.Max(yearOffset, maxOffset);
            }
            var result = citizen.GetActiveRoad();

            Assert.AreEqual(today.AddYears(maxOffset), result.RoadEndDate);
        }
示例#12
0
        public void ToAddressCompleteType_Valid_AddressPostalNotNull(CitizenReadyAddress citizen)
        {
            var result = citizen.ToAddressCompleteType();

            Assert.IsNotNull(result.AddressPostal);
        }
示例#13
0
        public void GetActiveRoad_NoRoads_ThrowsException()
        {
            var citizen = new CitizenReadyAddress();

            citizen.GetActiveRoad();
        }
示例#14
0
        public void ToDanskAdresseType_Valid_AddressCompleteNotNull(CitizenReadyAddress citizen)
        {
            var result = citizen.ToDanskAdresseType();

            Assert.IsNotNull(result.AddressComplete);
        }
示例#15
0
        public void ToAddressPostalType_Valid_PostOfficeBoxIdentifierEmpty(CitizenReadyAddress citizen)
        {
            var result = citizen.ToAddressPostalType();

            Assert.IsNullOrEmpty(result.PostOfficeBoxIdentifier);
        }
示例#16
0
        public void ToAddressPostalType_Valid_SuiteIdentifierNotNull(CitizenReadyAddress citizen)
        {
            var result = citizen.ToAddressPostalType();

            Assert.IsNotNullOrEmpty(result.SuiteIdentifier);
        }
示例#17
0
        public void ToAddressPostalType_Valid_MailDeliverySublocationIdentifierEmpty(CitizenReadyAddress citizen)
        {
            var result = citizen.ToAddressPostalType();

            Assert.IsNullOrEmpty(result.MailDeliverySublocationIdentifier);
        }
示例#18
0
        public void ToDanskAdresseType_Valid_AddressPointNull(CitizenReadyAddress citizen)
        {
            var result = citizen.ToDanskAdresseType();

            Assert.IsNull(result.AddressPoint);
        }
示例#19
0
        public void ToAddressPostalType_Valid_NotNull(CitizenReadyAddress citizen)
        {
            var result = citizen.ToAddressPostalType();

            Assert.IsNotNull(result);
        }
示例#20
0
        public void ToAddressPostalType_Valid_CountryIdentificationCodeNotNull(CitizenReadyAddress citizen)
        {
            var result = citizen.ToAddressPostalType();

            Assert.IsNotNull(result.CountryIdentificationCode);
        }
示例#21
0
        public void ToDanskAdresseType_Valid_NoteTekstNull(CitizenReadyAddress citizen)
        {
            var result = citizen.ToDanskAdresseType();

            Assert.IsNullOrEmpty(result.NoteTekst);
        }
示例#22
0
        public void ToAddressAccessType_Valid_StreetCodeNotNull(CitizenReadyAddress citizen)
        {
            var result = citizen.ToAddressAccessType();

            Assert.IsNotNullOrEmpty(result.StreetCode);
        }
示例#23
0
        public void ToAdresseType_Alll_ItemIsDanskAdresseType(CitizenReadyAddress citizen)
        {
            var result = citizen.ToAdresseType();

            Assert.IsInstanceOf <CprBroker.Schemas.Part.DanskAdresseType>(result.Item);
        }
示例#24
0
        public void ToDanskAdresseType_Valid_UkendtAdresseIndikatorFalse(CitizenReadyAddress citizen)
        {
            var result = citizen.ToDanskAdresseType();

            Assert.False(result.UkendtAdresseIndikator);
        }
示例#25
0
        public void ToDanskAdresseType_Valid_ValgkredsDistriktTekstNull(CitizenReadyAddress citizen)
        {
            var result = citizen.ToDanskAdresseType();

            Assert.IsNullOrEmpty(result.ValgkredsDistriktTekst);
        }
示例#26
0
        public void ToAddressAccessType_Valid_StreetBuildingIdentifierNotNull(CitizenReadyAddress citizen)
        {
            var result = citizen.ToAddressAccessType();

            Assert.IsNotNullOrEmpty(result.StreetBuildingIdentifier);
        }
示例#27
0
        public void ToAdresseType_All_ItemNotNull(CitizenReadyAddress citizen)
        {
            var result = citizen.ToAdresseType();

            Assert.NotNull(result.Item);
        }