userDataDB_test.go (2525B)
1 package db 2 3 import ( 4 "os" 5 "path/filepath" 6 7 "github.com/dgraph-io/badger" 8 . "github.com/onsi/ginkgo" 9 10 //. "github.com/onsi/gomega" 11 "github.com/shibukawa/configdir" 12 ) 13 14 // OpenUserDB opens or generates the Database file for settings and Cache 15 func OpenUserDBTest() (db *badger.DB, err error) { 16 // Open the data.db file. It will be created if it doesn't exist. 17 configDirs := configdir.New("Nordgedanken", "Morpheus") 18 if _, StatErr := os.Stat(filepath.ToSlash(configDirs.QueryFolders(configdir.Global)[0].Path) + "/tests/"); os.IsNotExist(StatErr) { 19 MkdirErr := os.MkdirAll(filepath.ToSlash(configDirs.QueryFolders(configdir.Global)[0].Path)+"/tests/", 0666) 20 if MkdirErr != nil { 21 err = MkdirErr 22 return 23 } 24 } 25 if _, StatErr := os.Stat(filepath.ToSlash(configDirs.QueryFolders(configdir.Global)[0].Path) + "/tests/data/"); os.IsNotExist(StatErr) { 26 MkdirErr := os.MkdirAll(filepath.ToSlash(configDirs.QueryFolders(configdir.Global)[0].Path)+"/tests/data/", 0666) 27 if MkdirErr != nil { 28 err = MkdirErr 29 return 30 } 31 } 32 if _, StatErr := os.Stat(filepath.ToSlash(configDirs.QueryFolders(configdir.Global)[0].Path) + "/tests/data/user/"); os.IsNotExist(StatErr) { 33 MkdirErr := os.MkdirAll(filepath.ToSlash(configDirs.QueryFolders(configdir.Global)[0].Path)+"/tests/data/user/", 0666) 34 if MkdirErr != nil { 35 err = MkdirErr 36 return 37 } 38 } 39 if _, StatErr := os.Stat(filepath.ToSlash(configDirs.QueryFolders(configdir.Global)[0].Path) + "/tests/data/userValue/"); os.IsNotExist(StatErr) { 40 MkdirErr := os.MkdirAll(filepath.ToSlash(configDirs.QueryFolders(configdir.Global)[0].Path)+"/tests/data/userValue/", 0666) 41 if MkdirErr != nil { 42 err = MkdirErr 43 return 44 } 45 } 46 opts := badger.DefaultOptions 47 opts.Dir = filepath.ToSlash(configDirs.QueryFolders(configdir.Global)[0].Path) + "/tests/data/user/" 48 opts.ValueDir = filepath.ToSlash(configDirs.QueryFolders(configdir.Global)[0].Path) + "/tests/data/userValue/" 49 50 expDB, DBErr := badger.Open(opts) 51 if DBErr != nil { 52 err = DBErr 53 return 54 } 55 56 db = expDB 57 return 58 } 59 60 var _ = Describe("UserDataDB", func() { 61 var db *badger.DB 62 /*BeforeEach(func() { 63 DBErr := db.Update(func(txn *badger.Txn) error { 64 DeleteErr := txn.DeleteAll() 65 return DeleteErr 66 }) 67 if DBErr != nil { 68 Fail(DBErr.Error()) 69 } 70 })*/ 71 72 Describe("Test User DB", func() { 73 Context("opening", func() { 74 It("should open the DB", func() { 75 var DBOpenErr error 76 db, DBOpenErr = OpenUserDBTest() 77 if DBOpenErr != nil { 78 Fail(DBOpenErr.Error()) 79 } 80 }) 81 }) 82 }) 83 })