diff --git a/src/test/java/org/springframework/hateoas/server/mvc/RepresentationModelProcessorInvokerUnitTests.java b/src/test/java/org/springframework/hateoas/server/mvc/RepresentationModelProcessorInvokerUnitTests.java index 1a1ee1a5..9b2c873b 100644 --- a/src/test/java/org/springframework/hateoas/server/mvc/RepresentationModelProcessorInvokerUnitTests.java +++ b/src/test/java/org/springframework/hateoas/server/mvc/RepresentationModelProcessorInvokerUnitTests.java @@ -69,6 +69,21 @@ public class RepresentationModelProcessorInvokerUnitTests { assertThat(firstProcessor.invoked).isFalse(); } + @Test // #1425 + void doesInvokeProcessorForCollectionModelOfRepresentationModel() { + + CollectionModelOfGenericModelProcessor processor = new CollectionModelOfGenericModelProcessor(); + + RepresentationModelProcessorInvoker invoker = new RepresentationModelProcessorInvoker( + singletonList(processor)); + + GenericModel model = new GenericModel<>(); + + invoker.invokeProcessorsFor(CollectionModel.of(singletonList(model))); + + assertThat(processor.invoked).isTrue(); + } + // #1280 static class GenericPostProcessor> implements RepresentationModelProcessor { @@ -98,6 +113,20 @@ public class RepresentationModelProcessorInvokerUnitTests { } } + // 1425 + static class CollectionModelOfGenericModelProcessor implements RepresentationModelProcessor>> { + + boolean invoked = false; + + @Override + public CollectionModel> process(CollectionModel> model) { + + invoked = true; + + return model; + } + } + static class MyCollectionModelInheritor extends CollectionModel { public MyCollectionModelInheritor(Iterable content) { super(content);