package app import ( "reflect" "testing" "gitlab.com/revalus/grm/config" ) func TestGetFileExtension(t *testing.T) { toTest := map[string]string{ "myYamlFile.yaml": "yaml", "myTxtFile.txt": "txt", "myJsonFile.json": "json", } for key, value := range toTest { result, err := getFileExtension(key) if err != nil { t.Errorf("Unexpected error: %v", err) } if result != value { t.Errorf("Expected to get %v, instead of this got %v", value, result) } } } func TestErrorInGetExcensionFile(t *testing.T) { result, err := getFileExtension("test") if err == nil { t.Errorf("Expected to get error, instead of this got result %v", result) } } func TestIsItemInSlice(t *testing.T) { testedSlice := []string{"1", "2", "3", "4", "5"} result := checkIsItemInSlice("0", testedSlice) if result { t.Error("Expected to get false as result") } result = checkIsItemInSlice("1", testedSlice) if !result { t.Error("Expected to get true as result") } } func TestIsAnyInSlice(t *testing.T) { testedSlice := []string{"1", "2", "3", "4", "5"} result := checkAnyOfItemInSlice([]string{"0", "10"}, testedSlice) if result { t.Error("Expected to get false as result") } result = checkAnyOfItemInSlice([]string{"0", "5"}, testedSlice) if !result { t.Error("Expected to get true as result") } } func TestReverseStringsSlice(t *testing.T) { testedSlice := []config.RepositoryConfig{ {Name: "test1"}, {Name: "test2"}, {Name: "test3"}, } expectedResult := []config.RepositoryConfig{ {Name: "test3"}, {Name: "test2"}, {Name: "test1"}, } result := reverseRepositoryConfigs(testedSlice) if !reflect.DeepEqual(result, expectedResult) { t.Errorf("Expected to get \"%#v\", instead of this got \"%#v\"", expectedResult, result) } }