tuxji commented on code in PR #1108:
URL: https://github.com/apache/daffodil/pull/1108#discussion_r1396287845


##########
daffodil-test-integration/src/test/scala/org/apache/daffodil/cliTest/TestCLIDebugger.scala:
##########
@@ -22,19 +22,72 @@ import java.nio.file.Files
 
 import org.apache.daffodil.cli.Main.ExitCode
 import org.apache.daffodil.cli.cliTest.Util._
+import org.apache.daffodil.lib.Implicits._
 
 import net.sf.expectit.matcher.Matchers.regexp
 import org.junit.Test
 
+/**
+ * Tests specific to the CLI debugger
+ *
+ * Note that all tests set "fork = true" because SBT creates a class loader 
with two versions of
+ * jline, one a dependency of SBT and one a dependency of Daffodil. With these 
two versions on
+ * the classpath, sometimes a class is found in one version of jline and 
sometimes in another,
+ * which causes compatibility issues and leads to exceptions being thrown. By 
forking, we no
+ * longer use SBTs classloader and avoid the issue entirely.

Review Comment:
   * SBT's



##########
daffodil-test-integration/src/test/scala/org/apache/daffodil/cliTest/TestCLIDebugger.scala:
##########
@@ -22,19 +22,72 @@ import java.nio.file.Files
 
 import org.apache.daffodil.cli.Main.ExitCode
 import org.apache.daffodil.cli.cliTest.Util._
+import org.apache.daffodil.lib.Implicits._
 
 import net.sf.expectit.matcher.Matchers.regexp
 import org.junit.Test
 
+/**
+ * Tests specific to the CLI debugger
+ *
+ * Note that all tests set "fork = true" because SBT creates a class loader 
with two versions of
+ * jline, one a dependency of SBT and one a dependency of Daffodil. With these 
two versions on
+ * the classpath, sometimes a class is found in one version of jline and 
sometimes in another,
+ * which causes compatibility issues and leads to exceptions being thrown. By 
forking, we no
+ * longer use SBTs classloader and avoid the issue entirely.
+ *
+ * Note that because we fork, these tests are put it daffodil-test-integration 
instead of
+ * daffodil-cli, since this project reqiures the daffodil CLI to be staged and 
disables parallel
+ * execution to reduce memory requirements.

Review Comment:
   Fix typos (it, reqiures):
   
   ```text
    * Note that because we fork, these tests are put in 
daffodil-test-integration instead of
    * daffodil-cli, since this project requires the daffodil CLI to be staged 
and disables parallel
    * execution to reduce memory requirements.
   ```



##########
daffodil-test-integration/src/test/scala/org/apache/daffodil/cliTest/TestCLIDebugger.scala:
##########
@@ -22,19 +22,72 @@ import java.nio.file.Files
 
 import org.apache.daffodil.cli.Main.ExitCode
 import org.apache.daffodil.cli.cliTest.Util._
+import org.apache.daffodil.lib.Implicits._
 
 import net.sf.expectit.matcher.Matchers.regexp
 import org.junit.Test
 
+/**
+ * Tests specific to the CLI debugger
+ *
+ * Note that all tests set "fork = true" because SBT creates a class loader 
with two versions of
+ * jline, one a dependency of SBT and one a dependency of Daffodil. With these 
two versions on
+ * the classpath, sometimes a class is found in one version of jline and 
sometimes in another,
+ * which causes compatibility issues and leads to exceptions being thrown. By 
forking, we no
+ * longer use SBTs classloader and avoid the issue entirely.
+ *
+ * Note that because we fork, these tests are put it daffodil-test-integration 
instead of
+ * daffodil-cli, since this project reqiures the daffodil CLI to be staged and 
disables parallel
+ * execution to reduce memory requirements.
+ *
+ * Additionally, because we now fork, the forked process uses normal 
stdin/stdout and so the
+ * CLIDebuggerRunner uses jline to find the best Terminal to use, instead of 
using a
+ * DumbTerminal like when we don't fork. But the fancy terminal that jline 
fines fails on

Review Comment:
   fines -> finds



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to