Skip to content

Commit

Permalink
GH-227 - Polishing.
Browse files Browse the repository at this point in the history
Tightened test cases for the ApplicationModuleExporter.
  • Loading branch information
odrotbohm committed Jun 30, 2023
1 parent 9bfcf71 commit dc1ed87
Showing 1 changed file with 23 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -17,30 +17,48 @@

import static org.assertj.core.api.Assertions.*;

import java.util.List;

import org.junit.jupiter.api.Test;
import org.springframework.modulith.core.ApplicationModules;

import com.acme.myproject.Application;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.jayway.jsonpath.JsonPath;

/**
* Unit tests for {@link ApplicationModulesExporter}.
*
* @author Oliver Drotbohm
*/
public class ApplicationModulesExporterUnitTests {
class ApplicationModulesExporterUnitTests {

private static final ApplicationModulesExporter EXPORTER = new ApplicationModulesExporter(
ApplicationModules.of(Application.class));
private static final JsonPath NAMED_INTERFACES = JsonPath.compile("$..namedInterfaces");

@Test // #119
void rendersApplicationModulesAsJson() {

var exporter = new ApplicationModulesExporter(ApplicationModules.of(Application.class));

assertThatNoException().isThrownBy(() -> {
new ObjectMapper().readTree(exporter.toFullJson());
new ObjectMapper().readTree(EXPORTER.toJson());
});
}

@Test // #227
void simpleRenderingDoesNotListNamedInterfaces() {
assertThat((List<?>) NAMED_INTERFACES.read(EXPORTER.toJson())).isEmpty();
}

@Test // #227
void fullRenderingListsNamedInterfaces() {
assertThat((List<?>) NAMED_INTERFACES.read(EXPORTER.toFullJson())).isNotEmpty();
}

@Test // #227
void fullRenderingProducesValidJson() {
assertThatNoException().isThrownBy(() -> {
new ObjectMapper().readTree(exporter.toJson());
new ObjectMapper().readTree(EXPORTER.toJson());
});
}
}

0 comments on commit dc1ed87

Please sign in to comment.