Skip to content

Commit

Permalink
Added test cases to Fusion Class.
Browse files Browse the repository at this point in the history
  • Loading branch information
knighto82 committed Nov 21, 2024
1 parent 0683a7e commit 96cf3d1
Show file tree
Hide file tree
Showing 2 changed files with 45 additions and 2 deletions.
4 changes: 3 additions & 1 deletion src/main/java/io/github/jpmorganchase/fusion/Fusion.java
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,8 @@
import java.util.Objects;
import lombok.Builder;

import static io.github.jpmorganchase.fusion.filter.DatasetFilter.filterDatasets;

/**
* Class representing the Fusion API, providing methods that correspond to available API endpoints
*/
Expand Down Expand Up @@ -199,7 +201,7 @@ public Map<String, DataProduct> listProducts() {
public Map<String, Dataset> listDatasets(String catalogName, String contains, boolean idContains) {
String url = String.format("%1scatalogs/%2s/datasets", this.rootURL, catalogName);
String json = this.api.callAPI(url);
return DatasetFilter.filterDatasets(responseParser.parseDatasetResponse(json), contains, idContains);
return filterDatasets(responseParser.parseDatasetResponse(json), contains, idContains);
}

/**
Expand Down
43 changes: 42 additions & 1 deletion src/test/java/io/github/jpmorganchase/fusion/FusionTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,44 @@ public void testListDatasetsInteraction() throws Exception {
assertThat(actualResponse, is(equalTo(stubResponse)));
}

@Test
public void testListDatasetsInteractionWithContainsForId() throws Exception {
Fusion f = stubFusion();

Map<String, Dataset> stubResponse = setupDatasetTest("common");

Map<String, Dataset> actualResponse = f.listDatasets("common", "dataset1", true);
assertThat(actualResponse, is(equalTo(stubResponse)));
}

@Test
public void testListDatasetsInteractionWithContainsForIdNoMatch() throws Exception {
Fusion f = stubFusion();

setupDatasetTest("common");
Map<String, Dataset> actualResponse = f.listDatasets("common", "dataset2", true);
assertThat(actualResponse, is(equalTo(new HashMap<>())));
}

@Test
public void testListDatasetsInteractionWithContains() throws Exception {
Fusion f = stubFusion();

Map<String, Dataset> stubResponse = setupDatasetTest("common");

Map<String, Dataset> actualResponse = f.listDatasets("common", "datasetOne", false);
assertThat(actualResponse, is(equalTo(stubResponse)));
}

@Test
public void testListDatasetsInteractionWithContainsNoMatch() throws Exception {
Fusion f = stubFusion();

setupDatasetTest("common");
Map<String, Dataset> actualResponse = f.listDatasets("common", "datasetTwo", false);
assertThat(actualResponse, is(equalTo(new HashMap<>())));
}

@Test
public void testListDatasetsInteractionWithNonDefaultCatalog() throws Exception {
Fusion f = stubFusion();
Expand All @@ -65,7 +103,10 @@ public void testListDatasetsInteractionWithNonDefaultCatalog() throws Exception
private Map<String, Dataset> setupDatasetTest(String catalog) throws Exception {

Map<String, Dataset> stubResponse = new HashMap<>();
stubResponse.put("first", Dataset.builder().identifier("dataset1").build());
stubResponse.put("dataset1", Dataset.builder().identifier("dataset1")
.description("Description datasetOne")
.title("Title datasetOne")
.build());

when(apiManager.callAPI(String.format("%1scatalogs/%2s/datasets", config.getRootURL(), catalog)))
.thenReturn("{\"key\":value}");
Expand Down

0 comments on commit 96cf3d1

Please sign in to comment.