From 91abb8c47cb12c39f6f9fc62da5082b6c71842cb Mon Sep 17 00:00:00 2001 From: Kare Morstol Date: Tue, 8 Sep 2015 18:06:49 +0200 Subject: [PATCH] Update test scripts. The rest are waiting for reading and writing files to be implemented. --- .../exitswhenopeningnon-existentfile.swift | 2 +- SwiftShellTests/Scripts/print_linenumbers.swift | 15 ++++++--------- SwiftShellTests/Scripts/runtests.bash | 4 ++-- 3 files changed, 9 insertions(+), 12 deletions(-) diff --git a/SwiftShellTests/Scripts/exitswhenopeningnon-existentfile.swift b/SwiftShellTests/Scripts/exitswhenopeningnon-existentfile.swift index 9f26922..3f0cbb3 100755 --- a/SwiftShellTests/Scripts/exitswhenopeningnon-existentfile.swift +++ b/SwiftShellTests/Scripts/exitswhenopeningnon-existentfile.swift @@ -2,5 +2,5 @@ import SwiftShell -let file = open("file which does not exist") +try! runAndPrint("/bin/cat", "file which does not exist") print("this is not printed, the script has exited") diff --git a/SwiftShellTests/Scripts/print_linenumbers.swift b/SwiftShellTests/Scripts/print_linenumbers.swift index 64be275..48b5f1b 100755 --- a/SwiftShellTests/Scripts/print_linenumbers.swift +++ b/SwiftShellTests/Scripts/print_linenumbers.swift @@ -2,13 +2,10 @@ import SwiftShell -/* -var i = 1 -for line in standardinput.lines() { - print("line \(i++): ") - println(line) -} -*/ +let result = main.stdin.read().characters.split("\n") + .enumerate().map { (linenr,line) in "line " + String(linenr+1) + ": " + String(line) } -var i = 1 -standardinput.lines() |> map {line in "line \(i++): \(line)\n"} |>> standardoutput +// Swift demands we split this up. +main.stdout.write(result.joinWithSeparator("\n")) + +// TODO: use .writeTo(&main.stdout) diff --git a/SwiftShellTests/Scripts/runtests.bash b/SwiftShellTests/Scripts/runtests.bash index 6da7c7f..ba37f97 100755 --- a/SwiftShellTests/Scripts/runtests.bash +++ b/SwiftShellTests/Scripts/runtests.bash @@ -19,8 +19,8 @@ export DYLD_FRAMEWORK_PATH=$PROJECT_ROOT/build/Release/ # Be aware the “assert” command does not check standard error output or exit code. -assert "./print_arguments.swift 1 2" "[./print_arguments.swift, 1, 2]" -assert_raises "./exitswhenopeningnon-existentfile.swift" 1 +assert "./print_name_and_args.swift 1 2" "print_name_and_args.swift \"1\" \"2\"" +assert_raises "./exitswhenopeningnon-existentfile.swift" 132 assert "cat onetwothree.txt | ./print_linenumbers.swift" "line 1: one\nline 2: two\nline 3: three" assert "./stream_out.swift" " 3" assert "./callswiftscriptfromswift.swift" "line 1: one\nline 2: two\nline 3: three"