From b9259cfc239ff989fbafee7d26f607f8b08ef1d6 Mon Sep 17 00:00:00 2001 From: Bill Smith Date: Wed, 22 Aug 2018 10:09:57 -0700 Subject: [PATCH] [SHIBUI-660] Added simple test to check for index writer hashmap usage. Scope appears to be as intended! --- .../ui/service/IndexWriterServiceTests.groovy | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/service/IndexWriterServiceTests.groovy diff --git a/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/service/IndexWriterServiceTests.groovy b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/service/IndexWriterServiceTests.groovy new file mode 100644 index 000000000..65ec74bc1 --- /dev/null +++ b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/service/IndexWriterServiceTests.groovy @@ -0,0 +1,37 @@ +package edu.internet2.tier.shibboleth.admin.ui.service + +import edu.internet2.tier.shibboleth.admin.ui.configuration.CoreShibUiConfiguration +import edu.internet2.tier.shibboleth.admin.ui.configuration.InternationalizationConfiguration +import edu.internet2.tier.shibboleth.admin.ui.configuration.SearchConfiguration +import edu.internet2.tier.shibboleth.admin.ui.configuration.TestConfiguration +import org.springframework.beans.factory.annotation.Autowired +import org.springframework.boot.autoconfigure.domain.EntityScan +import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest +import org.springframework.data.jpa.repository.config.EnableJpaRepositories +import org.springframework.test.context.ContextConfiguration +import spock.lang.Specification + +/** + * @author Bill Smith (wsmith@unicon.net) + */ +@DataJpaTest +@ContextConfiguration(classes=[CoreShibUiConfiguration, SearchConfiguration, TestConfiguration, InternationalizationConfiguration]) +@EnableJpaRepositories(basePackages = ["edu.internet2.tier.shibboleth.admin.ui"]) +@EntityScan("edu.internet2.tier.shibboleth.admin.ui") +class IndexWriterServiceTests extends Specification { + + @Autowired + IndexWriterService service + + def "retrieving index writer for the same resource id multiple times results in the same index writer being returned"() { + given: + def resourceId = "12345" + + when: + def firstIndexWriter = service.getIndexWriter(resourceId) // causes new index writer to be created and added to map + def secondIndexWriter = service.getIndexWriter(resourceId) // retrieves the same index writer from above + + then: + firstIndexWriter == secondIndexWriter + } +}