/** * If properties contain "PREF" parameters and they're being marshalled to 2.1/3.0, then it should * find the type with the lowest PREF value and add "TYPE=pref" to it. */ @Test public void prepareParameters_pref_parameter() { // TODO move this test to VCardPropertyScribeTest (except for the "label" part) VCard vcard = new VCard(); Address adr2 = new Address(); adr2.setPref(2); vcard.addAddress(adr2); Address adr1 = new Address(); adr1.setPref(1); vcard.addAddress(adr1); Address adr3 = new Address(); vcard.addAddress(adr3); // 2.1 and 3.0 converts the lowest PREF parameter to "TYPE=pref", and removes all the rest sensei .assertPrepareParams(adr1) .versions(V2_1, V3_0) .vcard(vcard) .expected("TYPE", "pref") .run(); sensei.assertPrepareParams(adr2).versions(V2_1, V3_0).vcard(vcard).run(); sensei.assertPrepareParams(adr3).versions(V2_1, V3_0).vcard(vcard).run(); // 4.0 keeps it sensei.assertPrepareParams(adr1).versions(V4_0).vcard(vcard).expected("PREF", "1").run(); sensei.assertPrepareParams(adr2).versions(V4_0).vcard(vcard).expected("PREF", "2").run(); sensei.assertPrepareParams(adr3).versions(V4_0).vcard(vcard).run(); }