sourceSets.main.java.srcDirs = [sourceJavaDir, 'source/compatibility'] dependencies { compile fileTree(dir: 'libs', include: '*.jar') compile 'javax.servlet:servlet-api:2.5' testCompile 'org.springframework:spring-test:2.5' testRuntime files(explodedConfigDir) testRuntime files(configDir) testRuntime files(testResourceDir) alfrescoDeps group: alfrescoGroupId, name: 'alfresco', version: alfrescoBaseVersion, type: 'war' alfrescoDeps group: alfrescoGroupId, name: 'alfresco-solr', version: alfrescoBaseVersion, type: 'zip' } task fetchSOLR(type:Copy) { from configurations.alfrescoDeps into '.' include '*.zip' rename { String filename -> solrFile } } task useSOLR << { } eclipse { classpath { file { withXml { Map map = new HashMap() map.put('kind', 'src') map.put('path', configDir) def node = it.asNode() node.appendNode('classpathentry', map) } } } } task resetDatabase << { // Loading the properties in all possible locations ant.property(file: System.properties.getProperty('DB_PROPERTIES') ) ant.property(file: System.properties.getProperty('user.home')+'/alfresco/extension/repository.properties' ) ant.property(resource: 'alfresco/domain/transaction.properties', classpath: configurations.compile.asPath ) ant.property(resource: 'alfresco/version.properties', classpath: configurations.compile.asPath ) ant.property(resource: 'alfresco/repository.properties', classpath: configurations.compile.asPath ) // Set default values if nothing was found (remember Ant props are 'first set wins') ant.property(name: "db.name", value: "alfresco") ant.property(name: "db.url", value: "jdbc:postgresql:alfresco") ant.property(name: "db.master.url", value: "jdbc:postgresql:template1") ant.property(name: "db.username", value: "alfresco") ant.property(name: "db.password", value: "alfresco") println "Recreating database " + ant.getProperty("db.name") + " as user " + ant.getProperty("db.username") ant.sql(driver: 'org.postgresql.Driver', url: ant.getProperty("db.master.url"), userid: ant.getProperty("db.username"), password: ant.getProperty("db.password"), print: 'true', autocommit: 'true', classpath: configurations.compile.asPath, 'drop database if exists ' + ant.getProperty("db.name") + '; create database ' + ant.getProperty("db.name") + ';') if (ant.getProperties().containsKey("dir.root")) { println "Deleting content store in " + ant.getProperty("dir.root") ant.delete(includeEmptyDirs: 'true', dir: ant.getProperty("dir.root")) } } test { dependsOn resetDatabase include '**/*Test.class' exclude '**/*SystemTest.class' // temporarily exclude out of date tests exclude '**/RMCaveatConfigServiceImplTest.class' exclude '**/RMCaveatConfigScriptTest.class' exclude '**/RmRestApiTest.class' exclude '**/RmRestApiTest.class' exclude '**/RoleRestApiTest.class' exclude '**/CustomEMailMappingServiceImplTest.class' testLogging.showStandardStreams = true jvmArgs '-Xms256M', '-Xmx1024M', '-XX:MaxPermSize=256M' // Put systemProperty definition in a doFirst closure, otherwise it's executed before resetDatabase task doFirst { ant.property(name: "dir.root", value: System.getProperty("user.dir") + "/build/test_alf_data") systemProperties = ant.getProperties() } beforeTest { descriptor -> logger.lifecycle("Running test: " + descriptor) } }