[Groonga-commit] groonga/grnci at 658791b [master] Add tests for truncate.

Back to archive index

Susumu Yata null+****@clear*****
Fri Jul 7 14:09:04 JST 2017


Susumu Yata	2017-07-07 14:09:04 +0900 (Fri, 07 Jul 2017)

  New Revision: 658791bd087fd54671abbdf30b12d5199162b542
  https://github.com/groonga/grnci/commit/658791bd087fd54671abbdf30b12d5199162b542

  Message:
    Add tests for truncate.
    
    GitHub: #39

  Modified files:
    v2/libgrn/db_test.go

  Modified: v2/libgrn/db_test.go (+43 -17)
===================================================================
--- v2/libgrn/db_test.go    2017-07-07 14:08:28 +0900 (4b8659c)
+++ v2/libgrn/db_test.go    2017-07-07 14:09:04 +0900 (c51551d)
@@ -686,24 +686,50 @@ func TestDBTokenizeWithOptions(t *testing.T) {
 // 	}
 // }
 
-// func TestDBTableRemove(t *testing.T) {
-// 	client, err := NewHTTPClient("", nil)
-// 	if err != nil {
-// 		t.Skipf("NewHTTPClient failed: %v", err)
-// 	}
-// 	db := NewDB(client)
-// 	defer db.Close()
+func TestDBTruncate(t *testing.T) {
+	db, dir := makeDB(t)
+	defer removeDB(db, dir)
 
-// 	result, resp, err := db.TableRemove("no_such_table", false)
-// 	if err != nil {
-// 		t.Fatalf("db.TableRemove failed: %v", err)
-// 	}
-// 	log.Printf("result = %#v", result)
-// 	log.Printf("resp = %#v", resp)
-// 	if err := resp.Err(); err != nil {
-// 		log.Printf("error = %#v", err)
-// 	}
-// }
+	dump := `table_create Tbl TABLE_HASH_KEY ShortText
+load --table Tbl --columns _key --values '[["Key"]]'`
+	if _, err := db.Restore(strings.NewReader(dump), nil, true); err != nil {
+		t.Fatalf("db.Restore failed: %v", err)
+	}
+	_, resp, err := db.Truncate("Tbl")
+	if err == nil {
+		err = resp.Err()
+	}
+	if err != nil {
+		t.Fatalf("db.Truncate failed: %v", err)
+	}
+	obj, resp, err := db.ObjectInspect("Tbl")
+	if err == nil {
+		err = resp.Err()
+	}
+	if err != nil {
+		t.Fatalf("db.ObjectInspect failed: %v", err)
+	}
+	tbl, ok := obj.(*grnci.DBObjectTable)
+	if !ok {
+		t.Fatalf("db.ObjectInspect failed: obj = %#v", obj)
+	}
+	if tbl.NRecords != 0 {
+		t.Fatalf("db.Truncate failed: nRecords = %d", tbl.NRecords)
+	}
+}
+
+func TestDBTruncateInvalidTarget(t *testing.T) {
+	db, dir := makeDB(t)
+	defer removeDB(db, dir)
+
+	_, resp, err := db.Truncate("no_such_target")
+	if err != nil {
+		t.Fatalf("db.Truncate failed: %v", err)
+	}
+	if resp.Err() == nil {
+		t.Fatalf("db.Truncate wrongly succeeded")
+	}
+}
 
 func TestDBTableRemove(t *testing.T) {
 	db, dir := makeDB(t)
-------------- next part --------------
HTML����������������������������...
Télécharger 



More information about the Groonga-commit mailing list
Back to archive index