public void containsConversion(Class<?> from, Class<?> to) { isNotNull(); boolean foundMatchingConversion = false; for ( GroupConversionDescriptor groupConversionDescriptor : actual ) { if ( groupConversionDescriptor.getFrom().equals( from ) && groupConversionDescriptor.getTo().equals( to ) ) { foundMatchingConversion = true; break; } } if ( !foundMatchingConversion ) { fail( String.format( Locale.ROOT, "<%s> does not contain a conversion from <%s> to <%s>.", actual, from, to ) ); } } }
private GroupConversionDescriptor getGroupConversionDescriptorByFrom(Set<GroupConversionDescriptor> groupConversionDescriptors, Class<?> from) { Optional<GroupConversionDescriptor> groupConversionDescriptor = groupConversionDescriptors.stream() .filter( gcd -> from.equals( gcd.getFrom() ) ) .findAny(); return groupConversionDescriptor .orElseThrow( () -> new IllegalStateException( String.format( "Unable to find group conversion with from %1$s in %2$s", from, groupConversionDescriptors ) ) ); }
private GroupConversionDescriptor getGroupConversionDescriptorByFrom(Set<GroupConversionDescriptor> groupConversionDescriptors, Class<?> from) { Optional<GroupConversionDescriptor> groupConversionDescriptor = groupConversionDescriptors.stream() .filter( gcd -> from.equals( gcd.getFrom() ) ) .findAny(); return groupConversionDescriptor .orElseThrow( () -> new IllegalStateException( String.format( "Unable to find group conversion with from %1$s in %2$s", from, groupConversionDescriptors ) ) ); } }
public void containsConversion(Class<?> from, Class<?> to) { isNotNull(); boolean foundMatchingConversion = false; for ( GroupConversionDescriptor groupConversionDescriptor : actual ) { if ( groupConversionDescriptor.getFrom().equals( from ) && groupConversionDescriptor.getTo().equals( to ) ) { foundMatchingConversion = true; break; } } if ( !foundMatchingConversion ) { fail( String.format( Locale.ROOT, "<%s> does not contain a conversion from <%s> to <%s>.", actual, from, to ) ); } } }
@Test @SpecAssertion(section = Sections.XML_MAPPING_CONSTRAINTDECLARATIONINXML_CONSTRUCTORLEVELOVERRIDING, id = "i") public void testGroupConversionOnReturnValueAndParameter() throws Exception { ConstructorDescriptor descriptor = TestUtil.getConstructorDescriptor( CustomerRepository.class, CustomerRepository.class ); assertNotNull( descriptor, "the specified constructor should be configured in xml" ); ReturnValueDescriptor returnValueDescriptor = descriptor.getReturnValueDescriptor(); Set<GroupConversionDescriptor> groupConversionDescriptors = returnValueDescriptor.getGroupConversions(); assertTrue( groupConversionDescriptors.size() == 1 ); GroupConversionDescriptor groupConversionDescriptor = groupConversionDescriptors.iterator().next(); assertEquals( groupConversionDescriptor.getFrom(), Default.class, "Wrong from class for group conversion" ); List<ParameterDescriptor> parameterDescriptors = descriptor.getParameterDescriptors(); assertTrue( parameterDescriptors.size() == 1 ); ParameterDescriptor parameterDescriptor = parameterDescriptors.get( 0 ); groupConversionDescriptors = parameterDescriptor.getGroupConversions(); assertTrue( groupConversionDescriptors.size() == 1 ); groupConversionDescriptor = groupConversionDescriptors.iterator().next(); assertEquals( groupConversionDescriptor.getFrom(), Default.class, "Wrong from class for group conversion" ); } }
public void containsConversion(Class<?> from, Class<?> to) { isNotNull(); boolean foundMatchingConversion = false; for ( GroupConversionDescriptor groupConversionDescriptor : actual ) { if ( groupConversionDescriptor.getFrom().equals( from ) && groupConversionDescriptor.getTo().equals( to ) ) { foundMatchingConversion = true; break; } } if ( !foundMatchingConversion ) { fail( String.format( "<%s> does not contain a conversion from <%s> to <%s>.", actual, from, to ) ); } } }
@Test @SpecAssertion(section = Sections.XML_MAPPING_CONSTRAINTDECLARATIONINXML_METHODLEVELOVERRIDING, id = "j") public void testGroupConversionOnReturnValueAndParameter() throws Exception { MethodDescriptor descriptor = TestUtil.getMethodDescriptor( CustomerRepository.class, "findByExample", Customer.class ); assertNotNull( descriptor, "the specified method should be configured in xml" ); ReturnValueDescriptor returnValueDescriptor = descriptor.getReturnValueDescriptor(); Set<GroupConversionDescriptor> groupConversionDescriptors = returnValueDescriptor.getGroupConversions(); assertTrue( groupConversionDescriptors.size() == 1 ); GroupConversionDescriptor groupConversionDescriptor = groupConversionDescriptors.iterator().next(); assertEquals( groupConversionDescriptor.getFrom(), Default.class, "Wrong from class for group conversion" ); List<ParameterDescriptor> parameterDescriptors = descriptor.getParameterDescriptors(); assertTrue( parameterDescriptors.size() == 1 ); ParameterDescriptor parameterDescriptor = parameterDescriptors.get( 0 ); groupConversionDescriptors = parameterDescriptor.getGroupConversions(); assertTrue( groupConversionDescriptors.size() == 1 ); groupConversionDescriptor = groupConversionDescriptors.iterator().next(); assertEquals( groupConversionDescriptor.getFrom(), Default.class, "Wrong from class for group conversion" ); } }
@Test @SpecAssertion(section = Sections.CONSTRAINTMETADATA_CASCADABLEDESCRIPTOR, id = "b") @SpecAssertion(section = Sections.CONSTRAINTMETADATA_GROUPCONVERSIONDESCRIPTOR, id = "a") @SpecAssertion(section = Sections.CONSTRAINTMETADATA_GROUPCONVERSIONDESCRIPTOR, id = "b") public void testGetGroupConversionsForField() { PropertyDescriptor descriptor = getPropertyDescriptor( Customer.class, "orderList" ); Set<GroupConversionDescriptor> groupConversions = descriptor.getGroupConversions(); assertEquals( groupConversions.size(), 2 ); for ( GroupConversionDescriptor groupConversionDescriptor : groupConversions ) { if ( groupConversionDescriptor.getFrom().equals( Default.class ) ) { assertEquals( groupConversionDescriptor.getTo(), BasicChecks.class ); } else if ( groupConversionDescriptor.getFrom().equals( StrictCustomerChecks.class ) ) { assertEquals( groupConversionDescriptor.getTo(), StrictChecks.class ); } else { fail( String.format( "Encountered unexpected group conversion from %s to %s", groupConversionDescriptor.getFrom().getName(), groupConversionDescriptor.getTo().getName() ) ); } } }
@Test @SpecAssertion(section = Sections.CONSTRAINTMETADATA_CASCADABLEDESCRIPTOR, id = "b") @SpecAssertion(section = Sections.CONSTRAINTMETADATA_GROUPCONVERSIONDESCRIPTOR, id = "a") @SpecAssertion(section = Sections.CONSTRAINTMETADATA_GROUPCONVERSIONDESCRIPTOR, id = "b") public void testGetGroupConversionsForMethodParameter() { List<ParameterDescriptor> parameters = Executables.methodWithGroupConversionOnParameter() .getParameterDescriptors(); Set<GroupConversionDescriptor> groupConversions = parameters.get( 0 ).getGroupConversions(); assertEquals( groupConversions.size(), 2 ); for ( GroupConversionDescriptor groupConversionDescriptor : groupConversions ) { if ( groupConversionDescriptor.getFrom().equals( Default.class ) ) { assertEquals( groupConversionDescriptor.getTo(), BasicChecks.class ); } else if ( groupConversionDescriptor.getFrom().equals( StrictCustomerServiceChecks.class ) ) { assertEquals( groupConversionDescriptor.getTo(), StrictChecks.class ); } else { fail( String.format( "Encountered unexpected group conversion from %s to %s", groupConversionDescriptor.getFrom().getName(), groupConversionDescriptor.getTo().getName() ) ); } } }
@Test @SpecAssertion(section = Sections.CONSTRAINTMETADATA_CASCADABLEDESCRIPTOR, id = "b") @SpecAssertion(section = Sections.CONSTRAINTMETADATA_GROUPCONVERSIONDESCRIPTOR, id = "a") @SpecAssertion(section = Sections.CONSTRAINTMETADATA_GROUPCONVERSIONDESCRIPTOR, id = "b") public void testGetGroupConversionsForConstructorParameter() { List<ParameterDescriptor> parameters = Executables.constructorWithGroupConversionOnParameter() .getParameterDescriptors(); Set<GroupConversionDescriptor> groupConversions = parameters.get( 1 ).getGroupConversions(); assertEquals( groupConversions.size(), 2 ); for ( GroupConversionDescriptor groupConversionDescriptor : groupConversions ) { if ( groupConversionDescriptor.getFrom().equals( Default.class ) ) { assertEquals( groupConversionDescriptor.getTo(), BasicChecks.class ); } else if ( groupConversionDescriptor.getFrom().equals( StrictCustomerServiceChecks.class ) ) { assertEquals( groupConversionDescriptor.getTo(), StrictChecks.class ); } else { fail( String.format( "Encountered unexpected group conversion from %s to %s", groupConversionDescriptor.getFrom().getName(), groupConversionDescriptor.getTo().getName() ) ); } } }
@Test @SpecAssertion(section = Sections.CONSTRAINTMETADATA_CASCADABLEDESCRIPTOR, id = "b") @SpecAssertion(section = Sections.CONSTRAINTMETADATA_GROUPCONVERSIONDESCRIPTOR, id = "a") @SpecAssertion(section = Sections.CONSTRAINTMETADATA_GROUPCONVERSIONDESCRIPTOR, id = "b") public void testGetGroupConversionsForConstructorReturnValue() { ReturnValueDescriptor returnValueDescriptor = Executables.constructorWithGroupConversionOnReturnValue() .getReturnValueDescriptor(); Set<GroupConversionDescriptor> groupConversions = returnValueDescriptor.getGroupConversions(); assertEquals( groupConversions.size(), 2 ); for ( GroupConversionDescriptor groupConversionDescriptor : groupConversions ) { if ( groupConversionDescriptor.getFrom().equals( Default.class ) ) { assertEquals( groupConversionDescriptor.getTo(), BasicChecks.class ); } else if ( groupConversionDescriptor.getFrom().equals( StrictCustomerServiceChecks.class ) ) { assertEquals( groupConversionDescriptor.getTo(), StrictChecks.class ); } else { fail( String.format( "Encountered unexpected group conversion from %s to %s", groupConversionDescriptor.getFrom().getName(), groupConversionDescriptor.getTo().getName() ) ); } } }
@Test @SpecAssertion(section = Sections.CONSTRAINTMETADATA_CASCADABLEDESCRIPTOR, id = "b") @SpecAssertion(section = Sections.CONSTRAINTMETADATA_GROUPCONVERSIONDESCRIPTOR, id = "a") @SpecAssertion(section = Sections.CONSTRAINTMETADATA_GROUPCONVERSIONDESCRIPTOR, id = "b") public void testGetGroupConversionsForMethodReturnValue() { ReturnValueDescriptor returnValueDescriptor = Executables.methodWithGroupConversionOnReturnValue() .getReturnValueDescriptor(); Set<GroupConversionDescriptor> groupConversions = returnValueDescriptor.getGroupConversions(); assertEquals( groupConversions.size(), 2 ); for ( GroupConversionDescriptor groupConversionDescriptor : groupConversions ) { if ( groupConversionDescriptor.getFrom().equals( Default.class ) ) { assertEquals( groupConversionDescriptor.getTo(), BasicChecks.class ); } else if ( groupConversionDescriptor.getFrom().equals( StrictCustomerServiceChecks.class ) ) { assertEquals( groupConversionDescriptor.getTo(), StrictChecks.class ); } else { fail( String.format( "Encountered unexpected group conversion from %s to %s", groupConversionDescriptor.getFrom().getName(), groupConversionDescriptor.getTo().getName() ) ); } } }
@Test @SpecAssertions({ @SpecAssertion(section = Sections.CONSTRAINTMETADATA_CASCADABLEDESCRIPTOR, id = "b"), @SpecAssertion(section = Sections.CONSTRAINTMETADATA_GROUPCONVERSIONDESCRIPTOR, id = "a"), @SpecAssertion(section = Sections.CONSTRAINTMETADATA_GROUPCONVERSIONDESCRIPTOR, id = "b") }) public void testGetGroupConversionsForProperty() { PropertyDescriptor descriptor = getPropertyDescriptor( Customer.class, "account" ); Set<GroupConversionDescriptor> groupConversions = descriptor.getGroupConversions(); assertEquals( groupConversions.size(), 2 ); for ( GroupConversionDescriptor groupConversionDescriptor : groupConversions ) { if ( groupConversionDescriptor.getFrom().equals( Default.class ) ) { assertEquals( groupConversionDescriptor.getTo(), BasicChecks.class ); } else if ( groupConversionDescriptor.getFrom().equals( StrictCustomerChecks.class ) ) { assertEquals( groupConversionDescriptor.getTo(), StrictChecks.class ); } else { fail( String.format( "Encountered unexpected group conversion from %s to %s", groupConversionDescriptor.getFrom().getName(), groupConversionDescriptor.getTo().getName() ) ); } } }
boolean foundDefaultToRatingAA = false; for ( GroupConversionDescriptor groupConversionDescriptor : groupConversionDescriptorSet ) { if ( groupConversionDescriptor.getFrom().equals( Default.class ) && groupConversionDescriptor.getTo().equals( User.CreditRatingA.class ) ) { foundDefaultToRatingA = true; else if ( groupConversionDescriptor.getFrom().equals( User.CreditRatingA.class ) && groupConversionDescriptor.getTo().equals( User.CreditRatingAA.class ) ) { foundDefaultToRatingAA = true;
boolean foundDefaultToRatingAA = false; for ( GroupConversionDescriptor groupConversionDescriptor : groupConversionDescriptorSet ) { if ( groupConversionDescriptor.getFrom().equals( Default.class ) && groupConversionDescriptor.getTo().equals( User.CreditRatingA.class ) ) { foundDefaultToRatingA = true; else if ( groupConversionDescriptor.getFrom().equals( User.CreditRatingA.class ) && groupConversionDescriptor.getTo().equals( User.CreditRatingAA.class ) ) { foundDefaultToRatingAA = true;
assertEquals( productType.getGroupConversions().size(), 2 ); for ( GroupConversionDescriptor groupConversionDescriptor : productType.getGroupConversions() ) { if ( groupConversionDescriptor.getFrom().equals( Default.class ) ) { assertEquals( groupConversionDescriptor.getTo(), BasicChecks.class ); else if ( groupConversionDescriptor.getFrom().equals( ComplexChecks.class ) ) { assertEquals( groupConversionDescriptor.getTo(), ComplexProductTypeChecks.class ); String.format( "Encountered unexpected group conversion from %s to %s", groupConversionDescriptor.getFrom().getName(), groupConversionDescriptor.getTo().getName() ) );
assertEquals( productType.getGroupConversions().size(), 2 ); for ( GroupConversionDescriptor groupConversionDescriptor : productType.getGroupConversions() ) { if ( groupConversionDescriptor.getFrom().equals( Default.class ) ) { assertEquals( groupConversionDescriptor.getTo(), BasicChecks.class ); else if ( groupConversionDescriptor.getFrom().equals( ComplexChecks.class ) ) { assertEquals( groupConversionDescriptor.getTo(), ComplexProductTypeChecks.class ); String.format( "Encountered unexpected group conversion from %s to %s", groupConversionDescriptor.getFrom().getName(), groupConversionDescriptor.getTo().getName() ) );
assertEquals( productType.getGroupConversions().size(), 2 ); for ( GroupConversionDescriptor groupConversionDescriptor : productType.getGroupConversions() ) { if ( groupConversionDescriptor.getFrom().equals( Default.class ) ) { assertEquals( groupConversionDescriptor.getTo(), BasicChecks.class ); else if ( groupConversionDescriptor.getFrom().equals( ComplexChecks.class ) ) { assertEquals( groupConversionDescriptor.getTo(), ComplexProductTypeChecks.class ); String.format( "Encountered unexpected group conversion from %s to %s", groupConversionDescriptor.getFrom().getName(), groupConversionDescriptor.getTo().getName() ) );