public void testParseGraduationDate() { String sXML = "<StudentPersonal RefId='12345678901234567890'>" + " <GradYear Type='Actual'>2005</GradYear>" + "</StudentPersonal>"; StudentPersonal sp = (StudentPersonal) parseSIF15r1XML( sXML ); sp = (StudentPersonal) AdkObjectParseHelper.WriteParseAndReturn( sp, SifVersion.SIF11 ); Assertion.AssertNotNull( sp ); PartialDateType gd = sp.GraduationDate; Assertion.AssertNotNull( "Actual Grad Year", gd ); Assertion.AssertEquals( "Actual Grad Year", 2005, (int) gd.Year ); Adk.SifVersion = SifVersion.SIF15r1; sp = new StudentPersonal(); sp.SetElementOrAttribute( "GradYear[@Type='Actual']", "2054" ); gd = sp.GraduationDate; Assertion.AssertNotNull( "Actual Grad Year", gd ); Assertion.AssertNotNull( "GraduationDate/getYear()", gd.Year ); Assertion.AssertEquals( "Actual Grad Year", 2054, gd.Year.Value ); Element gradValue = sp.GetElementOrAttribute( "GradYear[@Type='Actual']" ); Assertion.AssertNotNull( "Actual Grad Year", gradValue ); PartialDateType pdt = (PartialDateType) gradValue; Assertion.AssertEquals( "Actual Grad Year", 2054, pdt.Year.Value ); }
public void testStudentPersonalNullHomeroom() { IDictionary values = new Hashtable(); values.Add( "PERMNUM", "9798" ); values.Add( "SOCSECNUM", "845457898" ); values.Add( "SCHOOLNUM", "999" ); values.Add( "SCHOOLNUM2", "999" ); values.Add( "GRADE", "09" ); values.Add( "HOMEROOM", null ); values.Add( "LASTNAME", "Doe" ); values.Add( "FIRSTNAME", "Jane" ); values.Add( "MIDDLENAME", null ); values.Add( "NICKNAME", null ); values.Add( "MAILADDR", "5845 Test Blvd" ); values.Add( "CITY", "slc" ); values.Add( "STATE", "Utah" ); values.Add( "COUNTRY", "" ); values.Add( "ZIPCODE", "84093" ); values.Add( "RESADDR", null ); values.Add( "RESCITY", null ); values.Add( "RESSTATE", null ); values.Add( "RESCOUNTRY", null ); values.Add( "RESZIPCODE", null ); values.Add( "BIRTHDATE", "20051209" ); values.Add( "GENDER", "F" ); values.Add( "ETHNICCODE", "W" ); values.Add( "ENGPROF", "" ); values.Add( "PRIMARYLNG", "" ); values.Add( "TELEPHONE", null ); StringMapAdaptor sma = new StringMapAdaptor( values ); StudentPersonal sp = new StudentPersonal(); Mappings m = fCfg.Mappings.GetMappings( "Default" ).Select( null, null, null ); m.MapOutbound( sma, sp, SifVersion.SIF15r1 ); Console.WriteLine( sp.ToXml() ); Element e = sp .GetElementOrAttribute( "OtherId[@Type='ZZ' and starts-with(., 'HOMEROOM') ]" ); Assertion.AssertNull( "HOMEROOM should not have been mapped", e ); }
public void testStudentPersonal2Addresses20r1() { IDictionary values = new Hashtable(); values.Add( "PERMNUM", "9798" ); values.Add( "LASTNAME", "Doe" ); values.Add( "FIRSTNAME", "Jane" ); values.Add( "MIDDLENAME", null ); values.Add( "MAILADDR", "PO Box 80077" ); values.Add( "CITY", "Salt Lake City" ); values.Add( "STATE", "Utah" ); values.Add( "COUNTRY", "US" ); values.Add( "ZIPCODE", "84093" ); values.Add( "RESADDR", "528 Big CottonWood Rd" ); values.Add( "RESCITY", "Sandy" ); values.Add( "RESSTATE", "UT" ); values.Add( "RESCOUNTRY", "US" ); values.Add( "RESZIPCODE", "84095" ); StringMapAdaptor sma = new StringMapAdaptor( values ); StudentPersonal sp = new StudentPersonal(); Mappings m = fCfg.Mappings.GetMappings( "Default" ).Select( null, null, null ); m.MapOutbound( sma, sp, SifVersion.SIF20r1 ); Console.WriteLine( sp.ToXml() ); Element e = sp .GetElementOrAttribute( "AddressList/Address[@Type='0123']/Street/Line1" ); Assertion.AssertNotNull( "Mailing Address was not mapped ", e ); Assertion.AssertEquals( "Mailing Address", "PO Box 80077", e.TextValue ); e = sp .GetElementOrAttribute( "AddressList/Address[@Type='0765']/Street/Line1" ); Assertion.AssertNotNull( "Residential Address was not mapped ", e ); Assertion.AssertEquals( "Mailing Address", "528 Big CottonWood Rd", e .TextValue ); StudentAddressList[] list = sp.AddressLists; SifElementList children = sp.GetChildList( CommonDTD.ADDRESSLIST ); Assertion.AssertEquals( "Should have one StudentAddress elements", 1, children.Count ); Assertion.AssertEquals( "Should have two address elements", 2, children[0].ChildCount ); }
public void testParseOnTimeGradYear() { String sXML = "<StudentPersonal RefId='12345678901234567890'>" + " <GradYear Type='Original'>1971</GradYear>" + "</StudentPersonal>"; StudentPersonal sp = (StudentPersonal) parseSIF15r1XML( sXML ); sp = (StudentPersonal) AdkObjectParseHelper.WriteParseAndReturn( sp, SifVersion.SIF11 ); Assertion.AssertNotNull( sp ); Assertion.AssertNotNull( "On Time Grad Year", sp.OnTimeGraduationYear ); Assertion.AssertEquals( "On Time Grad Year", 1971, (int) sp .OnTimeGraduationYear ); Adk.SifVersion = SifVersion.SIF15r1; sp = new StudentPersonal(); sp.SetElementOrAttribute( "GradYear[@Type='Original']", "8877" ); Assertion.AssertNotNull( "On Time Grad Year", sp.OnTimeGraduationYear ); Assertion.AssertEquals( "On Time Grad Year", 8877, (int) sp .OnTimeGraduationYear ); Element gradValue = sp.GetElementOrAttribute( "GradYear[@Type='Original']" ); Assertion.AssertNotNull( "On Time Grad Year", gradValue ); int gradYear = (int) gradValue.SifValue.RawValue; Assertion.AssertNotNull( "On Time Grad Year", gradYear ); Assertion.AssertEquals( "On Time Grad Year", 8877, gradYear ); }
public void testParseProjectedGradYear() { String sXML = "<StudentPersonal RefId='12345678901234567890'>" + " <GradYear Type='Projected'>2012</GradYear>" + "</StudentPersonal>"; StudentPersonal sp = (StudentPersonal) parseSIF15r1XML( sXML ); sp = (StudentPersonal) AdkObjectParseHelper.WriteParseAndReturn( sp, SifVersion.SIF11 ); Assertion.AssertNotNull( sp ); Assertion.AssertNotNull( "Projected Grad Year", sp.ProjectedGraduationYear ); Assertion.AssertEquals( "Projected Grad Year", 2012, (int) sp .ProjectedGraduationYear ); Adk.SifVersion = SifVersion.SIF15r1; sp = new StudentPersonal(); sp.SetElementOrAttribute( "GradYear[@Type='Projected']", "2089" ); Assertion.AssertNotNull( "Projected Grad Year", sp.ProjectedGraduationYear ); Assertion.AssertEquals( "Projected Grad Year", 2089, (int) sp .ProjectedGraduationYear ); Element gradValue = sp.GetElementOrAttribute( "GradYear[@Type='Projected']" ); Assertion.AssertNotNull( "Projected Grad Year", gradValue ); int gradYear = (int) gradValue.SifValue.RawValue; Assertion.AssertNotNull( "Projected Grad Year", gradYear ); Assertion.AssertEquals( "Projected Grad Year", 2089, gradYear ); }
public void testCountryCodeStudentPersonal() { Adk.SifVersion = SifVersion.SIF15r1; String customMappings = "<agent id='Repro' sifVersion='2.0'>" + " <mappings id='Default'>" + " <object object='StudentPersonal'>" + " <field name='COUNTRY' sifVersion='+2.0'>AddressList/Address[@Type='0769']/Country=US</field>" + " <field name='COUNTRY' sifVersion='-1.5r1'>StudentAddress[@PickupOrDropoff='NA',@DayOfWeek='NA']/Address[@Type='M']/Country[@Code='UK']</field>" + " <field name='RESCOUNTRY' sifVersion='+2.0'>AddressList/Address[@Type='0765']/Country=US</field>" + " <field name='RESCOUNTRY' sifVersion='-1.5r1'>StudentAddress[@PickupOrDropoff='NA',@DayOfWeek='NA']/Address[@Type='P']/Country[@Code='US']</field>" + "</object></mappings></agent>"; Adk.SifVersion = SifVersion.SIF15r1; IDictionary map = new Hashtable(); map.Add( "RESCOUNTRY", "" ); map.Add( "COUNTRY", "" ); StringMapAdaptor sma = new StringMapAdaptor( map ); StudentPersonal sp = new StudentPersonal(); doOutboundMapping( sma, sp, customMappings, null ); StudentAddressList sal = sp.AddressList; Assertion.AssertNotNull( "StudentAddressList is null", sal ); Assertion.AssertEquals( "StudentAddressList does not contain two address list types", 2, sal.ChildCount ); assertCountry( (Address) sp .GetElementOrAttribute( "StudentAddress/Address[@Type='P']" ), "US" ); assertCountry( (Address) sp .GetElementOrAttribute( "StudentAddress/Address[@Type='M']" ), "UK" ); }