コード例 #1
0
ファイル: P_0307610078.cs プロジェクト: magenta-aps/cprbroker
        public void ToRegisterOplysningType_Normal_OneOrMoreIntervals()
        {
            var person = GetPerson();
            var registerOplysningIntervals = person.ToRegisterOplysningIntervalArray();
            var registerOplysning          = registerOplysningIntervals
                                             .Select(
                interval =>
                interval.ToRegisterOplysningType()
                )
                                             .ToArray();

            Assert.GreaterOrEqual(registerOplysning.Length, 0);
            foreach (RegisterOplysningType interval in registerOplysning)
            {
                /*
                 * We test if the address and end time attributes are set in any
                 * of the intervals.
                 */

                /*
                 * We have to cast the item object as the type CprBorgerType as
                 * the type is not declared in the class.
                 */
                CprBorgerType item = (CprBorgerType)interval.Item;
                Assert.IsNotNull(item);
                //Assert.IsNotNull(item.AdresseNoteTekst);        // <- is null
                //Assert.IsNotNull(item.FolkeregisterAdresse);    // <- is null
                Console.WriteLine(item.FolkeregisterAdresse);   // nothing is printed
                Console.WriteLine(item.AdresseNoteTekst);       // prints out the object name
                VirkningType virkning = interval.Virkning;
                Assert.IsNotNull(virkning);
                Assert.IsNotNull(virkning.TilTidspunkt);
            }
        }
コード例 #2
0
ファイル: Converters.cs プロジェクト: OS2CPRbroker/CPReader
        public List <SoegObjektType> ToSoegObjektTypes(String name, String address)
        {
            List <NavnStrukturType> navnStrukturTypes = new List <NavnStrukturType>();
            List <SoegObjektType>   soegObjekts       = new List <SoegObjektType>();

            if (name != "" && name.Split(' ').Length == 1)
            {
                for (int i = 0; i < 3; i++)
                {
                    navnStrukturTypes.Add(ToNavnStrukturType(name, i));
                }
            }
            else
            {
                navnStrukturTypes.Add(ToNavnStrukturType(name));
            }

            foreach (NavnStrukturType navnStrukturType in navnStrukturTypes)
            {
                AdresseType addressObject = ToAddressType(address);
                if (navnStrukturType == null && addressObject == null)
                {
                    return(null);
                }

                SoegAttributListeType soegAttributListeType = new SoegAttributListeType();

                // Now fill Egenskab & registerOplysning
                SoegEgenskabType soegEgenskabType = new SoegEgenskabType();
                soegEgenskabType.NavnStruktur      = navnStrukturType;
                soegAttributListeType.SoegEgenskab = new SoegEgenskabType[] { soegEgenskabType };

                if (addressObject != null)
                {
                    RegisterOplysningType registerOplysningType = new RegisterOplysningType();

                    CprBorgerType cprBorgerType = new CprBorgerType();
                    cprBorgerType.FolkeregisterAdresse = addressObject;
                    registerOplysningType.Item         = cprBorgerType;

                    soegAttributListeType.SoegRegisterOplysning = new RegisterOplysningType[] { registerOplysningType };
                }

                SoegObjektType soegObjekt = new SoegObjektType();
                soegObjekt.SoegAttributListe = soegAttributListeType;

                soegObjekts.Add(soegObjekt);
            }

            return(soegObjekts);
        }
コード例 #3
0
ファイル: P_0108610069.cs プロジェクト: magenta-aps/cprbroker
        public void ToRegisterOplysningType_Normal_OneOrMoreIntervals()
        {
            var person = GetPerson();
            var registerOplysningIntervals = person.ToRegisterOplysningIntervalArray();

            Assert.IsNotNull(registerOplysningIntervals);
            Assert.GreaterOrEqual(registerOplysningIntervals.Length, 0);    // <- passes
            Console.WriteLine(registerOplysningIntervals.Length);           // prints 4
            // Tests to investigate objects in the array.
            foreach (RegisterOplysningInterval regInterval in registerOplysningIntervals)
            {
                //Console.WriteLine(regInterval.ToCprBorgerType());         // crashes with NullReferenceException
                Console.WriteLine(regInterval.ToVirkningType());
                Assert.IsNotNull(regInterval);
            }
            var registerOplysning = registerOplysningIntervals
                                    .Select(
                interval =>
                interval.ToRegisterOplysningType()                          // crashes with NullReferenceException
                )
                                    .ToArray();

            Assert.GreaterOrEqual(registerOplysning.Length, 0);
            foreach (RegisterOplysningType interval in registerOplysning)
            {
                /*
                 * We test if the address and end time attributes are set in any
                 * of the intervals.
                 */

                /*
                 * We have to cast the item object as the type CprBorgerType as
                 * the type is not declared in the class.
                 */
                CprBorgerType item = (CprBorgerType)interval.Item;
                Assert.IsNotNull(item);
                // This is always null
                //Assert.IsNotNull(item.AdresseNoteTekst);
                // Address is not necessary to be not null
                //Assert.IsNotNull(item.FolkeregisterAdresse);
                VirkningType virkning = interval.Virkning;
                Assert.IsNotNull(virkning);
                Assert.IsNotNull(virkning.TilTidspunkt);
            }
        }
コード例 #4
0
 public static CprData FromXmlType(CprBorgerType partCprData)
 {
     if (partCprData != null)
     {
         return(new CprData()
         {
             AddressNote = partCprData.AdresseNoteTekst,
             ChurchMember = partCprData.FolkekirkeMedlemIndikator,
             Address = Address.FromXmlType(partCprData.FolkeregisterAdresse),
             ResearchProtection = partCprData.ForskerBeskyttelseIndikator,
             NameAndAddressProtectionIndicator = partCprData.NavneAdresseBeskyttelseIndikator,
             CprNumber = partCprData.PersonCivilRegistrationIdentifier,
             CprNumberValidity = partCprData.PersonNummerGyldighedStatusIndikator,
             NationalityCountryRef = CountryRef.FromXmlType(partCprData.PersonNationalityCode),
             TelephoneNumberProtection = partCprData.TelefonNummerBeskyttelseIndikator,
         });
     }
     return(null);
 }
コード例 #5
0
ファイル: Converters.cs プロジェクト: OS2CPRbroker/CPReader
        public SoegObjektType AddressToSoegObjekt(IAddress address)
        {
            if (address == null)
            {
                return(null);
            }

            SoegAttributListeType soegAttributListeType = new SoegAttributListeType();

            // Now fill Egenskab & registerOplysning
            SoegEgenskabType soegEgenskabType = new SoegEgenskabType();

            soegEgenskabType.NavnStruktur      = null;
            soegAttributListeType.SoegEgenskab = new SoegEgenskabType[] { soegEgenskabType };

            if (address != null)
            {
                RegisterOplysningType registerOplysningType = new RegisterOplysningType();

                CprBorgerType cprBorgerType = new CprBorgerType();
                AdresseType   addressObject = getAdresseType(address);
                if (addressObject == null)
                {
                    return(null);
                }

                cprBorgerType.FolkeregisterAdresse = addressObject;
                registerOplysningType.Item         = cprBorgerType;

                soegAttributListeType.SoegRegisterOplysning = new RegisterOplysningType[] { registerOplysningType };
            }

            SoegObjektType soegObjekt = new SoegObjektType();

            soegObjekt.SoegAttributListe = soegAttributListeType;
            return(soegObjekt);
        }