github.com/unirita/cuto@v0.9.8-0.20160830082821-aa6652f877b7/servant/job/util_test.go (about) 1 // Copyright 2015 unirita Inc. 2 // Created 2015/04/10 shanxia 3 4 package job 5 6 import ( 7 "testing" 8 ) 9 10 func TestParamSplit_A(t *testing.T) { 11 m := "A B \"C D E\" F G \"H I J\" K" 12 params := paramSplit(m) 13 if params[0] != "A" { 14 t.Errorf("Aが返るべきところ、%vが返りました。", m[0]) 15 } 16 if params[1] != "B" { 17 t.Errorf("Bが返るべきところ、%vが返りました。", m[1]) 18 } 19 if params[2] != "C D E" { 20 t.Errorf("C D Eが返るべきところ、%vが返りました。", m[2]) 21 } 22 if params[3] != "F" { 23 t.Errorf("Fが返るべきところ、%vが返りました。", m[3]) 24 } 25 if params[4] != "G" { 26 t.Errorf("Gが返るべきところ、%vが返りました。", m[4]) 27 } 28 if params[5] != "H I J" { 29 t.Errorf("H I Jが返るべきところ、%vが返りました。", m[5]) 30 } 31 if params[6] != "K" { 32 t.Errorf("Kが返るべきところ、%vが返りました。", m[6]) 33 } 34 } 35 36 func TestParamSplit_B(t *testing.T) { 37 m := "\"A B" 38 params := paramSplit(m) 39 if params[0] != "\"A" { 40 t.Errorf("\"Aが返るべきところ、%vが返りました。", m[0]) 41 } 42 if params[1] != "B" { 43 t.Errorf("Bが返るべきところ、%vが返りました。", m[1]) 44 } 45 } 46 47 func TestParamSplit_C(t *testing.T) { 48 m := "A B\"" 49 params := paramSplit(m) 50 if params[0] != "A" { 51 t.Errorf("Aが返るべきところ、%vが返りました。", m[0]) 52 } 53 if params[1] != "B\"" { 54 t.Errorf("B\"が返るべきところ、%vが返りました。", m[1]) 55 } 56 } 57 58 func TestParamSplit_D(t *testing.T) { 59 m := "A B\"C D" 60 params := paramSplit(m) 61 if params[0] != "A" { 62 t.Errorf("Aが返るべきところ、%vが返りました。", m[0]) 63 } 64 if params[1] != "B\"C" { 65 t.Errorf("B\"Cが返るべきところ、%vが返りました。", m[1]) 66 } 67 if params[2] != "D" { 68 t.Errorf("Dが返るべきところ、%vが返りました。", m[2]) 69 } 70 } 71 72 func TestParamSplit_E(t *testing.T) { 73 m := "A B\"CD \" " 74 params := paramSplit(m) 75 if params[0] != "A" { 76 t.Errorf("Aが返るべきところ、%vが返りました。", m[0]) 77 } 78 if params[1] != "B\"CD \"" { 79 t.Errorf("B\"CD \"が返るべきところ、%vが返りました。", m[1]) 80 } 81 } 82 83 func TestParamSplit_F(t *testing.T) { 84 m := "A \"B C D\" E F\" G\"" 85 params := paramSplit(m) 86 if params[0] != "A" { 87 t.Errorf("Aが返るべきところ、%vが返りました。", m[0]) 88 } 89 if params[1] != "B C D" { 90 t.Errorf("B C Dが返るべきところ、%vが返りました。", m[1]) 91 } 92 if params[2] != "E" { 93 t.Errorf("Eが返るべきところ、%vが返りました。", m[2]) 94 } 95 if params[3] != "F\" G\"" { 96 t.Errorf("F\" G\"が返るべきところ、%vが返りました。", m[3]) 97 } 98 } 99 100 func TestShellFormat_Exist(t *testing.T) { 101 s := shellFormat("A B C") 102 if s != "\"A B C\"" { 103 t.Errorf("Invalid Format - %v", s) 104 } 105 } 106 107 func TestShellFormat_NoExist(t *testing.T) { 108 s := shellFormat("ABC") 109 if s != "ABC" { 110 t.Errorf("Invalid Format - %v", s) 111 } 112 }