fix(tests): fixed failling backend test

This commit is contained in:
Torkel Ödegaard 2015-09-11 08:58:45 +02:00
parent fb9e91e486
commit 8174b9f041
5 changed files with 33 additions and 20 deletions

View File

@ -69,12 +69,16 @@ func main() {
}
func initRuntime() {
setting.NewConfigContext(&setting.CommandLineArgs{
err := setting.NewConfigContext(&setting.CommandLineArgs{
Config: *configFile,
HomePath: *homePath,
Args: flag.Args(),
})
if err != nil {
log.Fatal(3, err.Error())
}
log.Info("Starting Grafana")
log.Info("Version: %v, Commit: %v, Build date: %v", setting.BuildVersion, setting.BuildCommit, time.Unix(setting.BuildStamp, 0))
setting.LogConfigurationInfo()

View File

@ -6,6 +6,7 @@ package setting
import (
"bytes"
"encoding/json"
"errors"
"fmt"
"net/url"
"os"
@ -355,24 +356,26 @@ func setHomePath(args *CommandLineArgs) {
}
}
func getStaticRootPath(configValue string) string {
if configValue != "public" {
return configValue
var skipStaticRootValidation bool = false
func validateStaticRootPath() error {
if skipStaticRootValidation {
return nil
}
if _, err := os.Stat(path.Join(HomePath, configValue, "css")); err == nil {
return configValue
if _, err := os.Stat(path.Join(StaticRootPath, "css")); err == nil {
return nil
}
if _, err := os.Stat(path.Join(HomePath, "public_gen", "css")); err == nil {
return "public_gen"
if _, err := os.Stat(StaticRootPath + "_gen/css"); err == nil {
StaticRootPath = StaticRootPath + "_gen"
return nil
}
log.Fatal(3, "Failed to detect generated css or javascript files in static root (%s), have you executed default grunt task?", configValue)
return ""
return errors.New("Failed to detect generated css or javascript files in static root (%s), have you executed default grunt task?")
}
func NewConfigContext(args *CommandLineArgs) {
func NewConfigContext(args *CommandLineArgs) error {
setHomePath(args)
loadConfiguration(args)
@ -391,10 +394,14 @@ func NewConfigContext(args *CommandLineArgs) {
Domain = server.Key("domain").MustString("localhost")
HttpAddr = server.Key("http_addr").MustString("0.0.0.0")
HttpPort = server.Key("http_port").MustString("3000")
StaticRootPath = makeAbsolute(getStaticRootPath(server.Key("static_root_path").String()), HomePath)
RouterLogging = server.Key("router_logging").MustBool(false)
EnableGzip = server.Key("enable_gzip").MustBool(false)
EnforceDomain = server.Key("enforce_domain").MustBool(false)
StaticRootPath = makeAbsolute(server.Key("static_root_path").String(), HomePath)
if err := validateStaticRootPath(); err != nil {
return err
}
// read security settings
security := Cfg.Section("security")
@ -455,6 +462,8 @@ func NewConfigContext(args *CommandLineArgs) {
if VerifyEmailEnabled && !Smtp.Enabled {
log.Warn("require_email_validation is enabled but smpt is disabled")
}
return nil
}
func readSessionConfig() {

View File

@ -11,9 +11,11 @@ import (
func TestLoadingSettings(t *testing.T) {
Convey("Testing loading settings from ini file", t, func() {
skipStaticRootValidation = true
Convey("Given the default ini files", func() {
NewConfigContext(&CommandLineArgs{HomePath: "../../"})
err := NewConfigContext(&CommandLineArgs{HomePath: "../../"})
So(err, ShouldBeNil)
So(AdminUser, ShouldEqual, "admin")
})

View File

@ -1,10 +1,8 @@
///<reference path="../headers/require/require.d.ts" />
///<reference path="../headers/angularjs/angularjs.d.ts" />
///<amd-dependency path="angular"/>
///<amd-dependency path="config"/>
///<reference path="../headers/common.d.ts" />
///<amd-dependency path="config" name="config" />
var angular = require('angular');
var config = require('config');
import angular = require('angular');
declare var config : any;
var module = angular.module('grafana.controllers');

View File

@ -1,5 +1,5 @@
///<reference path="../../headers/common.d.ts" />
//
import angular = require('angular');
import jquery = require('jquery');
import moment = require('moment');