Initial Dever 0.0.1
This commit is contained in:
commit
81233d098c
1479 files changed
+163782
No files matched your search
@@ -0,0 +1,28 @@
|
||||
type FirstProblem { error Failed(message: Text) }
|
||||
|
||||
type SecondProblem { error Failed(message: Text) }
|
||||
|
||||
type Captured {
|
||||
Done(value: Int)
|
||||
error First(problem: FirstProblem)
|
||||
error Second(problem: SecondProblem)
|
||||
}
|
||||
|
||||
first() (value: Int) { fail(FirstProblem.Failed("first")) }
|
||||
|
||||
forwardFirst() (value: Int) { value = first() }
|
||||
|
||||
second() (value: Int) { fail(SecondProblem.Failed("second")) }
|
||||
|
||||
forwardSecond() (value: Int) { value = second() }
|
||||
|
||||
choose(flag: true) (value: Int) { value = forwardFirst() }
|
||||
choose(flag: false) (value: Int) { value = forwardSecond() }
|
||||
|
||||
capture(flag: Bool) (value: Captured) { value = result(choose(flag)) }
|
||||
|
||||
verify() (answer: Bool) recover("compare both nominal errors") {
|
||||
left = capture(true)
|
||||
right = capture(false)
|
||||
answer = left == Captured.First(FirstProblem.Failed("first")) and right == Captured.Second(SecondProblem.Failed("second"))
|
||||
}
|
||||
Reference in new issue
Block a user