package fetcher import ( "context" "testing" "github.com/Luzifer/go_helpers/v2/fieldcollection" ) func Test_AtlassianFetcher(t *testing.T) { attrs := fieldcollection.FieldCollectionFromData(map[string]interface{}{ "product": "confluence", "edition": "Standard", }) f := Get("atlassian") if err := f.Validate(attrs); err != nil { t.Fatalf("validating attributes: %s", err) } ver, _, err := f.FetchVersion(context.Background(), attrs) if err != nil { t.Fatalf("fetching version: %s", err) } // Uses tag format: 1.0.0 if len(ver) < 5 { t.Errorf("version has unexpected format: %s != X.X.X", ver) } t.Logf("found version: %s", ver) attrs.Set("edition", "ThisDoesNotExist") _, _, err = f.FetchVersion(context.Background(), attrs) if err == nil { t.Errorf("fetching non existing edition did not error") } }