Skip to content
Snippets Groups Projects
Commit ea467d96 authored by Robert Goldman's avatar Robert Goldman
Browse files

Flag expected failures with ECL on Windows.

parent 8aec89e0
No related branches found
No related tags found
No related merge requests found
......@@ -14,15 +14,26 @@
(run-program '("echo" "ok" "1") :output '(:string :stripped t))))
((os-windows-p)
(DBG "Testing ipconfig /all via run-progam as a string")
;;; FIXME: known breakage
#+(and ecl os-windows)
(errors parameter-error
(run-program "ipconfig /all"))
#-(and ecl os-windows)
(run-program "ipconfig /all")
(DBG "Testing ipconfig /all via run-progam as a list")
(run-program '("ipconfig" "/all"))))
(DBG "Testing echo ok 1 via run-program as a string")
#-(and ecl os-windows)
(assert-equal "ok 1"
(dewindowize (run-program "echo ok 1" :output '(:string :stripped t))))
#+(and ecl os-windows)
(errors parameter-error
(dewindowize (run-program "echo ok 1" :output '(:string :stripped t))))
;;; test asdf run-shell-command function
#-(and ecl os-windows)
(progn
(setf *verbose-out* nil)
(DBG "Testing true via run-shell-command")
(assert-equal 0 (run-shell-command "exit 0"))
......@@ -30,7 +41,10 @@
(assert-equal 1 (run-shell-command "exit 1"))
(DBG "Testing bad shell command via run-shell-command")
(unless (< 0 (run-shell-command "./bad-shell-command"))
(error "Failed to capture exit status indicating shell command failure."))
(error "Failed to capture exit status indicating shell command failure.")))
#+(and ecl os-windows)
(errors not-implemented-error
(eql 0 (run-shell-command "exit 0")))
(chdir *test-directory*)
......@@ -42,6 +56,7 @@
(DBG "Testing exit status with :output :interactive")
;; This test checks for a problem there was in allegro -- :output :interactive
;; would try to open T as a stream for INPUT.
#-(and ecl os-windows)
(loop
:for (program . exit-code) :in
#+os-unix '(("true" . 0) ("false" . 1))
......@@ -54,6 +69,10 @@
:ignore-error-status t
:force-shell force-shell
:output :interactive)))))
#+(and ecl os-windows)
(DBG "Test skipped on ECL + Windows")
#-(and ecl os-windows)
(assert-equal
'("foo" "bar baz" 42)
(multiple-value-bind (o e c)
......@@ -66,14 +85,16 @@
:ignore-error-status t)
(DBG "aaa" o e c)
(list (dewindowize o) (dewindowize e) c)))
#-(and ecl os-windows)
(assert-equal
'(("foo" "bar" "baz" "quux") nil 0)
(multiple-value-bind (o e c)
(run-program #+os-unix "echo foo ; echo bar >&2 ; echo baz ; echo quux >& 2"
#+os-windows "echo foo & echo bar >&2 & echo baz & echo quux >& 2"
:output :lines :error-output :output)
#+os-windows "echo foo & echo bar >&2 & echo baz & echo quux >& 2"
:output :lines :error-output :output)
(list (mapcar 'dewindowize o) e c)))
#-(and ecl os-windows)
(let ((ok1 (format nil "; $ echo ok 1~%ok 1")))
(DBG "Testing awkward legacy output capture via run-shell-command")
(assert-equal
......@@ -94,7 +115,9 @@
(error "Didn't get good exit status.")))))))
ok1))
#-(and ecl os-windows)
(assert-equal '(:ok 1) (run-program "echo :ok 1" :output :forms))
#-(and ecl os-windows)
(assert-equal "ok" (dewindowize (stripln
(with-output-to-string (*standard-output*)
(run-program "echo ok" :output t :error-output :output)))))
......@@ -249,9 +272,10 @@
t)
(defun windows-only-test/run-program ()
(DBG "WINDOWS-ONLY-TEST/RUN-PROGRAM")
;; a basic smoke test
(assert-equal "ok" (dewindowize (run-program '("cmd" "/c" "echo" "ok") :output :line)))
#-(and ecl os-windows)
(assert-equal "ok 1" (dewindowize (run-program "echo ok 1" :output :line)))
;; clozure: beware http://trac.clozure.com/ccl/ticket/1118
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment