# Copyright 2005-2007 Kevin Reid, under the terms of the MIT X license # found at http://www.opensource.org/licenses/mit-license.html ................ ? print("hi") # stdout: hi ? println("hi") # stdout: hi # ? if (E.toQuote(interp) !~ `>`) { [interp] } This should be successful: ? interp.pushTestStep(e`1 + 1`, [["value", "2"]]) This should fail: x ? interp.pushTestStep(e`1 + 1`, [["value", "You should see a failure report, expecting the value 2."]]) ? "something after pushed tests" # value: "something after pushed tests" XXX as shown by the disabled 'should fail' test, in order to do this properly we need to create a nested updoc runner and verify its output --- Pragmas should persist across steps ? accum 0 for x in 1..4 { _ + x } # problem: (line 1)@31: The optional "accumulator" syntax is currently off. ? pragma.enable("accumulator") > accum 0 for x in 1..4 { _ + x } # value: 10 ? accum 0 for x in 1..4 { _ + x } # value: 10 ? pragma.disable("accumulator") ? accum 0 for x in 1..4 { _ + x } # problem: (line 1)@31: The optional "accumulator" syntax is currently off. --- waitAtTop / timing tests: ? print <- ("hello") # value: # stdout: hello ? fn { print <- ("world") } <- () # value: ? 1 # stdout: world # value: 1 ? interp.waitAtTop(fn { print <- ("now"); 0 } <- ()); 2 # value: 2 # stdout: now ? 3 # value: 3 Bug: resolved promise for null not treated equivalently to null: ? def p; bind p := null; p