github.com/hy3/cuto@v0.9.8-0.20160830082821-aa6652f877b7/db/tx/jobtx_test.go (about) 1 // Copyright 2015 unirita Inc. 2 // Created 2015/04/10 shanxia 3 4 package tx 5 6 import ( 7 "sync" 8 "testing" 9 10 "github.com/unirita/cuto/db" 11 "github.com/unirita/cuto/utctime" 12 ) 13 14 var mutex sync.Mutex 15 16 func TestInsertJob_ジョブの新規登録処理(t *testing.T) { 17 conn, err := db.Open(db_name) 18 if err != nil { 19 t.Fatal(err) 20 } 21 defer conn.Close() 22 23 err = InsertJob(conn, 24 &db.JobResult{ 25 ID: 121, 26 JobId: "JOB001", 27 JobName: "abcjob.bat", 28 StartDate: utctime.Now().String(), 29 Status: db.RUNNING, 30 Node: "TestNode01", 31 Port: 9999, 32 }, &mutex) 33 if err != nil { 34 t.Error("ジョブテーブルへの登録に失敗しました。 - ", err) 35 } 36 } 37 38 func TestInsertJob_ジョブの新規登録失敗(t *testing.T) { 39 conn, err := db.Open(dummy_db) 40 if err != nil { 41 t.Fatal(err) 42 } 43 defer conn.Close() 44 45 err = InsertJob(conn, 46 &db.JobResult{ 47 ID: 131, 48 JobId: "JOB001", 49 JobName: "abcjob.bat", 50 StartDate: utctime.Now().String(), 51 Status: db.RUNNING, 52 Node: "TestNode01", 53 Port: 9999, 54 }, &mutex) 55 if err == nil { 56 t.Error("予定していた失敗が返りませんでした。 - ") 57 } 58 } 59 60 func TestUpdateJob_ジョブの更新処理(t *testing.T) { 61 conn, err := db.Open(db_name) 62 if err != nil { 63 t.Fatal(err) 64 } 65 defer conn.Close() 66 67 jobres := &db.JobResult{ 68 ID: 122, 69 JobId: "JOB002", 70 JobName: "XYZ.vbs", 71 StartDate: utctime.Now().String(), 72 Status: db.RUNNING, 73 Node: "TestNode02", 74 Port: 9999, 75 } 76 err = InsertJob(conn, jobres, &mutex) 77 if err != nil { 78 t.Fatal("ジョブテーブルへの登録に失敗しました。 - ", err) 79 } 80 jobres.Status = db.ABNORMAL 81 jobres.Variable = "VAR" 82 jobres.EndDate = utctime.Now().String() 83 jobres.Detail = "Attention!!" 84 jobres.Rc = 4 85 86 err = UpdateJob(conn, jobres, &mutex) 87 if err != nil { 88 t.Error("ジョブテーブルの更新に失敗しました。 - ", err) 89 } 90 } 91 92 func TestUpdateJob_ジョブの登録前に更新(t *testing.T) { 93 conn, err := db.Open(dummy_db) 94 if err != nil { 95 t.Fatal(err) 96 } 97 defer conn.Close() 98 99 jobres := &db.JobResult{ 100 ID: 132, 101 JobId: "JOB002", 102 JobName: "XYZ.vbs", 103 StartDate: utctime.Now().String(), 104 Status: db.RUNNING, 105 Node: "TestNode02", 106 Port: 9999, 107 } 108 err = UpdateJob(conn, jobres, &mutex) 109 if err == nil { 110 t.Error("予定していた失敗が返りませんでした。 - ") 111 } 112 } 113 114 func TestUpdateJob_ジョブの更新失敗(t *testing.T) { 115 conn, err := db.Open(dummy_db) 116 if err != nil { 117 t.Fatal(err) 118 } 119 defer conn.Close() 120 121 jobres := &db.JobResult{ 122 ID: 122, 123 JobId: "JOB002", 124 JobName: "XYZ.vbs", 125 StartDate: utctime.Now().String(), 126 Status: db.RUNNING, 127 Node: "TestNode02", 128 Port: 9999, 129 } 130 err = UpdateJob(conn, jobres, &mutex) 131 if err == nil { 132 t.Error("予定していた失敗が返りませんでした。 - ") 133 } 134 }