diff --git a/src/Job.hs b/src/Job.hs index 9c1aa99..c074ede 100644 --- a/src/Job.hs +++ b/src/Job.hs @@ -75,21 +75,6 @@ defaultJob = Job type DeprecationPhase = [String] -> IO [String] -oneunit :: DeprecationPhase -oneunit strs = do - let strs' = filter (not . isOneunitArg) strs - if strs == strs' - then return strs - else do - hPutStr stderr $ "Deprecation warning: --oneunit has been removed, " - ++ "and is now on by default\n" - return strs' - where - isOneunitArg :: String -> Bool - isOneunitArg "-o" = True - isOneunitArg "--oneunit" = True - isOneunitArg _ = False - flagRename :: String -> String -> DeprecationPhase flagRename before after strs = do let strs' = map rename strs @@ -109,12 +94,10 @@ flagRename before after strs = do readJob :: IO Job readJob = do strs <- getArgs - strs' <- oneunit strs + strs' <- return strs >>= flagRename "-i" "-I" >>= flagRename "-d" "-D" >>= flagRename "-e" "-E" - >>= flagRename "-V" "--version" - >>= flagRename "-?" "--help" job <- withArgs (strs') $ cmdArgs defaultJob return $ if verbose job then job { exclude = Succinct : exclude job } diff --git a/test/help/run.sh b/test/help/run.sh new file mode 100755 index 0000000..ebb353d --- /dev/null +++ b/test/help/run.sh @@ -0,0 +1,20 @@ +#!/bin/bash + +test_help() { + runAndCapture --help + assertTrue "getting help should succeed" $result + assertNotNull "stdout should not be empty" "$stdout" + assertNull "stderr should be empty" "$stderr" + lines=`echo "$stdout" | wc -l` + usage=`echo "$stdout" | tail -n +3 | head -n $(expr $lines - 5)` + usage="\`\`\` +$usage +\`\`\`" + if [[ ! $(<../../README.md) = *"$usage"* ]]; then + fail "Did not find matching usage in README!" + fi +} + +source ../lib/functions.sh + +. shunit2 diff --git a/test/resolve/run.sh b/test/resolve/run.sh deleted file mode 100755 index bb30b78..0000000 --- a/test/resolve/run.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/bash - -test_main() { - cv="$SHUNIT_TMPDIR/conv.v" - convert "$cv" --oneunit package.svh module.sv - simulateAndCompare "reference.v" "$cv" "$SCRIPT_DIR/empty.v" -} - -source ../lib/functions.sh - -. shunit2 diff --git a/test/resolve/module.sv b/test/siloed/module.sv similarity index 100% rename from test/resolve/module.sv rename to test/siloed/module.sv diff --git a/test/resolve/package.svh b/test/siloed/package.svh similarity index 100% rename from test/resolve/package.svh rename to test/siloed/package.svh diff --git a/test/resolve/reference.v b/test/siloed/reference.v similarity index 100% rename from test/resolve/reference.v rename to test/siloed/reference.v diff --git a/test/siloed/run.sh b/test/siloed/run.sh new file mode 100755 index 0000000..9a31e67 --- /dev/null +++ b/test/siloed/run.sh @@ -0,0 +1,20 @@ +#!/bin/bash + +test_default() { + cv="$SHUNIT_TMPDIR/conv.v" + convert "$cv" package.svh module.sv + simulateAndCompare "reference.v" "$cv" "$SCRIPT_DIR/empty.v" +} + +test_siloed() { + runAndCapture --siloed package.svh module.sv + assertFalse "siloed conversion should fail" $result + assertNull "stdout should be empty" "$stdout" + assertEquals "stderr should have missing macro" \ + "module.sv:8:35: Lexical error: Undefined macro: FANCY_SEEING_YOU" \ + "$stderr" +} + +source ../lib/functions.sh + +. shunit2