From 970ae0fc4e21f9ef0a76aac5358c2ea57ea7fb01 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Wed, 4 Oct 2023 02:29:39 +0200 Subject: [PATCH] test: use _test to avoid cyclic imports --- pkg/config/app.go | 10 +++---- pkg/config/app_test.go | 22 +++++++------- pkg/config/env_test.go | 65 +++++++++++++++++++++++------------------- 3 files changed, 52 insertions(+), 45 deletions(-) diff --git a/pkg/config/app.go b/pkg/config/app.go index 95dc7784..a6166e2e 100644 --- a/pkg/config/app.go +++ b/pkg/config/app.go @@ -149,7 +149,7 @@ func (a ByName) Less(i, j int) bool { return strings.ToLower(a[i].Name) < strings.ToLower(a[j].Name) } -func readAppEnvFile(appFile AppFile, name AppName) (App, error) { +func ReadAppEnvFile(appFile AppFile, name AppName) (App, error) { env, err := ReadEnv(appFile.Path) if err != nil { return App{}, fmt.Errorf("env file for %s couldn't be read: %s", name, err.Error()) @@ -157,7 +157,7 @@ func readAppEnvFile(appFile AppFile, name AppName) (App, error) { logrus.Debugf("read env %s from %s", env, appFile.Path) - app, err := newApp(env, name, appFile) + app, err := NewApp(env, name, appFile) if err != nil { return App{}, fmt.Errorf("env file for %s has issues: %s", name, err.Error()) } @@ -165,8 +165,8 @@ func readAppEnvFile(appFile AppFile, name AppName) (App, error) { return app, nil } -// newApp creates new App object -func newApp(env AppEnv, name string, appFile AppFile) (App, error) { +// NewApp creates new App object +func NewApp(env AppEnv, name string, appFile AppFile) (App, error) { domain := env["DOMAIN"] recipe, exists := env["RECIPE"] @@ -232,7 +232,7 @@ func GetApp(apps AppFiles, name AppName) (App, error) { return App{}, fmt.Errorf("cannot find app with name %s", name) } - app, err := readAppEnvFile(appFile, name) + app, err := ReadAppEnvFile(appFile, name) if err != nil { return App{}, err } diff --git a/pkg/config/app_test.go b/pkg/config/app_test.go index 113d130b..5403ca59 100644 --- a/pkg/config/app_test.go +++ b/pkg/config/app_test.go @@ -1,36 +1,38 @@ -package config +package config_test import ( "reflect" "testing" + + "coopcloud.tech/abra/pkg/config" ) func TestNewApp(t *testing.T) { - app, err := newApp(expectedAppEnv, appName, expectedAppFile) + app, err := config.NewApp(ExpectedAppEnv, AppName, ExpectedAppFile) if err != nil { t.Fatal(err) } - if !reflect.DeepEqual(app, expectedApp) { - t.Fatalf("did not get expected app type. Expected: %s; Got: %s", app, expectedApp) + if !reflect.DeepEqual(app, ExpectedApp) { + t.Fatalf("did not get expected app type. Expected: %s; Got: %s", app, ExpectedApp) } } func TestReadAppEnvFile(t *testing.T) { - app, err := readAppEnvFile(expectedAppFile, appName) + app, err := config.ReadAppEnvFile(ExpectedAppFile, AppName) if err != nil { t.Fatal(err) } - if !reflect.DeepEqual(app, expectedApp) { - t.Fatalf("did not get expected app type. Expected: %s; Got: %s", app, expectedApp) + if !reflect.DeepEqual(app, ExpectedApp) { + t.Fatalf("did not get expected app type. Expected: %s; Got: %s", app, ExpectedApp) } } func TestGetApp(t *testing.T) { - app, err := GetApp(expectedAppFiles, appName) + app, err := config.GetApp(ExpectedAppFiles, AppName) if err != nil { t.Fatal(err) } - if !reflect.DeepEqual(app, expectedApp) { - t.Fatalf("did not get expected app type. Expected: %s; Got: %s", app, expectedApp) + if !reflect.DeepEqual(app, ExpectedApp) { + t.Fatalf("did not get expected app type. Expected: %s; Got: %s", app, ExpectedApp) } } diff --git a/pkg/config/env_test.go b/pkg/config/env_test.go index 87049289..157d6ec9 100644 --- a/pkg/config/env_test.go +++ b/pkg/config/env_test.go @@ -1,60 +1,65 @@ -package config +package config_test import ( + "fmt" "os" "path" "reflect" "strings" "testing" + + "coopcloud.tech/abra/pkg/catalogue" + "coopcloud.tech/abra/pkg/config" + "coopcloud.tech/abra/pkg/recipe" ) -var testFolder = os.ExpandEnv("$PWD/../../tests/resources/test_folder") -var validAbraConf = os.ExpandEnv("$PWD/../../tests/resources/valid_abra_config") +var TestFolder = os.ExpandEnv("$PWD/../../tests/resources/test_folder") +var ValidAbraConf = os.ExpandEnv("$PWD/../../tests/resources/valid_abra_config") // make sure these are in alphabetical order -var tFolders = []string{"folder1", "folder2"} -var tFiles = []string{"bar.env", "foo.env"} +var TFolders = []string{"folder1", "folder2"} +var TFiles = []string{"bar.env", "foo.env"} -var appName = "ecloud" -var serverName = "evil.corp" +var AppName = "ecloud" +var ServerName = "evil.corp" -var expectedAppEnv = AppEnv{ +var ExpectedAppEnv = config.AppEnv{ "DOMAIN": "ecloud.evil.corp", "RECIPE": "ecloud", } -var expectedApp = App{ - Name: appName, - Recipe: expectedAppEnv["RECIPE"], - Domain: expectedAppEnv["DOMAIN"], - Env: expectedAppEnv, - Path: expectedAppFile.Path, - Server: expectedAppFile.Server, +var ExpectedApp = config.App{ + Name: AppName, + Recipe: ExpectedAppEnv["RECIPE"], + Domain: ExpectedAppEnv["DOMAIN"], + Env: ExpectedAppEnv, + Path: ExpectedAppFile.Path, + Server: ExpectedAppFile.Server, } -var expectedAppFile = AppFile{ - Path: path.Join(validAbraConf, "servers", serverName, appName+".env"), - Server: serverName, +var ExpectedAppFile = config.AppFile{ + Path: path.Join(ValidAbraConf, "servers", ServerName, AppName+".env"), + Server: ServerName, } -var expectedAppFiles = map[string]AppFile{ - appName: expectedAppFile, +var ExpectedAppFiles = map[string]config.AppFile{ + AppName: ExpectedAppFile, } // var expectedServerNames = []string{"evil.corp"} func TestGetAllFoldersInDirectory(t *testing.T) { - folders, err := GetAllFoldersInDirectory(testFolder) + folders, err := config.GetAllFoldersInDirectory(TestFolder) if err != nil { t.Fatal(err) } - if !reflect.DeepEqual(folders, tFolders) { - t.Fatalf("did not get expected folders. Expected: (%s), Got: (%s)", strings.Join(tFolders, ","), strings.Join(folders, ",")) + if !reflect.DeepEqual(folders, TFolders) { + t.Fatalf("did not get expected folders. Expected: (%s), Got: (%s)", strings.Join(TFolders, ","), strings.Join(folders, ",")) } } func TestGetAllFilesInDirectory(t *testing.T) { - files, err := GetAllFilesInDirectory(testFolder) + files, err := config.GetAllFilesInDirectory(TestFolder) if err != nil { t.Fatal(err) } @@ -62,21 +67,21 @@ func TestGetAllFilesInDirectory(t *testing.T) { for _, file := range files { fileNames = append(fileNames, file.Name()) } - if !reflect.DeepEqual(fileNames, tFiles) { - t.Fatalf("did not get expected files. Expected: (%s), Got: (%s)", strings.Join(tFiles, ","), strings.Join(fileNames, ",")) + if !reflect.DeepEqual(fileNames, TFiles) { + t.Fatalf("did not get expected files. Expected: (%s), Got: (%s)", strings.Join(TFiles, ","), strings.Join(fileNames, ",")) } } func TestReadEnv(t *testing.T) { - env, err := ReadEnv(expectedAppFile.Path) + env, err := config.ReadEnv(ExpectedAppFile.Path) if err != nil { t.Fatal(err) } - if !reflect.DeepEqual(env, expectedAppEnv) { + if !reflect.DeepEqual(env, ExpectedAppEnv) { t.Fatalf( "did not get expected application settings. Expected: DOMAIN=%s RECIPE=%s; Got: DOMAIN=%s RECIPE=%s", - expectedAppEnv["DOMAIN"], - expectedAppEnv["RECIPE"], + ExpectedAppEnv["DOMAIN"], + ExpectedAppEnv["RECIPE"], env["DOMAIN"], env["RECIPE"], )