grafana/pkg/plugins/plugins_test.go

68 lines
1.7 KiB
Go
Raw Normal View History

2015-02-27 06:45:00 -06:00
package plugins
import (
"path/filepath"
"testing"
2015-11-27 03:04:43 -06:00
"github.com/grafana/grafana/pkg/setting"
2015-02-27 06:45:00 -06:00
. "github.com/smartystreets/goconvey/convey"
2015-11-27 03:17:27 -06:00
"gopkg.in/ini.v1"
2015-02-27 06:45:00 -06:00
)
func TestPluginScans(t *testing.T) {
2018-04-13 11:40:14 -05:00
Convey("When scanning for plugins", t, func() {
2015-11-27 03:17:27 -06:00
setting.StaticRootPath, _ = filepath.Abs("../../public/")
setting.Raw = ini.Empty()
pm := &PluginManager{
Cfg: &setting.Cfg{
FeatureToggles: map[string]bool{},
},
}
err := pm.Init()
2015-02-27 06:45:00 -06:00
So(err, ShouldBeNil)
2015-02-28 04:38:44 -06:00
So(len(DataSources), ShouldBeGreaterThan, 1)
2016-01-08 13:57:58 -06:00
So(len(Panels), ShouldBeGreaterThan, 1)
Convey("Should set module automatically", func() {
So(DataSources["graphite"].Module, ShouldEqual, "app/plugins/datasource/graphite/module")
})
2015-02-27 06:45:00 -06:00
})
2016-01-08 13:57:58 -06:00
Convey("When reading app plugin definition", t, func() {
pm := &PluginManager{
Cfg: &setting.Cfg{
FeatureToggles: map[string]bool{},
PluginSettings: setting.PluginSettings{
"nginx-app": map[string]string{
"path": "testdata/test-app",
},
},
},
}
err := pm.Init()
2016-01-08 13:57:58 -06:00
So(err, ShouldBeNil)
So(len(Apps), ShouldBeGreaterThan, 0)
So(Apps["test-app"].Info.Logos.Large, ShouldEqual, "public/plugins/test-app/img/logo_large.png")
So(Apps["test-app"].Info.Screenshots[1].Path, ShouldEqual, "public/plugins/test-app/img/screenshot2.png")
2016-01-08 13:57:58 -06:00
})
Convey("When checking if renderer is backend only plugin", t, func() {
pluginScanner := &PluginScanner{}
result := pluginScanner.IsBackendOnlyPlugin("renderer")
So(result, ShouldEqual, true)
})
Convey("When checking if app is backend only plugin", t, func() {
pluginScanner := &PluginScanner{}
result := pluginScanner.IsBackendOnlyPlugin("app")
So(result, ShouldEqual, false)
})
2015-02-27 06:45:00 -06:00
}