Packages

class Expect[R] extends AnyRef

Source
Expect.scala
Linear Supertypes
AnyRef, Any
Type Hierarchy
Ordering
  1. Grouped
  2. Alphabetic
  3. By Inheritance
Inherited
  1. Expect
  2. AnyRef
  3. Any
Implicitly
  1. by dslToCoreExpect
  2. by any2stringadd
  3. by StringFormat
  4. by Ensuring
  5. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Expect(command: String, defaultValue: R)
  2. new Expect(command: String, defaultValue: R, config: Config)
  3. new Expect(command: String, defaultValue: R, settings: Settings)
  4. new Expect(command: Seq[String], defaultValue: R, config: Config)
  5. new Expect(command: Seq[String], defaultValue: R, settings: Settings = new Settings())

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String
    Implicit
    This member is added by an implicit conversion from Expect[R] to any2stringadd[Expect[R]] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (Expect[R], B)
    Implicit
    This member is added by an implicit conversion from Expect[R] to ArrowAssoc[Expect[R]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  6. def addActions(block: (Expect[R]) ⇒ Unit): Unit
  7. def addExpectBlock(block: (Expect[R]) ⇒ Unit): Unit
  8. def addWhen(block: (Expect[R]) ⇒ Unit): Unit
  9. def addWhens(block: (Expect[R]) ⇒ Unit): Unit
  10. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  11. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  12. def collect[T](pf: PartialFunction[R, T]): core.Expect[T]

    Creates a new Expect by mapping the result of the current Expect, if the given partial function is defined at that value.

    Creates a new Expect by mapping the result of the current Expect, if the given partial function is defined at that value.

    If the current Expect contains a value for which the partial function is defined, the new Expect will also hold that value. Otherwise, the resulting Expect will fail with a NoSuchElementException.

    T

    the type of the returned Expect

    pf

    the PartialFunction to apply to the result of this Expect

    returns

    an Expect holding the result of application of the PartialFunction or a NoSuchElementException

    Implicit
    This member is added by an implicit conversion from Expect[R] to core.Expect[R] performed by method dslToCoreExpect in work.martins.simon.expect.dsl.
    Definition Classes
    Expect
  13. val command: Seq[String]
  14. val defaultValue: R
  15. def ensuring(cond: (Expect[R]) ⇒ Boolean, msg: ⇒ Any): Expect[R]
    Implicit
    This member is added by an implicit conversion from Expect[R] to Ensuring[Expect[R]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  16. def ensuring(cond: (Expect[R]) ⇒ Boolean): Expect[R]
    Implicit
    This member is added by an implicit conversion from Expect[R] to Ensuring[Expect[R]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  17. def ensuring(cond: Boolean, msg: ⇒ Any): Expect[R]
    Implicit
    This member is added by an implicit conversion from Expect[R] to Ensuring[Expect[R]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  18. def ensuring(cond: Boolean): Expect[R]
    Implicit
    This member is added by an implicit conversion from Expect[R] to Ensuring[Expect[R]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  19. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  20. def equals(other: Any): Boolean
    Definition Classes
    Expect → AnyRef → Any
  21. def exit(): Unit
  22. def expect(pattern: Timeout.type)(f: ⇒ Unit): Unit
  23. def expect(pattern: EndOfFile.type, readFrom: FromInputStream)(f: ⇒ Unit): Unit
  24. def expect(pattern: EndOfFile.type)(f: ⇒ Unit): Unit
  25. def expect(pattern: Regex, readFrom: FromInputStream)(f: ⇒ Unit): Unit
  26. def expect(pattern: Regex)(f: ⇒ Unit): Unit
  27. def expect(pattern: String, readFrom: FromInputStream)(f: ⇒ Unit): Unit
  28. def expect(pattern: String)(f: ⇒ Unit): Unit
  29. def expect(readFrom: FromInputStream)(f: ⇒ Unit): Unit
  30. def expect(f: ⇒ Unit): Unit
  31. var expectBlock: Option[ExpectBlock[R]]
    Attributes
    protected
  32. val expectBlocks: ExpectBlock[R]*
    Implicit
    This member is added by an implicit conversion from Expect[R] to core.Expect[R] performed by method dslToCoreExpect in work.martins.simon.expect.dsl.
    Definition Classes
    Expect
  33. def filter(p: (R) ⇒ Boolean): core.Expect[R]

    Creates a new Expect by filtering its result with a predicate.

    Creates a new Expect by filtering its result with a predicate.

    If the current Expect result satisfies the predicate, the new Expect will also hold that result. Otherwise, the resulting Expect will fail with a NoSuchElementException.

    p

    the predicate to apply to the result of this Expect

    Implicit
    This member is added by an implicit conversion from Expect[R] to core.Expect[R] performed by method dslToCoreExpect in work.martins.simon.expect.dsl.
    Definition Classes
    Expect
  34. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  35. def flatMap[T](f: (R) ⇒ core.Expect[T]): core.Expect[T]

    Creates a new Expect by applying a function to the returned result of this Expect, and returns the result of the function as the new Expect.

    Creates a new Expect by applying a function to the returned result of this Expect, and returns the result of the function as the new Expect.

    T

    the type of the returned Expect

    f

    the function which will be applied to the returned result of this Expect

    returns

    the Expect returned as the result of the application of the function f

    Implicit
    This member is added by an implicit conversion from Expect[R] to core.Expect[R] performed by method dslToCoreExpect in work.martins.simon.expect.dsl.
    Definition Classes
    Expect
  36. def flatten[T](implicit ev: <:<[R, core.Expect[T]]): core.Expect[T]

    Creates a new Expect with one level of nesting flattened, this method is equivalent to flatMap(identity).

    Creates a new Expect with one level of nesting flattened, this method is equivalent to flatMap(identity).

    T

    the type of the returned Expect

    returns

    an Expect with one level of nesting flattened

    Implicit
    This member is added by an implicit conversion from Expect[R] to core.Expect[R] performed by method dslToCoreExpect in work.martins.simon.expect.dsl.
    Definition Classes
    Expect
  37. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from Expect[R] to StringFormat[Expect[R]] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  38. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  39. def hashCode(): Int
    Definition Classes
    Expect → AnyRef → Any
  40. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  41. def map[T](f: (R) ⇒ T): core.Expect[T]

    Creates a new Expect by applying a function to the returned result of this Expect.

    Creates a new Expect by applying a function to the returned result of this Expect.

    T

    the type of the returned Expect

    f

    the function which will be applied to the returned result of this Expect

    returns

    an Expect which will return the result of the application of the function f

    Implicit
    This member is added by an implicit conversion from Expect[R] to core.Expect[R] performed by method dslToCoreExpect in work.martins.simon.expect.dsl.
    Definition Classes
    Expect
  42. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  43. final def notify(): Unit
    Definition Classes
    AnyRef
  44. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  45. def returning(result: (Match) ⇒ R): Unit
  46. def returning(result: ⇒ R): Unit
  47. def returningExpect(result: (Match) ⇒ core.Expect[R]): Unit
  48. def returningExpect(result: ⇒ core.Expect[R]): Unit
  49. def run(process: RichProcess)(implicit ex: ExecutionContext): Future[R]
    Implicit
    This member is added by an implicit conversion from Expect[R] to core.Expect[R] performed by method dslToCoreExpect in work.martins.simon.expect.dsl.
    Definition Classes
    Expect
  50. def run(settings: Settings)(implicit ex: ExecutionContext): Future[R]
    Implicit
    This member is added by an implicit conversion from Expect[R] to core.Expect[R] performed by method dslToCoreExpect in work.martins.simon.expect.dsl.
    Definition Classes
    Expect
  51. def run(timeout: FiniteDuration = settings.timeout, charset: Charset = settings.charset)(implicit ex: ExecutionContext): Future[R]
    Implicit
    This member is added by an implicit conversion from Expect[R] to core.Expect[R] performed by method dslToCoreExpect in work.martins.simon.expect.dsl.
    Definition Classes
    Expect
  52. def send(text: (Match) ⇒ String): Unit
  53. def send(text: String, sensitive: Boolean = false): Unit
  54. def sendln(text: (Match) ⇒ String): Unit
  55. def sendln(text: String, sensitive: Boolean = false): Unit
  56. val settings: Settings
  57. def structurallyEquals[RR >: R](other: core.Expect[RR]): Boolean

    Implicit
    This member is added by an implicit conversion from Expect[R] to core.Expect[R] performed by method dslToCoreExpect in work.martins.simon.expect.dsl.
    Definition Classes
    Expect
  58. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  59. def toCore: core.Expect[R]
  60. def toString(): String
    Definition Classes
    Expect → AnyRef → Any
  61. def transform[T](flatMapPF: PartialFunction[R, core.Expect[T]], mapPF: PartialFunction[R, T]): core.Expect[T]

    Transform this Expect result using the following strategy:

    Transform this Expect result using the following strategy:

    • if flatMapPF isDefinedAt for this expect result then the result is flatMapped using flatMapPF.
    • otherwise, if mapPF isDefinedAt for this expect result then the result is mapped using mapPF.
    • otherwise a NoSuchElementException is thrown where the result would be expected.

    This function is very useful when we need to flatMap this Expect for some values of its result type and map this Expect for some other values of its result type.

    To ensure you don't get NoSuchElementException you should take special care in ensuring:

    domain(flatMapPF) ∪ domain(mapPF) == domain(R)

    Remember that in the domain of R the defaultValue is also included.

    T

    the type of the returned Expect

    flatMapPF

    the function that will be applied when a flatMap is needed

    mapPF

    the function that will be applied when a map is needed

    returns

    a new Expect whose result is either flatMapped or mapped according to whether flatMapPF or mapPF is defined for the given result

    Implicit
    This member is added by an implicit conversion from Expect[R] to core.Expect[R] performed by method dslToCoreExpect in work.martins.simon.expect.dsl.
    Definition Classes
    Expect
    Example:
    1. def countFilesInFolder(folder: String): Expect[Either[String, Int]] = {
        val e = new Expect(s"ls -1 $$folder", Left("unknownError"): Either[String, Int])(
          ExpectBlock(
            StringWhen("access denied")(
              Returning(Left("Access denied"))
            ),
            RegexWhen("(?s)(.*)".r)(
              ReturningWithRegex(_.group(1).split("\n").length)
            )
          )
        )
        e
      }
      
      def ensureFolderIsEmpty(folder: String): Expect[Either[String, Unit]] = {
        countFilesInFolder(folder).transform({
          case Right(numberOfFiles) =>
            Expect(s"rm -r $$folder", Left("unknownError"): Either[String, Unit])(
              ExpectBlock(
                StringWhen("access denied")(
                  Returning(Left("Access denied"))
                ),
                EndOfFileWhen(
                  Returning(())
                )
              )
            )
        }, {
          case Left(l) => Left(l)
          case Right(numberOfFiles) if numberOfFiles == 0 => Right(())
        })
      }
  62. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  63. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  64. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  65. def when(pattern: Timeout.type)(f: ⇒ Unit): Unit
  66. def when(pattern: EndOfFile.type, readFrom: FromInputStream)(f: ⇒ Unit): Unit
  67. def when(pattern: EndOfFile.type)(f: ⇒ Unit): Unit
  68. def when(pattern: Regex, readFrom: FromInputStream)(f: ⇒ Unit): Unit
  69. def when(pattern: Regex)(f: ⇒ Unit): Unit
  70. def when(pattern: String, readFrom: FromInputStream)(f: ⇒ Unit): Unit
  71. def when(pattern: String)(f: ⇒ Unit): Unit
  72. var when: Option[When[R]]
    Attributes
    protected
  73. def withFilter(p: (R) ⇒ Boolean): core.Expect[R]

    Used by for-comprehensions.

    Used by for-comprehensions.

    Implicit
    This member is added by an implicit conversion from Expect[R] to core.Expect[R] performed by method dslToCoreExpect in work.martins.simon.expect.dsl.
    Definition Classes
    Expect
  74. def zip[T](that: core.Expect[T]): core.Expect[(R, T)]

    Zips the results of this and that Expect, and creates a new Expect holding the tuple of their results.

    Zips the results of this and that Expect, and creates a new Expect holding the tuple of their results.

    T

    the type of the returned Expect

    that

    the other Expect

    returns

    an Expect with the results of both Expects

    Implicit
    This member is added by an implicit conversion from Expect[R] to core.Expect[R] performed by method dslToCoreExpect in work.martins.simon.expect.dsl.
    Definition Classes
    Expect
  75. def zipWith[T, U](that: core.Expect[T])(f: (R, T) ⇒ U): core.Expect[U]

    Zips the results of this and that Expect using a function f, and creates a new Expect holding the result.

    Zips the results of this and that Expect using a function f, and creates a new Expect holding the result.

    T

    the type of the other Expect

    U

    the type of the resulting Expect

    that

    the other Expect

    f

    the function to apply to the results of this and that

    returns

    an Expect with the result of the application of f to the results of this and that

    Implicit
    This member is added by an implicit conversion from Expect[R] to core.Expect[R] performed by method dslToCoreExpect in work.martins.simon.expect.dsl.
    Definition Classes
    Expect
  76. def [B](y: B): (Expect[R], B)
    Implicit
    This member is added by an implicit conversion from Expect[R] to ArrowAssoc[Expect[R]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Shadowed Implicit Value Members

  1. val command: Seq[String]
    Implicit
    This member is added by an implicit conversion from Expect[R] to core.Expect[R] performed by method dslToCoreExpect in work.martins.simon.expect.dsl.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (expect: core.Expect[R]).command
    Definition Classes
    Expect
  2. val defaultValue: R
    Implicit
    This member is added by an implicit conversion from Expect[R] to core.Expect[R] performed by method dslToCoreExpect in work.martins.simon.expect.dsl.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (expect: core.Expect[R]).defaultValue
    Definition Classes
    Expect
  3. def equals(other: Any): Boolean

    Returns whether other is an Expect with the same command, the same defaultValue, the same settings and the same expects as this Expect.

    Returns whether other is an Expect with the same command, the same defaultValue, the same settings and the same expects as this Expect.

    In the cases that expects contains an Action with a function, eg. Returning, this method will return false, because equality is not defined for functions.

    The method structurallyEqual can be used to test that two expects contain the same structure.

    other

    the other Expect to compare this Expect to.

    Implicit
    This member is added by an implicit conversion from Expect[R] to core.Expect[R] performed by method dslToCoreExpect in work.martins.simon.expect.dsl.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (expect: core.Expect[R]).equals(other)
    Definition Classes
    Expect → AnyRef → Any
  4. def hashCode(): Int
    Implicit
    This member is added by an implicit conversion from Expect[R] to core.Expect[R] performed by method dslToCoreExpect in work.martins.simon.expect.dsl.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (expect: core.Expect[R]).hashCode()
    Definition Classes
    Expect → AnyRef → Any
  5. val settings: Settings
    Implicit
    This member is added by an implicit conversion from Expect[R] to core.Expect[R] performed by method dslToCoreExpect in work.martins.simon.expect.dsl.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (expect: core.Expect[R]).settings
    Definition Classes
    Expect
  6. def toString(): String
    Implicit
    This member is added by an implicit conversion from Expect[R] to core.Expect[R] performed by method dslToCoreExpect in work.martins.simon.expect.dsl.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (expect: core.Expect[R]).toString()
    Definition Classes
    Expect → AnyRef → Any

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion dslToCoreExpect from Expect[R] to core.Expect[R]

Inherited by implicit conversion any2stringadd from Expect[R] to any2stringadd[Expect[R]]

Inherited by implicit conversion StringFormat from Expect[R] to StringFormat[Expect[R]]

Inherited by implicit conversion Ensuring from Expect[R] to Ensuring[Expect[R]]

Inherited by implicit conversion ArrowAssoc from Expect[R] to ArrowAssoc[Expect[R]]

Transformations

Ungrouped