diff options
Diffstat (limited to 'test/switch.go')
-rw-r--r-- | test/switch.go | 139 |
1 files changed, 0 insertions, 139 deletions
diff --git a/test/switch.go b/test/switch.go deleted file mode 100644 index 0c253d6e2..000000000 --- a/test/switch.go +++ /dev/null @@ -1,139 +0,0 @@ -// $G $F.go && $L $F.$A && ./$A.out - -// Copyright 2009 The Go Authors. All rights reserved. -// Use of this source code is governed by a BSD-style -// license that can be found in the LICENSE file. - -package main - -func assert(cond bool, msg string) { - if !cond { - print("assertion fail: ", msg, "\n") - panic(1) - } -} - -func main() { - i5 := 5 - i7 := 7 - hello := "hello" - - switch true { - case i5 < 5: assert(false, "<") - case i5 == 5: assert(true, "!") - case i5 > 5: assert(false, ">") - } - - switch { - case i5 < 5: assert(false, "<") - case i5 == 5: assert(true, "!") - case i5 > 5: assert(false, ">") - } - - switch x := 5; true { - case i5 < x: assert(false, "<") - case i5 == x: assert(true, "!") - case i5 > x: assert(false, ">") - } - - switch x := 5; true { - case i5 < x: assert(false, "<") - case i5 == x: assert(true, "!") - case i5 > x: assert(false, ">") - } - - switch i5 { - case 0: assert(false, "0") - case 1: assert(false, "1") - case 2: assert(false, "2") - case 3: assert(false, "3") - case 4: assert(false, "4") - case 5: assert(true, "5") - case 6: assert(false, "6") - case 7: assert(false, "7") - case 8: assert(false, "8") - case 9: assert(false, "9") - default: assert(false, "default") - } - - switch i5 { - case 0,1,2,3,4: assert(false, "4") - case 5: assert(true, "5") - case 6,7,8,9: assert(false, "9") - default: assert(false, "default") - } - - switch i5 { - case 0: - case 1: - case 2: - case 3: - case 4: assert(false, "4") - case 5: assert(true, "5") - case 6: - case 7: - case 8: - case 9: - default: assert(i5 == 5, "good") - } - - switch i5 { - case 0: dummy := 0; _ = dummy; fallthrough - case 1: dummy := 0; _ = dummy; fallthrough - case 2: dummy := 0; _ = dummy; fallthrough - case 3: dummy := 0; _ = dummy; fallthrough - case 4: dummy := 0; _ = dummy; assert(false, "4") - case 5: dummy := 0; _ = dummy; fallthrough - case 6: dummy := 0; _ = dummy; fallthrough - case 7: dummy := 0; _ = dummy; fallthrough - case 8: dummy := 0; _ = dummy; fallthrough - case 9: dummy := 0; _ = dummy; fallthrough - default: dummy := 0; _ = dummy; assert(i5 == 5, "good") - } - - fired := false - switch i5 { - case 0: dummy := 0; _ = dummy; fallthrough; // tests scoping of cases - case 1: dummy := 0; _ = dummy; fallthrough - case 2: dummy := 0; _ = dummy; fallthrough - case 3: dummy := 0; _ = dummy; fallthrough - case 4: dummy := 0; _ = dummy; assert(false, "4") - case 5: dummy := 0; _ = dummy; fallthrough - case 6: dummy := 0; _ = dummy; fallthrough - case 7: dummy := 0; _ = dummy; fallthrough - case 8: dummy := 0; _ = dummy; fallthrough - case 9: dummy := 0; _ = dummy; fallthrough - default: dummy := 0; _ = dummy; fired = !fired; assert(i5 == 5, "good") - } - assert(fired, "fired") - - count := 0 - switch i5 { - case 0: count = count + 1; fallthrough - case 1: count = count + 1; fallthrough - case 2: count = count + 1; fallthrough - case 3: count = count + 1; fallthrough - case 4: count = count + 1; assert(false, "4") - case 5: count = count + 1; fallthrough - case 6: count = count + 1; fallthrough - case 7: count = count + 1; fallthrough - case 8: count = count + 1; fallthrough - case 9: count = count + 1; fallthrough - default: assert(i5 == count, "good") - } - assert(fired, "fired") - - switch hello { - case "wowie": assert(false, "wowie") - case "hello": assert(true, "hello") - case "jumpn": assert(false, "jumpn") - default: assert(false, "default") - } - - fired = false - switch i := i5 + 2; i { - case i7: fired = true - default: assert(false, "fail") - } - assert(fired, "var") -} |