#588 Extend test to verify that #588 was actually fixed with the previous commit

This commit is contained in:
Andreas Gudian 2015-08-13 20:47:11 +02:00
parent a85168f298
commit 9578f9b452
6 changed files with 21 additions and 6 deletions

View File

@ -33,6 +33,7 @@ public interface ErroneousMapper1 {
@Mappings({
@Mapping(target = "stringConstant", constant = "stringConstant"),
@Mapping(target = "emptyStringConstant", constant = ""),
@Mapping(source = "test", target = "integerConstant", constant = "14"),
@Mapping(target = "longWrapperConstant", constant = "3001"),
@Mapping(target = "dateConstant", dateFormat = "dd-MM-yyyy", constant = "09-01-2014"),

View File

@ -33,6 +33,7 @@ public interface ErroneousMapper3 {
@Mappings({
@Mapping(target = "stringConstant", constant = "stringConstant"),
@Mapping(target = "emptyStringConstant", constant = ""),
@Mapping(target = "integerConstant", expression = "java('test')", constant = "14"),
@Mapping(target = "longWrapperConstant", constant = "3001"),
@Mapping(target = "dateConstant", dateFormat = "dd-MM-yyyy", constant = "09-01-2014"),

View File

@ -33,6 +33,7 @@ public interface ErroneousMapper4 {
@Mappings({
@Mapping(target = "stringConstant", constant = "stringConstant"),
@Mapping(target = "emptyStringConstant", constant = ""),
@Mapping(source = "test", target = "integerConstant", expression = "java('test')"),
@Mapping(target = "longWrapperConstant", constant = "3001"),
@Mapping(target = "dateConstant", dateFormat = "dd-MM-yyyy", constant = "09-01-2014"),

View File

@ -22,6 +22,7 @@ import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Date;
import javax.tools.Diagnostic.Kind;
import org.junit.Test;
@ -60,6 +61,7 @@ public class SourceConstantsTest {
assertThat( target ).isNotNull();
assertThat( target.getPropertyThatShouldBeMapped() ).isEqualTo( "SomeProperty" );
assertThat( target.getStringConstant() ).isEqualTo( "stringConstant" );
assertThat( target.getEmptyStringConstant() ).isEqualTo( "" );
assertThat( target.getIntegerConstant() ).isEqualTo( 14 );
assertThat( target.getLongWrapperConstant() ).isEqualTo( new Long( 3001L ) );
assertThat( target.getDateConstant() ).isEqualTo( getDate( "dd-MM-yyyy", "09-01-2014" ) );
@ -97,12 +99,12 @@ public class SourceConstantsTest {
diagnostics = {
@Diagnostic(type = ErroneousMapper1.class,
kind = Kind.ERROR,
line = 41,
line = 42,
messageRegExp = "Source and constant are both defined in @Mapping, either define a source or a "
+ "constant"),
@Diagnostic(type = ErroneousMapper1.class,
kind = Kind.WARNING,
line = 41,
line = 42,
messageRegExp = "Unmapped target property: \"integerConstant\"")
}
)
@ -122,13 +124,13 @@ public class SourceConstantsTest {
diagnostics = {
@Diagnostic(type = ErroneousMapper3.class,
kind = Kind.ERROR,
line = 41,
line = 42,
messageRegExp =
"Expression and constant are both defined in @Mapping, either define an expression or a "
+ "constant"),
@Diagnostic(type = ErroneousMapper3.class,
kind = Kind.WARNING,
line = 41,
line = 42,
messageRegExp = "Unmapped target property: \"integerConstant\"")
}
)
@ -148,12 +150,12 @@ public class SourceConstantsTest {
diagnostics = {
@Diagnostic(type = ErroneousMapper4.class,
kind = Kind.ERROR,
line = 41,
line = 42,
messageRegExp = "Source and expression are both defined in @Mapping, either define a source or an "
+ "expression"),
@Diagnostic(type = ErroneousMapper4.class,
kind = Kind.WARNING,
line = 41,
line = 42,
messageRegExp = "Unmapped target property: \"integerConstant\"")
}
)

View File

@ -33,6 +33,7 @@ public interface SourceTargetMapper {
@Mappings({
@Mapping(target = "stringConstant", constant = "stringConstant"),
@Mapping(target = "emptyStringConstant", constant = ""),
@Mapping(target = "integerConstant", constant = "14"),
@Mapping(target = "longWrapperConstant", constant = "3001"),
@Mapping(target = "dateConstant", dateFormat = "dd-MM-yyyy", constant = "09-01-2014"),

View File

@ -29,6 +29,7 @@ public class Target {
private String propertyThatShouldBeMapped;
private String stringConstant;
private String emptyStringConstant;
private int integerConstant;
private Long longWrapperConstant;
private Date dateConstant;
@ -78,4 +79,12 @@ public class Target {
return nameConstants;
}
public String getEmptyStringConstant() {
return emptyStringConstant;
}
public void setEmptyStringConstant(String emptyStringConstant) {
this.emptyStringConstant = emptyStringConstant;
}
}