Преглед на файлове

Shell: Add tests for 'if'

AnotherTest преди 5 години
родител
ревизия
db18e75a09
променени са 1 файла, в които са добавени 46 реда и са изтрити 0 реда
  1. 46 0
      Shell/Tests/if.sh

+ 46 - 0
Shell/Tests/if.sh

@@ -0,0 +1,46 @@
+#!/bin/sh
+
+if test 1 -eq 1 {
+    # Are comments ok?
+    # Basic 'if' structure, empty block.
+    if true {
+    } else {
+        exit 2
+    }
+    if false {
+        exit 2
+    } else {
+    }
+
+    # Basic 'if' structure, without 'else'
+    if false {
+        echo "Fail: 'if false' runs the branch"
+        exit 2
+    }
+
+    # Extended 'cond' form.
+    if false {
+        echo "Fail: 'if false' with 'else if' runs first branch"
+        exit 2
+    } else if true {
+    } else {
+        echo "Fail: 'if false' with 'else if' runs last branch"
+        exit 2
+    }
+
+    # FIXME: Some form of 'not' would be nice
+    # &&/|| in condition
+    if true || false {
+    } else {
+        echo "Fail: 'if true || false' runs false branch"
+        exit 2
+    }
+
+    if true && false {
+        echo "Fail: 'if true && false' runs true branch"
+        exit 2
+    }
+} else {
+    echo "Fail: 'if test 1 -eq 1' runs false branch"
+    exit 1
+}