Skip to content

Instantly share code, notes, and snippets.

@lforite
Last active October 22, 2021 08:13
Show Gist options
  • Save lforite/645dc1ca899269bbc8785f8cf621005b to your computer and use it in GitHub Desktop.
Save lforite/645dc1ca899269bbc8785f8cf621005b to your computer and use it in GitHub Desktop.
Scala web series Pt. 1 testing and and or logic
"&& should respect AND boolean logic" in forAll() { (boolean1: Boolean, boolean2: Boolean) =>
val anyToken = Token(...)
val predicate1 = new AuthorizationPredicate {
override def evaluate(token: token): Boolean = boolean1
}
val predicate2 = new AuthorizationPredicate {
override def evaluate(token: token): Boolean = boolean2
}
(predicate1 && predicate2).evaluate(anyToken) mustBe (boolean1 && boolean2)
}
"|| should respect OR boolean logic" in forAll() { (boolean1: Boolean, boolean2: Boolean) =>
val anyToken = Token(...)
val predicate1 = new AuthorizationPredicate {
override def evaluate(token: token): Boolean = boolean1
}
val predicate2 = new AuthorizationPredicate {
override def evaluate(token: token): Boolean = boolean2
}
(predicate1 || predicate2).evaluate(anyToken) mustBe (boolean1 || boolean2)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment