Skip to content

Commit

Permalink
SHIBUI-522: refactoring REST controller for polymorphic filters endpo…
Browse files Browse the repository at this point in the history
…ints
  • Loading branch information
dima767 committed Jun 1, 2018
1 parent f1dc79d commit 6fa70fc
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -43,11 +43,9 @@ public class MetadataFiltersController {

@GetMapping("/Filters")
@Transactional(readOnly = true)
public Iterable<FilterRepresentation> getAll(@PathVariable String metadataResolverId) {
public Iterable<MetadataFilter> getAll(@PathVariable String metadataResolverId) {
// TODO: implement lookup based on metadataResolverId once we have more than one
return repository.findAll().iterator().next().getMetadataFilters().stream()
.map(eaf -> filterService.createRepresentationFromFilter((EntityAttributesFilter) eaf))
.collect(Collectors.toList());
return repository.findAll().iterator().next().getMetadataFilters();
}

@GetMapping("/Filter/{resourceId}")
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package edu.internet2.tier.shibboleth.admin.ui.controller

import com.fasterxml.jackson.databind.ObjectMapper
import com.fasterxml.jackson.databind.SerializationFeature
import edu.internet2.tier.shibboleth.admin.ui.configuration.CoreShibUiConfiguration
import edu.internet2.tier.shibboleth.admin.ui.configuration.MetadataResolverConfiguration
import edu.internet2.tier.shibboleth.admin.ui.configuration.SearchConfiguration
Expand Down Expand Up @@ -60,6 +61,7 @@ class MetadataFiltersControllerTests extends Specification {
randomGenerator = new RandomGenerator()
testObjectGenerator = new TestObjectGenerator(attributeUtility)
mapper = new ObjectMapper()
mapper.enable(SerializationFeature.INDENT_OUTPUT)

controller = new MetadataFiltersController (
repository: metadataResolverRepository,
Expand All @@ -83,19 +85,17 @@ class MetadataFiltersControllerTests extends Specification {
def "FilterController.getAll gets all filters"() {
given:
def metadataResolver = new MetadataResolver()
metadataResolver.setMetadataFilters(testObjectGenerator.buildFilterList())
def expectedContent = testObjectGenerator.buildFilterList()
metadataResolver.setMetadataFilters(expectedContent)
List<MetadataResolver> metadataResolverList = [metadataResolver]
1 * metadataResolverRepository.findAll() >> metadataResolverList

def expectedContent = []
metadataResolver.getMetadataFilters().each {
expectedContent.add(filterService.createRepresentationFromFilter(it))
}
def expectedHttpResponseStatus = status().isOk()
def expectedResponseContentType = APPLICATION_JSON_UTF8

when:
def result = mockMvc.perform(get('/api/MetadataResolver/foo/Filters'))
println(mapper.writeValueAsString(expectedContent))

then:
result.andExpect(expectedHttpResponseStatus)
Expand Down

0 comments on commit 6fa70fc

Please sign in to comment.