package org.apereo.cas.audit.config; import org.apereo.cas.audit.spi.DelegatingAuditTrailManager; import org.apereo.cas.audit.spi.config.CasCoreAuditConfiguration; import org.apereo.cas.config.CasCoreAuthenticationConfiguration; import org.apereo.cas.config.CasCoreAuthenticationHandlersConfiguration; import org.apereo.cas.config.CasCoreAuthenticationMetadataConfiguration; import org.apereo.cas.config.CasCoreAuthenticationPolicyConfiguration; import org.apereo.cas.config.CasCoreAuthenticationPrincipalConfiguration; import org.apereo.cas.config.CasCoreAuthenticationSupportConfiguration; import org.apereo.cas.config.CasCoreHttpConfiguration; import org.apereo.cas.config.CasCoreServicesConfiguration; import org.apereo.cas.config.CasPersonDirectoryConfiguration; import org.apereo.cas.services.RegisteredServiceTestUtils; import org.apereo.cas.services.ServicesManager; import org.apereo.inspektr.common.web.ClientInfo; import org.apereo.inspektr.common.web.ClientInfoHolder; import org.junit.BeforeClass; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.cloud.autoconfigure.RefreshAutoConfiguration; import org.springframework.mock.web.MockHttpServletRequest; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.transaction.annotation.Transactional; import static org.junit.Assert.*; /** * This is {@link CasSupportJdbcAuditConfigurationTests}. * * @author Misagh Moayyed * @since 5.1.0 */ @RunWith(SpringRunner.class) @Transactional @SpringBootTest(classes = {RefreshAutoConfiguration.class, CasPersonDirectoryConfiguration.class, CasCoreHttpConfiguration.class, CasSupportJdbcAuditConfiguration.class, CasCoreAuditConfiguration.class, CasCoreAuthenticationConfiguration.class, CasCoreAuthenticationMetadataConfiguration.class, CasCoreAuthenticationPolicyConfiguration.class, CasCoreAuthenticationPrincipalConfiguration.class, CasCoreAuthenticationHandlersConfiguration.class, CasCoreAuthenticationSupportConfiguration.class, CasCoreServicesConfiguration.class}) public class CasSupportJdbcAuditConfigurationTests { @Autowired @Qualifier("auditTrailManager") private DelegatingAuditTrailManager auditTrailManager; @Autowired @Qualifier("servicesManager") private ServicesManager servicesManager; @BeforeClass public static void setUp() { final MockHttpServletRequest request = new MockHttpServletRequest(); request.setRemoteAddr("1.2.3.4"); request.setLocalAddr("7.8.9.0"); ClientInfoHolder.setClientInfo(new ClientInfo(request)); } @Test public void verifyAudit() { this.servicesManager.save(RegisteredServiceTestUtils.getRegisteredService("auditservicetest")); assertEquals(this.auditTrailManager.get().size(), 1); } }