improve integration tests

This commit is contained in:
Sebastian Sdorra
2011-02-21 14:21:44 +01:00
parent 16085e3c5d
commit ef2d5f450d
6 changed files with 123 additions and 36 deletions

View File

@@ -36,7 +36,9 @@ package sonia.scm.it;
//~--- non-JDK imports --------------------------------------------------------
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runners.Parameterized.Parameters;
@@ -65,11 +67,6 @@ import java.util.Collection;
public abstract class AbstractPermissionITCaseBase<T>
{
/** Field description */
public static User TESTUSER = null;
//~--- constructors ---------------------------------------------------------
/**
* Constructs ...
*
@@ -96,36 +93,30 @@ public abstract class AbstractPermissionITCaseBase<T>
Collection<Credentials[]> params = new ArrayList<Credentials[]>();
params.add(new Credentials[] { new Credentials() });
User dent = getTestUser();
params.add(new Credentials[] {
new Credentials(dent.getName(), dent.getPassword()) });
new Credentials("trillian", "a.trillian124") });
return params;
}
//~--- get methods ----------------------------------------------------------
/**
* Method description
*
*
* @return
*/
private static User getTestUser()
@BeforeClass
public static void createTestUser()
{
if (TESTUSER == null)
{
TESTUSER = UserTestData.createTrillian();
TESTUSER.setPassword("a.trillian124");
User trillian = UserTestData.createTrillian();
trillian.setPassword("a.trillian124");
Client client = createClient();
authenticateAdmin(client);
WebResource wr = createResource(client, "users");
ClientResponse response = wr.post(ClientResponse.class, TESTUSER);
ClientResponse response = wr.post(ClientResponse.class, trillian);
assertNotNull(response);
assertTrue(response.getStatus() == 201);
@@ -134,9 +125,22 @@ public abstract class AbstractPermissionITCaseBase<T>
client.destroy();
}
return TESTUSER;
/**
* Method description
*
*/
@AfterClass
public static void removeTestUser()
{
Client client = createClient();
authenticateAdmin(client);
createResource(client, "users/trillian").delete();
client.destroy();
}
//~--- get methods ----------------------------------------------------------
/**
* Method description
*

View File

@@ -35,6 +35,7 @@ package sonia.scm.it;
//~--- non-JDK imports --------------------------------------------------------
import org.junit.AfterClass;
import org.junit.Test;
import sonia.scm.group.Group;
@@ -45,6 +46,7 @@ import static sonia.scm.it.IntegrationTestUtil.*;
//~--- JDK imports ------------------------------------------------------------
import com.sun.jersey.api.client.Client;
import com.sun.jersey.api.client.ClientResponse;
import com.sun.jersey.api.client.GenericType;
import com.sun.jersey.api.client.WebResource;
@@ -60,6 +62,21 @@ import java.util.List;
public class GroupITCase extends AbstractAdminITCaseBase
{
/**
* Method description
*
*/
@AfterClass
public static void cleanup()
{
Client client = createClient();
authenticateAdmin(client);
createResource(client, "groups/group-a").delete();
createResource(client, "groups/group-c").delete();
client.destroy();
}
/**
* Method description
*

View File

@@ -35,6 +35,7 @@ package sonia.scm.it;
//~--- non-JDK imports --------------------------------------------------------
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
@@ -59,14 +60,6 @@ import com.sun.jersey.api.client.WebResource;
public class GroupPermissionITCase extends AbstractPermissionITCaseBase<Group>
{
/***
*
*
* Group get failed ????
*
*
*/
/**
* Constructs ...
*
@@ -80,6 +73,20 @@ public class GroupPermissionITCase extends AbstractPermissionITCaseBase<Group>
//~--- methods --------------------------------------------------------------
/**
* Method description
*
*/
@AfterClass
public static void cleanup()
{
Client client = createClient();
authenticateAdmin(client);
createResource(client, "groups/test-group").delete();
client.destroy();
}
/**
* Method description
*

View File

@@ -35,6 +35,7 @@ package sonia.scm.it;
//~--- non-JDK imports --------------------------------------------------------
import org.junit.AfterClass;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
@@ -52,6 +53,7 @@ import static sonia.scm.it.IntegrationTestUtil.*;
//~--- JDK imports ------------------------------------------------------------
import com.sun.jersey.api.client.Client;
import com.sun.jersey.api.client.ClientResponse;
import com.sun.jersey.api.client.GenericType;
import com.sun.jersey.api.client.WebResource;
@@ -81,6 +83,33 @@ public class RepositoryITCase extends AbstractAdminITCaseBase
//~--- methods --------------------------------------------------------------
/**
* Method description
*
*/
@AfterClass
public static void cleanup()
{
Client client = createClient();
authenticateAdmin(client);
Collection<Repository> repositories =
createResource(client, "repositories").get(
new GenericType<Collection<Repository>>() {}
);
if (repositories != null)
{
for (Repository r : repositories)
{
createResource(client, "repositories/" + r.getId()).delete();
}
}
client.destroy();
}
/**
* Method description
*

View File

@@ -35,6 +35,7 @@ package sonia.scm.it;
//~--- non-JDK imports --------------------------------------------------------
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
@@ -121,6 +122,20 @@ public class RepositorySimplePermissionITCase
client.destroy();
}
/**
* Method description
*
*/
@AfterClass
public static void removeTestRepoistory()
{
Client client = createClient();
authenticateAdmin(client);
createResource(client, "repositories/" + REPOSITORY_UUID).delete();
client.destroy();
}
/**
* Method description
*

View File

@@ -35,6 +35,7 @@ package sonia.scm.it;
//~--- non-JDK imports --------------------------------------------------------
import org.junit.AfterClass;
import org.junit.Test;
import sonia.scm.ScmState;
@@ -64,6 +65,20 @@ import javax.ws.rs.core.MediaType;
public class UserITCase extends AbstractAdminITCaseBase
{
/**
* Method description
*
*/
@AfterClass
public static void cleanup()
{
Client client = createClient();
authenticateAdmin(client);
createResource(client, "users/slarti").delete();
client.destroy();
}
/**
* Method description
*