plugins {
	id "java"
	id "nebula.integtest" version "8.2.0"
	id "org.gretty" version "4.0.3"
	id "war"
}

apply from: "gradle/gretty.gradle"

repositories {
	jcenter()
	mavenCentral()
	maven { url "https://repo.spring.io/snapshot" }
	maven { url "https://repo.spring.io/milestone" }
	maven { url "https://build.shibboleth.net/nexus/content/repositories/releases/" }
}

dependencies {
	constraints {
		implementation "org.opensaml:opensaml-core:4.1.1"
		implementation "org.opensaml:opensaml-saml-api:4.1.1"
		implementation "org.opensaml:opensaml-saml-impl:4.1.1"
	}
	implementation platform(libs.org.springframework.spring.framework.bom)
	implementation platform(libs.org.springframework.security.spring.security.bom)
	implementation platform("org.junit:junit-bom:5.10.0")

	implementation "org.springframework.security:spring-security-config"
	implementation "org.springframework.security:spring-security-web"
	implementation "org.springframework.security:spring-security-saml2-service-provider"
	implementation "org.springframework:spring-webmvc"
	implementation "org.thymeleaf:thymeleaf-spring6:3.1.0.M1"
	implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity6:3.1.0.M1'

	providedCompile "jakarta.servlet:jakarta.servlet-api:6.0.0"

	testImplementation "org.assertj:assertj-core:3.18.0"
	testImplementation "org.springframework:spring-test"
	testImplementation "org.springframework.security:spring-security-test"
	testImplementation "org.junit.jupiter:junit-jupiter-api"
	testImplementation 'net.sourceforge.htmlunit:htmlunit:2.70.0'
	testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine")


}

tasks.withType(Test).configureEach {
	useJUnitPlatform()
	outputs.upToDateWhen { false }
}
