#145 extended build-in test for calendar<>date and calendar<>string conversion. No need to do anything as existing build-in methods do the trick

This commit is contained in:
Andreas Gudian 2014-07-29 10:11:20 +02:00
parent 34a5765cbb
commit 378e23a964
4 changed files with 86 additions and 7 deletions

View File

@ -81,6 +81,10 @@ public class BuiltInTest {
source.setProp6NoFormat( createXmlCal( 1999, 3, 2, 60 ) ); source.setProp6NoFormat( createXmlCal( 1999, 3, 2, 60 ) );
source.setProp7( createCalendar( "02.03.1999" ) ); source.setProp7( createCalendar( "02.03.1999" ) );
source.setProp8( createXmlCal( 1999, 3, 2, 60 ) ); source.setProp8( createXmlCal( 1999, 3, 2, 60 ) );
source.setProp9( createCalendar( "02.03.1999" ) );
source.setProp10( new SimpleDateFormat( "dd.MM.yyyy" ).parse( "02.03.1999" ) );
source.setProp11( "02.03.1999" );
source.setProp12( createCalendar( "02.03.1999" ) );
Target target = SourceTargetMapper.INSTANCE.sourceToTarget( source ); Target target = SourceTargetMapper.INSTANCE.sourceToTarget( source );
assertThat( target ).isNotNull(); assertThat( target ).isNotNull();
@ -95,6 +99,10 @@ public class BuiltInTest {
assertThat( target.getProp6NoFormat().toString() ).isEqualTo( "1999-03-02+01:00" ); assertThat( target.getProp6NoFormat().toString() ).isEqualTo( "1999-03-02+01:00" );
assertThat( target.getProp7().toString() ).isEqualTo( "1999-03-02T00:00:00.000+01:00" ); assertThat( target.getProp7().toString() ).isEqualTo( "1999-03-02T00:00:00.000+01:00" );
assertThat( target.getProp8().getTimeInMillis() ).isEqualTo( 920329200000L ); assertThat( target.getProp8().getTimeInMillis() ).isEqualTo( 920329200000L );
assertThat( target.getProp9()).isEqualTo( createCalendar( "02.03.1999" ).getTime());
assertThat( target.getProp10()).isEqualTo( createCalendar( "02.03.1999" ));
assertThat( target.getProp11()).isEqualTo( createCalendar( "02.03.1999" ));
assertThat( target.getProp12()).isEqualTo( "02.03.1999" );
} }
@Test @Test

View File

@ -18,13 +18,12 @@
*/ */
package org.mapstruct.ap.test.builtin; package org.mapstruct.ap.test.builtin;
import javax.xml.bind.JAXBElement;
import javax.xml.datatype.XMLGregorianCalendar;
import java.util.Calendar; import java.util.Calendar;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import javax.xml.bind.JAXBElement;
import javax.xml.datatype.XMLGregorianCalendar;
public class Source { public class Source {
private JAXBElement<String> prop1; private JAXBElement<String> prop1;
@ -37,6 +36,10 @@ public class Source {
private XMLGregorianCalendar prop6NoFormat; private XMLGregorianCalendar prop6NoFormat;
private Calendar prop7; private Calendar prop7;
private XMLGregorianCalendar prop8; private XMLGregorianCalendar prop8;
private Calendar prop9;
private Date prop10;
private String prop11;
private Calendar prop12;
public JAXBElement<String> getProp1() { public JAXBElement<String> getProp1() {
return prop1; return prop1;
@ -117,4 +120,36 @@ public class Source {
public void setProp8( XMLGregorianCalendar prop8 ) { public void setProp8( XMLGregorianCalendar prop8 ) {
this.prop8 = prop8; this.prop8 = prop8;
} }
public Calendar getProp9() {
return prop9;
}
public void setProp9(Calendar prop9) {
this.prop9 = prop9;
}
public Date getProp10() {
return prop10;
}
public void setProp10(Date prop10) {
this.prop10 = prop10;
}
public String getProp11() {
return prop11;
}
public void setProp11(String prop11) {
this.prop11 = prop11;
}
public Calendar getProp12() {
return prop12;
}
public void setProp12(Calendar prop12) {
this.prop12 = prop12;
}
} }

View File

@ -29,7 +29,9 @@ public interface SourceTargetMapper {
SourceTargetMapper INSTANCE = Mappers.getMapper( SourceTargetMapper.class ); SourceTargetMapper INSTANCE = Mappers.getMapper( SourceTargetMapper.class );
@Mappings({ @Mappings({
@Mapping(source = "prop5", dateFormat = "dd.MM.yyyy"), @Mapping(source = "prop5", dateFormat = "dd.MM.yyyy"),
@Mapping(source = "prop6", dateFormat = "dd.MM.yyyy") @Mapping(source = "prop6", dateFormat = "dd.MM.yyyy"),
@Mapping(source = "prop11", dateFormat = "dd.MM.yyyy"),
@Mapping(source = "prop12", dateFormat = "dd.MM.yyyy")
}) })
Target sourceToTarget(Source source); Target sourceToTarget(Source source);
} }

View File

@ -18,12 +18,11 @@
*/ */
package org.mapstruct.ap.test.builtin; package org.mapstruct.ap.test.builtin;
import javax.xml.datatype.XMLGregorianCalendar;
import java.util.Calendar; import java.util.Calendar;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import javax.xml.datatype.XMLGregorianCalendar;
public class Target { public class Target {
private String prop1; private String prop1;
@ -36,7 +35,10 @@ public class Target {
private String prop6NoFormat; private String prop6NoFormat;
private XMLGregorianCalendar prop7; private XMLGregorianCalendar prop7;
private Calendar prop8; private Calendar prop8;
private Date prop9;
private Calendar prop10;
private Calendar prop11;
private String prop12;
public String getProp1() { public String getProp1() {
return prop1; return prop1;
@ -117,4 +119,36 @@ public class Target {
public void setProp8( Calendar prop8 ) { public void setProp8( Calendar prop8 ) {
this.prop8 = prop8; this.prop8 = prop8;
} }
public Date getProp9() {
return prop9;
}
public void setProp9(Date prop9) {
this.prop9 = prop9;
}
public Calendar getProp10() {
return prop10;
}
public void setProp10(Calendar prop10) {
this.prop10 = prop10;
}
public Calendar getProp11() {
return prop11;
}
public void setProp11(Calendar prop11) {
this.prop11 = prop11;
}
public String getProp12() {
return prop12;
}
public void setProp12(String prop12) {
this.prop12 = prop12;
}
} }