diff options
Diffstat (limited to 'tests/core/go_plugin/all_test.go')
-rw-r--r-- | tests/core/go_plugin/all_test.go | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/core/go_plugin/all_test.go b/tests/core/go_plugin/all_test.go new file mode 100644 index 00000000..d74738b5 --- /dev/null +++ b/tests/core/go_plugin/all_test.go @@ -0,0 +1,33 @@ +package main_test + +import ( + "os" + "plugin" + "testing" +) + +const HelloWorld = "Hello, world!" + +func TestPluginCreated(t *testing.T) { + _, err := os.Stat("plugin.so") + if err != nil { + t.Error(err) + } +} + +func TestPluginWorks(t *testing.T) { + p, err := plugin.Open("plugin.so") + if err != nil { + t.Error(err) + } + + f, err := p.Lookup("Hi") + if err != nil { + t.Error(err) + } + + helloWorld := f.(func() string)() + if helloWorld != HelloWorld { + t.Errorf("expected %#v, got %#v", HelloWorld, helloWorld) + } +} |