[Groonga-commit] groonga/grnci at 9e4ac72 [master] Add tests for DB.RubyEval.

Back to archive index

Susumu Yata null+****@clear*****
Wed Sep 13 18:30:20 JST 2017


Susumu Yata	2017-09-13 18:30:20 +0900 (Wed, 13 Sep 2017)

  New Revision: 9e4ac72793e425696815333e3dd0a462be1033c6
  https://github.com/groonga/grnci/commit/9e4ac72793e425696815333e3dd0a462be1033c6

  Message:
    Add tests for DB.RubyEval.
    
    Ref: #39

  Modified files:
    v2/libgrn/db_test.go

  Modified: v2/libgrn/db_test.go (+32 -0)
===================================================================
--- v2/libgrn/db_test.go    2017-09-13 13:45:24 +0900 (bd73775)
+++ v2/libgrn/db_test.go    2017-09-13 18:30:20 +0900 (c6e04bb)
@@ -773,6 +773,38 @@ true
 	}
 }
 
+func TestRubyEval(t *testing.T) {
+	db, dir := makeDB(t)
+	defer removeDB(db, dir)
+
+	if err := db.PluginRegister("ruby/eval"); err != nil {
+		t.Skipf("db.PluginRegister failed: %v", err)
+	}
+	result, err := db.RubyEval("1 + 2")
+	if err != nil {
+		t.Fatalf("db.RubyEval failed: %v", err)
+	}
+	value := reflect.ValueOf(result)
+	if kind, want := value.Kind(), reflect.Float64; kind != want {
+		t.Fatalf("db.RubyEval failed: kind = %v, want = %v", kind, want)
+	}
+	if float, want := value.Float(), 3.0; float != want {
+		t.Fatalf("db.RubyEval failed: value = %f, want = %f", float, want)
+	}
+}
+
+func TestRubyEvalInvalidScript(t *testing.T) {
+	db, dir := makeDB(t)
+	defer removeDB(db, dir)
+
+	if err := db.PluginRegister("ruby/eval"); err != nil {
+		t.Skipf("db.PluginRegister failed: %v", err)
+	}
+	if _, err := db.RubyEval(""); err == nil {
+		t.Fatalf("db.RubyEval wrongly succeeded")
+	}
+}
+
 func TestDBSchema(t *testing.T) {
 	db, dir := makeDB(t)
 	defer removeDB(db, dir)
-------------- next part --------------
HTML����������������������������...
URL: https://lists.osdn.me/mailman/archives/groonga-commit/attachments/20170913/73ae2acd/attachment-0001.htm 



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