aboutsummaryrefslogtreecommitdiff
path: root/flow-core/src/test/scala/ch/jodersky/flow/PseudoTerminal.scala
diff options
context:
space:
mode:
authorJakob Odersky <jakob@odersky.com>2017-01-08 21:16:25 +0100
committerJakob Odersky <jakob@odersky.com>2017-01-21 17:22:10 -0800
commit23959966760174477a6b0fcbf9dd1e8ef37c643b (patch)
tree9a0ee44eb43a8c13af57b0d06313f3aabf9e4555 /flow-core/src/test/scala/ch/jodersky/flow/PseudoTerminal.scala
parent6c371ba6d69c891c1f0d6df00bb643e1d543cc9d (diff)
downloadakka-serial-23959966760174477a6b0fcbf9dd1e8ef37c643b.tar.gz
akka-serial-23959966760174477a6b0fcbf9dd1e8ef37c643b.tar.bz2
akka-serial-23959966760174477a6b0fcbf9dd1e8ef37c643b.zip
Rename project to akka-serial
Diffstat (limited to 'flow-core/src/test/scala/ch/jodersky/flow/PseudoTerminal.scala')
-rw-r--r--flow-core/src/test/scala/ch/jodersky/flow/PseudoTerminal.scala43
1 files changed, 0 insertions, 43 deletions
diff --git a/flow-core/src/test/scala/ch/jodersky/flow/PseudoTerminal.scala b/flow-core/src/test/scala/ch/jodersky/flow/PseudoTerminal.scala
deleted file mode 100644
index 8e891ae..0000000
--- a/flow-core/src/test/scala/ch/jodersky/flow/PseudoTerminal.scala
+++ /dev/null
@@ -1,43 +0,0 @@
-package ch.jodersky.flow
-
-import java.io.{File, IOException}
-import java.nio.file.Files
-
-import scala.concurrent.duration._
-import scala.sys.process._
-import scala.util.control.NonFatal
-
-trait PseudoTerminal {
-
- final val SetupTimeout = 100.milliseconds
-
- def withEcho[A](action: (String, SerialSettings) => A): A = {
- val dir = Files.createTempDirectory("flow-pty").toFile
- val pty = new File(dir, "pty")
-
- val socat = try {
- val s = Seq(
- "socat",
- "-d -d",
- s"exec:cat,pty,raw,b115200,echo=0",
- s"pty,raw,b115200,echo=0,link=${pty.getAbsolutePath}"
- ).run(ProcessLogger(println(_)), false)
- Thread.sleep(SetupTimeout.toMillis) // allow ptys to set up
- s
- } catch {
- case NonFatal(ex) =>
- throw new IOException(
- "Error running echo service, make sure the program 'socat' is installed", ex)
- }
-
- try {
- val result = action(pty.getAbsolutePath, SerialSettings(baud = 115200))
- Thread.sleep(SetupTimeout.toMillis) // allow for async cleanup before destroying ptys
- result
- } finally {
- socat.destroy()
- dir.delete()
- }
- }
-
-}