Java Code Examples for org.springframework.test.context.testcontext#getApplicationContext()
The following examples show how to use
org.springframework.test.context.testcontext#getApplicationContext() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: ContextCacheTests.java From java-technology-stack with MIT License | 6 votes |
@Test public void removeContextHierarchyCacheLevel1() { // Load Level 3-A TestContext testContext3a = TestContextTestUtils.buildTestContext( ClassHierarchyContextHierarchyLevel3aTestCase.class, contextCache); testContext3a.getApplicationContext(); assertContextCacheStatistics(contextCache, "level 3, A", 3, 0, 3); assertParentContextCount(2); // Load Level 3-B TestContext testContext3b = TestContextTestUtils.buildTestContext( ClassHierarchyContextHierarchyLevel3bTestCase.class, contextCache); testContext3b.getApplicationContext(); assertContextCacheStatistics(contextCache, "level 3, A and B", 4, 1, 4); assertParentContextCount(2); // Remove Level 1 // Should also remove Levels 2, 3-A, and 3-B, leaving nothing. contextCache.remove(getMergedContextConfiguration(testContext3a).getParent().getParent(), HierarchyMode.CURRENT_LEVEL); assertContextCacheStatistics(contextCache, "removed level 1", 0, 1, 4); assertParentContextCount(0); }
Example 2
Source File: ContextCacheTests.java From spring4-understanding with Apache License 2.0 | 6 votes |
@Test public void removeContextHierarchyCacheLevel1() { // Load Level 3-A TestContext testContext3a = TestContextTestUtils.buildTestContext( ClassHierarchyContextHierarchyLevel3aTestCase.class, contextCache); testContext3a.getApplicationContext(); assertContextCacheStatistics(contextCache, "level 3, A", 3, 0, 3); assertParentContextCount(2); // Load Level 3-B TestContext testContext3b = TestContextTestUtils.buildTestContext( ClassHierarchyContextHierarchyLevel3bTestCase.class, contextCache); testContext3b.getApplicationContext(); assertContextCacheStatistics(contextCache, "level 3, A and B", 4, 1, 4); assertParentContextCount(2); // Remove Level 1 // Should also remove Levels 2, 3-A, and 3-B, leaving nothing. contextCache.remove(getMergedContextConfiguration(testContext3a).getParent().getParent(), HierarchyMode.CURRENT_LEVEL); assertContextCacheStatistics(contextCache, "removed level 1", 0, 1, 4); assertParentContextCount(0); }
Example 3
Source File: WireMockListener.java From restdocs-wiremock with Apache License 2.0 | 6 votes |
@Override public void beforeTestMethod(TestContext testContext) throws Exception { if(wireMockAnnotation == null) { return; } WireMockTest methodAnnotation = testContext.getTestMethod().getAnnotation(WireMockTest.class); String stubPath = ""; if(this.wireMockAnnotation.stubPath() != null) { stubPath = this.wireMockAnnotation.stubPath(); } if (methodAnnotation != null && methodAnnotation.stubPath() != null) { stubPath += "/" + methodAnnotation.stubPath(); } ConfigurableApplicationContext applicationContext = (ConfigurableApplicationContext) testContext .getApplicationContext(); WireMockServer server = applicationContext.getBean(WireMockServer.class); server.resetMappings(); if(! stubPath.isEmpty()) { server.loadMappingsUsing(new JsonFileMappingsSource(new ClasspathFileSource(stubPath))); } }
Example 4
Source File: ContextCacheTests.java From java-technology-stack with MIT License | 6 votes |
@Test public void removeContextHierarchyCacheLevel2() { // Load Level 3-A TestContext testContext3a = TestContextTestUtils.buildTestContext( ClassHierarchyContextHierarchyLevel3aTestCase.class, contextCache); testContext3a.getApplicationContext(); assertContextCacheStatistics(contextCache, "level 3, A", 3, 0, 3); assertParentContextCount(2); // Load Level 3-B TestContext testContext3b = TestContextTestUtils.buildTestContext( ClassHierarchyContextHierarchyLevel3bTestCase.class, contextCache); testContext3b.getApplicationContext(); assertContextCacheStatistics(contextCache, "level 3, A and B", 4, 1, 4); assertParentContextCount(2); // Remove Level 2 // Should also remove Levels 3-A and 3-B, leaving only Level 1 as a context in the // cache but also removing the Level 1 hierarchy since all children have been // removed. contextCache.remove(getMergedContextConfiguration(testContext3a).getParent(), HierarchyMode.CURRENT_LEVEL); assertContextCacheStatistics(contextCache, "removed level 2", 1, 1, 4); assertParentContextCount(0); }
Example 5
Source File: ContextCacheTests.java From java-technology-stack with MIT License | 6 votes |
@Test public void removeContextHierarchyCacheLevel1WithExhaustiveMode() { // Load Level 3-A TestContext testContext3a = TestContextTestUtils.buildTestContext( ClassHierarchyContextHierarchyLevel3aTestCase.class, contextCache); testContext3a.getApplicationContext(); assertContextCacheStatistics(contextCache, "level 3, A", 3, 0, 3); assertParentContextCount(2); // Load Level 3-B TestContext testContext3b = TestContextTestUtils.buildTestContext( ClassHierarchyContextHierarchyLevel3bTestCase.class, contextCache); testContext3b.getApplicationContext(); assertContextCacheStatistics(contextCache, "level 3, A and B", 4, 1, 4); assertParentContextCount(2); // Remove Level 1 // Should also remove Levels 2, 3-A, and 3-B, leaving nothing. contextCache.remove(getMergedContextConfiguration(testContext3a).getParent().getParent(), HierarchyMode.EXHAUSTIVE); assertContextCacheStatistics(contextCache, "removed level 1", 0, 1, 4); assertParentContextCount(0); }
Example 6
Source File: ContextCacheTests.java From spring-analysis-note with MIT License | 6 votes |
@Test public void removeContextHierarchyCacheLevel2WithExhaustiveMode() { // Load Level 3-A TestContext testContext3a = TestContextTestUtils.buildTestContext( ClassHierarchyContextHierarchyLevel3aTestCase.class, contextCache); testContext3a.getApplicationContext(); assertContextCacheStatistics(contextCache, "level 3, A", 3, 0, 3); assertParentContextCount(2); // Load Level 3-B TestContext testContext3b = TestContextTestUtils.buildTestContext( ClassHierarchyContextHierarchyLevel3bTestCase.class, contextCache); testContext3b.getApplicationContext(); assertContextCacheStatistics(contextCache, "level 3, A and B", 4, 1, 4); assertParentContextCount(2); // Remove Level 2 // Should wipe the cache contextCache.remove(getMergedContextConfiguration(testContext3a).getParent(), HierarchyMode.EXHAUSTIVE); assertContextCacheStatistics(contextCache, "removed level 2", 0, 1, 4); assertParentContextCount(0); }
Example 7
Source File: ContextCacheTests.java From spring4-understanding with Apache License 2.0 | 6 votes |
@Test public void removeContextHierarchyCacheLevel1WithExhaustiveMode() { // Load Level 3-A TestContext testContext3a = TestContextTestUtils.buildTestContext( ClassHierarchyContextHierarchyLevel3aTestCase.class, contextCache); testContext3a.getApplicationContext(); assertContextCacheStatistics(contextCache, "level 3, A", 3, 0, 3); assertParentContextCount(2); // Load Level 3-B TestContext testContext3b = TestContextTestUtils.buildTestContext( ClassHierarchyContextHierarchyLevel3bTestCase.class, contextCache); testContext3b.getApplicationContext(); assertContextCacheStatistics(contextCache, "level 3, A and B", 4, 1, 4); assertParentContextCount(2); // Remove Level 1 // Should also remove Levels 2, 3-A, and 3-B, leaving nothing. contextCache.remove(getMergedContextConfiguration(testContext3a).getParent().getParent(), HierarchyMode.EXHAUSTIVE); assertContextCacheStatistics(contextCache, "removed level 1", 0, 1, 4); assertParentContextCount(0); }
Example 8
Source File: ContextCacheTests.java From spring-analysis-note with MIT License | 6 votes |
@Test public void removeContextHierarchyCacheLevel1() { // Load Level 3-A TestContext testContext3a = TestContextTestUtils.buildTestContext( ClassHierarchyContextHierarchyLevel3aTestCase.class, contextCache); testContext3a.getApplicationContext(); assertContextCacheStatistics(contextCache, "level 3, A", 3, 0, 3); assertParentContextCount(2); // Load Level 3-B TestContext testContext3b = TestContextTestUtils.buildTestContext( ClassHierarchyContextHierarchyLevel3bTestCase.class, contextCache); testContext3b.getApplicationContext(); assertContextCacheStatistics(contextCache, "level 3, A and B", 4, 1, 4); assertParentContextCount(2); // Remove Level 1 // Should also remove Levels 2, 3-A, and 3-B, leaving nothing. contextCache.remove(getMergedContextConfiguration(testContext3a).getParent().getParent(), HierarchyMode.CURRENT_LEVEL); assertContextCacheStatistics(contextCache, "removed level 1", 0, 1, 4); assertParentContextCount(0); }
Example 9
Source File: ContextCacheTests.java From spring-analysis-note with MIT License | 5 votes |
@Test public void removeContextHierarchyCacheLevel3Then2() { // Load Level 3-A TestContext testContext3a = TestContextTestUtils.buildTestContext( ClassHierarchyContextHierarchyLevel3aTestCase.class, contextCache); testContext3a.getApplicationContext(); assertContextCacheStatistics(contextCache, "level 3, A", 3, 0, 3); assertParentContextCount(2); // Load Level 3-B TestContext testContext3b = TestContextTestUtils.buildTestContext( ClassHierarchyContextHierarchyLevel3bTestCase.class, contextCache); testContext3b.getApplicationContext(); assertContextCacheStatistics(contextCache, "level 3, A and B", 4, 1, 4); assertParentContextCount(2); // Remove Level 3-A contextCache.remove(getMergedContextConfiguration(testContext3a), HierarchyMode.CURRENT_LEVEL); assertContextCacheStatistics(contextCache, "removed level 3-A", 3, 1, 4); assertParentContextCount(2); // Remove Level 2 // Should also remove Level 3-B, leaving only Level 1. contextCache.remove(getMergedContextConfiguration(testContext3b).getParent(), HierarchyMode.CURRENT_LEVEL); assertContextCacheStatistics(contextCache, "removed level 2", 1, 1, 4); assertParentContextCount(0); }
Example 10
Source File: WireMockTestExecutionListener.java From spring-cloud-contract with Apache License 2.0 | 5 votes |
private boolean applicationContextBroken(TestContext testContext) { try { testContext.getApplicationContext(); return false; } catch (Exception ex) { if (log.isDebugEnabled()) { log.debug("Application context is broken due to", ex); } return true; } }
Example 11
Source File: ServletTestExecutionListener.java From spring-analysis-note with MIT License | 5 votes |
private void setUpRequestContextIfNecessary(TestContext testContext) { if (!isActivated(testContext) || alreadyPopulatedRequestContextHolder(testContext)) { return; } ApplicationContext context = testContext.getApplicationContext(); if (context instanceof WebApplicationContext) { WebApplicationContext wac = (WebApplicationContext) context; ServletContext servletContext = wac.getServletContext(); Assert.state(servletContext instanceof MockServletContext, () -> String.format( "The WebApplicationContext for test context %s must be configured with a MockServletContext.", testContext)); if (logger.isDebugEnabled()) { logger.debug(String.format( "Setting up MockHttpServletRequest, MockHttpServletResponse, ServletWebRequest, and RequestContextHolder for test context %s.", testContext)); } MockServletContext mockServletContext = (MockServletContext) servletContext; MockHttpServletRequest request = new MockHttpServletRequest(mockServletContext); request.setAttribute(CREATED_BY_THE_TESTCONTEXT_FRAMEWORK, Boolean.TRUE); MockHttpServletResponse response = new MockHttpServletResponse(); ServletWebRequest servletWebRequest = new ServletWebRequest(request, response); RequestContextHolder.setRequestAttributes(servletWebRequest); testContext.setAttribute(POPULATED_REQUEST_CONTEXT_HOLDER_ATTRIBUTE, Boolean.TRUE); testContext.setAttribute(RESET_REQUEST_CONTEXT_HOLDER_ATTRIBUTE, Boolean.TRUE); if (wac instanceof ConfigurableApplicationContext) { @SuppressWarnings("resource") ConfigurableApplicationContext configurableApplicationContext = (ConfigurableApplicationContext) wac; ConfigurableListableBeanFactory bf = configurableApplicationContext.getBeanFactory(); bf.registerResolvableDependency(MockHttpServletResponse.class, response); bf.registerResolvableDependency(ServletWebRequest.class, servletWebRequest); } } }
Example 12
Source File: WireMockListener.java From restdocs-wiremock with Apache License 2.0 | 5 votes |
@Override public void afterTestMethod(TestContext testContext) throws Exception { if(wireMockAnnotation == null) { return; } ConfigurableApplicationContext applicationContext = (ConfigurableApplicationContext) testContext .getApplicationContext(); applicationContext.getBean(WireMockServer.class).resetToDefaultMappings(); }
Example 13
Source File: ContextCacheTests.java From java-technology-stack with MIT License | 5 votes |
@Test public void removeContextHierarchyCacheLevel3Then2() { // Load Level 3-A TestContext testContext3a = TestContextTestUtils.buildTestContext( ClassHierarchyContextHierarchyLevel3aTestCase.class, contextCache); testContext3a.getApplicationContext(); assertContextCacheStatistics(contextCache, "level 3, A", 3, 0, 3); assertParentContextCount(2); // Load Level 3-B TestContext testContext3b = TestContextTestUtils.buildTestContext( ClassHierarchyContextHierarchyLevel3bTestCase.class, contextCache); testContext3b.getApplicationContext(); assertContextCacheStatistics(contextCache, "level 3, A and B", 4, 1, 4); assertParentContextCount(2); // Remove Level 3-A contextCache.remove(getMergedContextConfiguration(testContext3a), HierarchyMode.CURRENT_LEVEL); assertContextCacheStatistics(contextCache, "removed level 3-A", 3, 1, 4); assertParentContextCount(2); // Remove Level 2 // Should also remove Level 3-B, leaving only Level 1. contextCache.remove(getMergedContextConfiguration(testContext3b).getParent(), HierarchyMode.CURRENT_LEVEL); assertContextCacheStatistics(contextCache, "removed level 2", 1, 1, 4); assertParentContextCount(0); }
Example 14
Source File: ContextCacheTests.java From java-technology-stack with MIT License | 5 votes |
@Test public void removeContextHierarchyCacheLevel3Then2WithExhaustiveMode() { // Load Level 3-A TestContext testContext3a = TestContextTestUtils.buildTestContext( ClassHierarchyContextHierarchyLevel3aTestCase.class, contextCache); testContext3a.getApplicationContext(); assertContextCacheStatistics(contextCache, "level 3, A", 3, 0, 3); assertParentContextCount(2); // Load Level 3-B TestContext testContext3b = TestContextTestUtils.buildTestContext( ClassHierarchyContextHierarchyLevel3bTestCase.class, contextCache); testContext3b.getApplicationContext(); assertContextCacheStatistics(contextCache, "level 3, A and B", 4, 1, 4); assertParentContextCount(2); // Remove Level 3-A // Should wipe the cache. contextCache.remove(getMergedContextConfiguration(testContext3a), HierarchyMode.EXHAUSTIVE); assertContextCacheStatistics(contextCache, "removed level 3-A", 0, 1, 4); assertParentContextCount(0); // Remove Level 2 // Should not actually do anything since the cache was cleared in the // previous step. So the stats should remain the same. contextCache.remove(getMergedContextConfiguration(testContext3b).getParent(), HierarchyMode.EXHAUSTIVE); assertContextCacheStatistics(contextCache, "removed level 2", 0, 1, 4); assertParentContextCount(0); }
Example 15
Source File: OptimizedFlywayTestExecutionListener.java From embedded-database-spring-test with Apache License 2.0 | 5 votes |
protected synchronized void optimizedDbReset(TestContext testContext, AnnotatedElement element, FlywayTest annotation) throws Exception { try { if (annotation != null && annotation.invokeCleanDB() && annotation.invokeMigrateDB() && (!flywayBaselineAttributePresent || !annotation.invokeBaselineDB())) { ApplicationContext applicationContext = testContext.getApplicationContext(); Flyway flywayBean = getFlywayBean(applicationContext, annotation); if (flywayBean != null) { FlywayDataSourceContext dataSourceContext = getDataSourceContext(applicationContext, flywayBean); if (dataSourceContext != null) { dataSourceContext.getTarget(); // wait for completion of running flyway migration DataSource dataSource = reloadDataSource(dataSourceContext, flywayBean, annotation); EmbeddedDatabaseReporter.reportDataSource(dataSource, element); FlywayTest adjustedAnnotation = copyAnnotation(annotation, false, false, true); originalDbReset(testContext, adjustedAnnotation); return; } } } originalDbReset(testContext, annotation); } catch (NoSuchMethodError e) { logger.error("\n\nHINT: Check that you are using compatible versions of org.flywaydb:flyway-core and org.flywaydb.flyway-test-extensions:flyway-spring-test dependencies!!!\n"); throw e; } }
Example 16
Source File: ServletTestExecutionListener.java From spring4-understanding with Apache License 2.0 | 5 votes |
private void setUpRequestContextIfNecessary(TestContext testContext) { if (notAnnotatedWithWebAppConfiguration(testContext) || alreadyPopulatedRequestContextHolder(testContext)) { return; } ApplicationContext context = testContext.getApplicationContext(); if (context instanceof WebApplicationContext) { WebApplicationContext wac = (WebApplicationContext) context; ServletContext servletContext = wac.getServletContext(); Assert.state(servletContext instanceof MockServletContext, String.format( "The WebApplicationContext for test context %s must be configured with a MockServletContext.", testContext)); if (logger.isDebugEnabled()) { logger.debug(String.format( "Setting up MockHttpServletRequest, MockHttpServletResponse, ServletWebRequest, and RequestContextHolder for test context %s.", testContext)); } MockServletContext mockServletContext = (MockServletContext) servletContext; MockHttpServletRequest request = new MockHttpServletRequest(mockServletContext); request.setAttribute(CREATED_BY_THE_TESTCONTEXT_FRAMEWORK, Boolean.TRUE); MockHttpServletResponse response = new MockHttpServletResponse(); ServletWebRequest servletWebRequest = new ServletWebRequest(request, response); RequestContextHolder.setRequestAttributes(servletWebRequest); testContext.setAttribute(POPULATED_REQUEST_CONTEXT_HOLDER_ATTRIBUTE, Boolean.TRUE); testContext.setAttribute(RESET_REQUEST_CONTEXT_HOLDER_ATTRIBUTE, Boolean.TRUE); if (wac instanceof ConfigurableApplicationContext) { @SuppressWarnings("resource") ConfigurableApplicationContext configurableApplicationContext = (ConfigurableApplicationContext) wac; ConfigurableListableBeanFactory bf = configurableApplicationContext.getBeanFactory(); bf.registerResolvableDependency(MockHttpServletResponse.class, response); bf.registerResolvableDependency(ServletWebRequest.class, servletWebRequest); } } }
Example 17
Source File: FlywayTestExecutionListener.java From flyway-test-extensions with Apache License 2.0 | 4 votes |
/** * Test the annotation an reset the database. * * @param testContext * default test context filled from spring * @param annotation * founded */ private void dbResetWithAnnotation(final TestContext testContext, final FlywayTest annotation) { if (annotation != null) { Flyway flyWay = null; final ApplicationContext appContext = testContext .getApplicationContext(); if (appContext != null) { flyWay = getBean(appContext, Flyway.class, annotation.flywayName()); if (flyWay != null) { String executionInfo = ""; // we have a fly way configuration no lets try if (logger.isInfoEnabled()) { executionInfo = ExecutionListenerHelper .getExecutionInformation(testContext); logger.info("---> Start reset database for '" + executionInfo + "'."); } if (annotation.invokeCleanDB()) { if (logger.isDebugEnabled()) { logger.debug("******** Clean database for '" + executionInfo + "'."); } flyWay.clean(); } if (annotation.invokeBaselineDB()) { if (logger.isDebugEnabled()) { logger.debug("******** Baseline database for '" + executionInfo + "'."); } flyWay.baseline(); } if (annotation.invokeMigrateDB()) { String[] locations = annotation.locationsForMigrate(); if ((locations == null || locations.length == 0)) { if (logger.isDebugEnabled()) { logger.debug("******** Default migrate database for '" + executionInfo + "'."); } flyWay.migrate(); } else { locationsMigrationHandling(annotation, flyWay, executionInfo); } } if (logger.isInfoEnabled()) { logger.info("<--- Finished reset database for '" + executionInfo + "'."); } return; } // in this case we have not the possibility to reset the // database throw new IllegalArgumentException("Annotation " + annotation.getClass() + " was set, but no Flyway configuration was given."); } // in this case we have not the possibility to reset the database throw new IllegalArgumentException("Annotation " + annotation.getClass() + " was set, but no configuration was given."); } else { if (logger.isDebugEnabled()) { logger.debug("dbResetWithAnnotation is called without a flyway test annotation."); } } }
Example 18
Source File: ContextCacheTests.java From java-technology-stack with MIT License | 4 votes |
private ApplicationContext loadContext(Class<?> testClass) { TestContext testContext = TestContextTestUtils.buildTestContext(testClass, contextCache); return testContext.getApplicationContext(); }
Example 19
Source File: SpringRiderTestContext.java From database-rider with Apache License 2.0 | 4 votes |
private static DataSource getDataSource(TestContext testContext, String beanName) { ApplicationContext context = testContext.getApplicationContext(); return beanName.isEmpty() ? context.getBean(DataSource.class) : context.getBean(beanName, DataSource.class); }
Example 20
Source File: ContextCacheTests.java From spring-analysis-note with MIT License | 4 votes |
private ApplicationContext loadContext(Class<?> testClass) { TestContext testContext = TestContextTestUtils.buildTestContext(testClass, contextCache); return testContext.getApplicationContext(); }