From a44272eeba7581ddf5358a6c96e43e72f15ac8ee Mon Sep 17 00:00:00 2001 From: James Strachan Date: Wed, 21 Mar 2012 21:59:00 +0000 Subject: [PATCH] add debug logging to highlight the exception in kdoc if it can't find functions in the model and added a test case --- .../jetbrains/kotlin/doc/model/KotlinModel.kt | 3 +- .../test/kotlin/test/kotlin/kdoc/KDocTest.kt | 42 +++++++++++++++++++ 2 files changed, 44 insertions(+), 1 deletion(-) create mode 100644 libraries/kdoc/src/test/kotlin/test/kotlin/kdoc/KDocTest.kt diff --git a/libraries/kdoc/src/main/kotlin/org/jetbrains/kotlin/doc/model/KotlinModel.kt b/libraries/kdoc/src/main/kotlin/org/jetbrains/kotlin/doc/model/KotlinModel.kt index 997e78f875b..7776c02031c 100644 --- a/libraries/kdoc/src/main/kotlin/org/jetbrains/kotlin/doc/model/KotlinModel.kt +++ b/libraries/kdoc/src/main/kotlin/org/jetbrains/kotlin/doc/model/KotlinModel.kt @@ -267,7 +267,8 @@ class KModel(var context: BindingContext, val config: KDocConfig) { } } } catch (e: Throwable) { - println("Caught exception finding function declarations on $owner") + println("Caught exception finding function declarations on $owner $e") + e.printStackTrace() } } diff --git a/libraries/kdoc/src/test/kotlin/test/kotlin/kdoc/KDocTest.kt b/libraries/kdoc/src/test/kotlin/test/kotlin/kdoc/KDocTest.kt new file mode 100644 index 00000000000..ed26d2d3887 --- /dev/null +++ b/libraries/kdoc/src/test/kotlin/test/kotlin/kdoc/KDocTest.kt @@ -0,0 +1,42 @@ +package test.kotlin.kdoc + +import org.jetbrains.kotlin.doc.KDocArguments +import org.jetbrains.kotlin.doc.KDocCompiler + +import kotlin.test.assertTrue + +import org.junit.Test +import java.io.File + +/** + */ +class KDocTest { + Test fun generateKDocForStandardLibrary() { + var moduleName = "ApiDocsModule.kt" + var dir = "." + if (!File(moduleName).exists()) { + dir = "kdoc" + moduleName = dir + "/" + moduleName + assertTrue(File(moduleName).exists(), "Cannot find file $moduleName") + } + val outDir = File(dir, "target/apidocs") + println("Generating library KDocs to $outDir") + + val args = KDocArguments() + args.setModule(moduleName) + args.setDocOutputDir(outDir.toString()) + args.setOutputDir("target/classes-stdlib") + + val config = args.docConfig + config.title = "Kotlin API" + config.ignorePackages.add("org.jetbrains.kotlin") + config.ignorePackages.add("java") + config.ignorePackages.add("jet") + config.ignorePackages.add("junit") + config.ignorePackages.add("sun") + config.ignorePackages.add("org") + + val compiler = KDocCompiler() + compiler.exec(System.out, args) + } +} \ No newline at end of file