# Licensed to the Apache Software Foundation (ASF) under the terms of ASLv2 (http://www.apache.org/licenses/LICENSE-2.0).

-buildpath: \
	${^-buildpath},\
	junit.osgi,\
	osgi.core;version=6.0.0,\
	osgi.cmpn,\
	org.mockito.mockito-all,\
	org.apache.ace.test;version=latest,\
	org.apache.ace.range.api;version=latest,\
	org.apache.ace.repository.api;version=latest,\
	org.apache.felix.http.api,\
	org.apache.felix.dependencymanager

-runfw: org.apache.felix.framework;version='[5,6)'
-runbundles: \
	osgi.cmpn,\
	org.apache.felix.log,\
	org.apache.felix.dependencymanager,\
	org.apache.felix.configadmin,\
	org.apache.felix.prefs,\
	org.apache.felix.http.servlet-api,\
	org.apache.felix.http.jetty,\
	org.apache.felix.useradmin,\
	org.apache.ace.deployment.provider.api;version=latest,\
	org.apache.ace.authentication.api;version=latest,\
	org.apache.ace.connectionfactory;version=latest,\
	org.apache.ace.test;version=latest,\
	org.apache.ace.range.api;version=latest,\
	org.apache.ace.repository.api;version=latest,\
	org.apache.ace.repository.impl;version=latest,\
	org.apache.ace.repository.servlets;version=latest,\
	org.apache.ace.useradmin.repository,\
	org.apache.ace.http.context;version=latest
-runvm: -ea
-runee: JavaSE-1.7
-runsystempackages: sun.reflect
-runproperties: ${itestrunprops}
-baseline:
	
Test-Cases: ${classes;CONCRETE;EXTENDS;org.apache.ace.it.IntegrationTestBase}

Private-Package: org.apache.ace.it.useradmin

Bundle-Version: 1.0.0
Bundle-Name: Apache ACE Repository itest
Bundle-Description: Integration test bundle for Apache ACE Repository backed UserAdmin
Bundle-Category: itest
