func TestConfig_ApiUrl(t *testing.T) { var tests = []struct { cfg util.ConfigFile env map[string]string expected string }{ { util.ConfigFile{}, map[string]string{}, "https://asciinema.org", }, { util.ConfigFile{API: util.ConfigAPI{URL: "https://asciinema.example.com"}}, map[string]string{}, "https://asciinema.example.com", }, { util.ConfigFile{API: util.ConfigAPI{URL: "https://asciinema.example.com"}}, map[string]string{"ASCIINEMA_API_URL": "http://localhost:3000"}, "http://localhost:3000", }, } for _, test := range tests { cfg := util.Config{&test.cfg, test.env} actual := cfg.ApiUrl() if actual != test.expected { t.Errorf(`expected "%v", got "%v"`, test.expected, actual) } } }