Skip to content

Commit 851b6d5

Browse files
authored
Merge pull request #15 from plopezm/develop
Improved testing
2 parents 37cf104 + e63927e commit 851b6d5

File tree

3 files changed

+25
-12
lines changed

3 files changed

+25
-12
lines changed

Goedb.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ func init() {
2323
// Initialize gets the datasources from persistence.json
2424
func Initialize() {
2525
var persistence config.Persistence
26-
persistence = config.GetPersistenceConfig()
26+
persistence = config.GetPersistenceConfig("persistence.json")
2727

2828
for _, datasource := range persistence.Datasources {
2929
driver := new(manager.GoedbSQLDriver)

config/ConfigurationFile.go

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,7 @@ package config
22

33
import (
44
"encoding/json"
5-
"fmt"
65
"io/ioutil"
7-
"os"
86
)
97

108
// Persistence represents the collection of datasources defined by the developer in persistence.json
@@ -21,15 +19,13 @@ type Datasource struct {
2119
}
2220

2321
// GetPersistenceConfig generates the persistence struct from persistence.json
24-
func GetPersistenceConfig() Persistence {
25-
raw, err := ioutil.ReadFile("./persistence.json")
26-
if err != nil {
27-
fmt.Println(err.Error())
28-
os.Exit(1)
29-
}
30-
22+
func GetPersistenceConfig(persistenceConfigFile string) Persistence {
3123
var persistence Persistence
32-
33-
json.Unmarshal(raw, &persistence)
24+
raw, err := ioutil.ReadFile(persistenceConfigFile)
25+
if err == nil {
26+
json.Unmarshal(raw, &persistence)
27+
}else{
28+
persistence.Datasources = make([]Datasource, 0)
29+
}
3430
return persistence
3531
}

tests/ConfigurationFile_test.go

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package tests
2+
3+
import (
4+
"testing"
5+
"github.com/plopezm/goedb/config"
6+
"github.com/stretchr/testify/assert"
7+
)
8+
9+
func TestGetPersistenceConfig(t *testing.T){
10+
persistence := config.GetPersistenceConfig("persistence.json")
11+
assert.Equal(t,2, len(persistence.Datasources))
12+
}
13+
14+
func TestGetPersistenceConfigNotFound(t *testing.T){
15+
persistence := config.GetPersistenceConfig("Notfoundfile.json")
16+
assert.Equal(t,0, len(persistence.Datasources))
17+
}

0 commit comments

Comments
 (0)