Skip to content

Commit

Permalink
RW-593: Added repository list filters API unit tests.
Browse files Browse the repository at this point in the history
Added new unit tests for repository list filters API support:

- RUserDefaultRepositoryFileCallsTest
- RUserDefaultRepositoryDirectoryCallsTest
- RUserExternalRepositoryFileCallsTest
- RUserExternalRepositoryDirectoryCallsTest
  • Loading branch information
david-russell committed Jan 22, 2015
1 parent 655a87b commit abfc64d
Show file tree
Hide file tree
Showing 5 changed files with 596 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@

import com.revo.deployr.DeployrUtil;
import com.revo.deployr.client.RClient;
import com.revo.deployr.client.RClientException;
import com.revo.deployr.client.RRepositoryDirectory;
import com.revo.deployr.client.RRepositoryFile;
import com.revo.deployr.client.RUser;
Expand Down Expand Up @@ -287,6 +288,161 @@ public void testUserRepositoryListDirectoriesAndFiles() {
}
}

/**
* Test RUserRepositoryFileCalls.listFiles(categoryFilter, directoryFilter).
*/
@Test
public void testUserRepositoryListDirectoriesGoodFilters() {

// Test variables.
List<RRepositoryDirectory> listDirectories = null;
List<RRepositoryFile> listFilesExampleDirectory = null;
List<RRepositoryFile> listFilesExampleScripts = null;
List<RRepositoryFile> listFilesExampleBinary = null;
String exampleFraudScoreDirectory = "example-fraud-score";
int fraudExampleTotalFileCount = 2;
int fraudExampleScriptFileCount = 1;
boolean fraudExampleScriptsAreScripts = false;
int fraudExampleBinaryFileCount = 1;
boolean fraudExampleBinaryAreBinary = false;

// Test error handling.
Exception exception = null;
String exceptionMsg = "";
Exception cleanupException = null;
String cleanupExceptionMsg = "";

// Test.

try {
listDirectories =
rUser.listDirectories((RRepositoryFile.Category) null,
exampleFraudScoreDirectory);
for(RRepositoryDirectory dir : listDirectories) {
if(dir.about().name.equals(exampleFraudScoreDirectory)) {
listFilesExampleDirectory = dir.about().files;
}
}
} catch (Exception ex) {
exception = ex;
exceptionMsg = "rUser.listDirectories(null, directory) failed: ";
}

if(exception == null) {

try {

listDirectories =
rUser.listDirectories(RRepositoryFile.Category.RSCRIPT,
exampleFraudScoreDirectory);
for(RRepositoryDirectory dir : listDirectories) {
if(dir.about().name.equals(exampleFraudScoreDirectory)) {
listFilesExampleScripts = dir.about().files;
break;
}
}

for(RRepositoryFile scriptFile : listFilesExampleScripts) {
if(scriptFile.about().category !=
RRepositoryFile.Category.RSCRIPT) {
fraudExampleScriptsAreScripts = false;
break;
} else {
fraudExampleScriptsAreScripts = true;
}
}
} catch (Exception ex) {
exception = ex;
exceptionMsg = "rUser.listFiles(RSCRIPT, directory) failed: ";
}
}

if(exception == null) {

try {

listDirectories =
rUser.listDirectories(RRepositoryFile.Category.RBINARY,
exampleFraudScoreDirectory);
for(RRepositoryDirectory dir : listDirectories) {
if(dir.about().name.equals(exampleFraudScoreDirectory)) {
listFilesExampleBinary = dir.about().files;
}
}

for(RRepositoryFile binFile : listFilesExampleBinary) {
if(binFile.about().category !=
RRepositoryFile.Category.RBINARY) {
fraudExampleBinaryAreBinary = false;
break;
} else {
fraudExampleBinaryAreBinary = true;
}
}
} catch (Exception ex) {
exception = ex;
exceptionMsg = "rUser.listFiles(RBINARY, directory) failed: ";
}
}

if (exception == null) {
// Test assertions.
assertEquals(fraudExampleTotalFileCount, listFilesExampleDirectory.size());
assertEquals(fraudExampleScriptFileCount, listFilesExampleScripts.size());
assertTrue(fraudExampleScriptsAreScripts);
assertEquals(fraudExampleBinaryFileCount, listFilesExampleBinary.size());
assertTrue(fraudExampleBinaryAreBinary);
} else {
fail(exceptionMsg + exception.getMessage());
}

// Test cleanup errors.
if (cleanupException != null) {
fail(cleanupExceptionMsg + cleanupException.getMessage());
}
}

/**
* Test RUserRepositoryDirectoryCalls.listDirectories(categoryFilter, directoryFilter).
*/
@Test
public void testUserRepositoryListDirectoriesBadFilters() {

// Test variables.
List<RRepositoryDirectory> listDirectories = null;
RClientException clientEx = null;

// Test error handling.
Exception exception = null;
String exceptionMsg = "";
Exception cleanupException = null;
String cleanupExceptionMsg = "";

// Test.
try {
listDirectories =
rUser.listDirectories((RRepositoryFile.Category) null,
"dir-not-found");
} catch (RClientException cex) {
clientEx = cex;
} catch (Exception ex) {
exception = ex;
exceptionMsg = "rUser.listDirectories(null, dir-not-found) failed: ";
}

if (exception == null) {
// Test assertions.
assertNotNull(clientEx);
} else {
fail(exceptionMsg + exception.getMessage());
}

// Test cleanup errors.
if (cleanupException != null) {
fail(cleanupExceptionMsg + cleanupException.getMessage());
}
}

/**
* Test of copyDirectory method, of class RUserRepositoryDirectoryCalls.
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@

import com.revo.deployr.DeployrUtil;
import com.revo.deployr.client.RClient;
import com.revo.deployr.client.RClientException;
import com.revo.deployr.client.RRepositoryFile;
import com.revo.deployr.client.RUser;
import com.revo.deployr.client.auth.basic.RBasicAuthentication;
Expand Down Expand Up @@ -263,6 +264,141 @@ public void testUserRepositoryListFiles() {
}
}

/**
* Test RUserRepositoryFileCalls.listFiles(categoryFilter, directoryFilter).
*/
@Test
public void testUserRepositoryListFilesGoodFilters() {

// Test variables.
List<RRepositoryFile> listFilesExampleDirectory = null;
List<RRepositoryFile> listFilesExampleScripts = null;
List<RRepositoryFile> listFilesExampleBinary = null;
String exampleFraudScoreDirectory = "example-fraud-score";
int fraudExampleTotalFileCount = 2;
int fraudExampleScriptFileCount = 1;
boolean fraudExampleScriptsAreScripts = false;
int fraudExampleBinaryFileCount = 1;
boolean fraudExampleBinaryAreBinary = false;

// Test error handling.
Exception exception = null;
String exceptionMsg = "";
Exception cleanupException = null;
String cleanupExceptionMsg = "";

// Test.
try {
listFilesExampleDirectory =
rUser.listFiles((RRepositoryFile.Category) null,
exampleFraudScoreDirectory);
} catch (Exception ex) {
exception = ex;
exceptionMsg = "rUser.listFiles(null, directory) failed: ";
}

if(exception == null) {

try {
listFilesExampleScripts =
rUser.listFiles(RRepositoryFile.Category.RSCRIPT,
exampleFraudScoreDirectory);

for(RRepositoryFile scriptFile : listFilesExampleScripts) {
if(scriptFile.about().category !=
RRepositoryFile.Category.RSCRIPT) {
fraudExampleScriptsAreScripts = false;
break;
} else {
fraudExampleScriptsAreScripts = true;
}
}
} catch (Exception ex) {
exception = ex;
exceptionMsg = "rUser.listFiles(RSCRIPT, directory) failed: ";
}
}

if(exception == null) {

try {
listFilesExampleBinary =
rUser.listFiles(RRepositoryFile.Category.RBINARY,
exampleFraudScoreDirectory);

for(RRepositoryFile binFile : listFilesExampleBinary) {
if(binFile.about().category !=
RRepositoryFile.Category.RBINARY) {
fraudExampleBinaryAreBinary = false;
break;
} else {
fraudExampleBinaryAreBinary = true;
}
}
} catch (Exception ex) {
exception = ex;
exceptionMsg = "rUser.listFiles(RSCRIPT, directory) failed: ";
}
}

if (exception == null) {
// Test assertions.
assertEquals(fraudExampleTotalFileCount, listFilesExampleDirectory.size());
assertEquals(fraudExampleScriptFileCount, listFilesExampleScripts.size());
assertTrue(fraudExampleScriptsAreScripts);
assertEquals(fraudExampleBinaryFileCount, listFilesExampleBinary.size());
assertTrue(fraudExampleBinaryAreBinary);
} else {
fail(exceptionMsg + exception.getMessage());
}

// Test cleanup errors.
if (cleanupException != null) {
fail(cleanupExceptionMsg + cleanupException.getMessage());
}
}

/**
* Test RUserRepositoryFileCalls.listFiles(categoryFilter, directoryFilter).
*/
@Test
public void testUserRepositoryListFilesBadFilters() {

// Test variables.
List<RRepositoryFile> listFiles = null;
RClientException clientEx = null;

// Test error handling.
Exception exception = null;
String exceptionMsg = "";
Exception cleanupException = null;
String cleanupExceptionMsg = "";

// Test.
try {
listFiles =
rUser.listFiles((RRepositoryFile.Category) null,
"dir-not-found");
} catch (RClientException cex) {
clientEx = cex;
} catch (Exception ex) {
exception = ex;
exceptionMsg = "rUser.listFiles(null, dir-not-found) failed: ";
}

if (exception == null) {
// Test assertions.
assertNotNull(clientEx);
} else {
fail(exceptionMsg + exception.getMessage());
}

// Test cleanup errors.
if (cleanupException != null) {
fail(cleanupExceptionMsg + cleanupException.getMessage());
}
}

/**
* Test of listFiles method, of class RUserRepositoryFileCalls.
*/
Expand Down
Loading

0 comments on commit abfc64d

Please sign in to comment.