DefinitionDocumentResolverDefault extends DocumentResolver { public String apply(String definitionName) { if (!config.isInterDocumentCrossReferencesEnabled() || context.getOutputPath() == null) return null; else return defaultString(config.getInterDocumentCrossReferencesPrefix()) + definitionDocumentNameResolver.apply(definitionName); } DefinitionDocumentResolverDefault(Swagger2MarkupConverter.SwaggerContext context); String apply(String definitionName);  }
@Test public void testDefault() { Swagger2MarkupConverter.SwaggerContext context = createContext(); assertThat(new DefinitionDocumentResolverDefault(context).apply("DefinitionName")).isNull(); }
@Test public void testWithSeparatedDefinitions() { Swagger2MarkupConfig config = new Swagger2MarkupConfigBuilder() .withSeparatedDefinitions() .build(); Swagger2MarkupConverter.SwaggerContext context = createContext(config); assertThat(new DefinitionDocumentResolverDefault(context).apply("DefinitionName")).isNull(); }
@Test public void testWithSeparatedDefinitionsAndInterDocumentCrossReferences() { Swagger2MarkupConfig config = new Swagger2MarkupConfigBuilder() .withSeparatedDefinitions() .withInterDocumentCrossReferences() .build(); Swagger2MarkupConverter.SwaggerContext context = createContext(config); context.setOutputPath(Paths.get("/tmp")); assertThat(new DefinitionDocumentResolverDefault(context).apply("DefinitionName")) .isEqualTo("definitions" + fileSeparator + "DefinitionName.adoc"); }
@Test public void testWithInterDocumentCrossReferences() { Swagger2MarkupConfig config = new Swagger2MarkupConfigBuilder() .withInterDocumentCrossReferences() .build(); Swagger2MarkupConverter.SwaggerContext context = createContext(config); context.setOutputPath(Paths.get("/tmp")); assertThat(new DefinitionDocumentResolverDefault(context).apply("DefinitionName")) .isEqualTo("definitions.adoc"); }
@Test public void testWithInterDocumentCrossReferencesAndPrefix() { Swagger2MarkupConfig config = new Swagger2MarkupConfigBuilder() .withInterDocumentCrossReferences("prefix_") .build(); Swagger2MarkupConverter.SwaggerContext context = createContext(config); context.setOutputPath(Paths.get("/tmp")); assertThat(new DefinitionDocumentResolverDefault(context).apply("DefinitionName")) .isEqualTo("prefix_definitions.adoc"); }
@Test public void testWithInterDocumentCrossReferencesAndMarkdown() { Swagger2MarkupConfig config = new Swagger2MarkupConfigBuilder() .withInterDocumentCrossReferences() .withMarkupLanguage(MarkupLanguage.MARKDOWN) .build(); Swagger2MarkupConverter.SwaggerContext context = createContext(config); context.setOutputPath(Paths.get("/tmp")); assertThat(new DefinitionDocumentResolverDefault(context).apply("DefinitionName")) .isEqualTo("definitions.md"); }