Commit d8d0754

Eric Bower  ·  2026-08-30 09:28:33 -0400 EDT
parent 3a4fd49
fix(pgs): better pico+ error message when uploading
2 files changed,  +10, -4
+4, -4
......@@ -21,7 +21,7 @@ func findFeatureFlag(dbpool pgsdb.PgsDB, cfg *PgsConfig, userID string) (*db.Fea
2121 setFeatureLimits(ff, cfg)
2222 return ff, nil
2323 }
24- err = fmt.Errorf("your pico+ has expired")
24+ err = fmt.Errorf("ERROR: your pico+ has expired, https://blog.pico.sh/ann-037-pgs-pico-plus-only")
2525 }
2626
2727 ffPgs, pgsErr := dbpool.FindFeature(userID, "pgs")
......@@ -30,14 +30,14 @@ func findFeatureFlag(dbpool pgsdb.PgsDB, cfg *PgsConfig, userID string) (*db.Fea
3030 setFeatureLimits(ffPgs, cfg)
3131 return ffPgs, nil
3232 }
33- pgsErr = fmt.Errorf("your pgs access has expired")
33+ pgsErr = fmt.Errorf("ERROR: your pgs access has expired, https://blog.pico.sh/ann-037-pgs-pico-plus-only")
3434 }
3535
3636 if err != nil && strings.Contains(err.Error(), "expired") {
3737 return nil, err
3838 }
39- if pgsErr != nil {
39+ if pgsErr != nil && strings.Contains(pgsErr.Error(), "expired") {
4040 return nil, pgsErr
4141 }
42- return nil, err
42+ return nil, fmt.Errorf("ERROR: uploading to pgs requires pico+, https://blog.pico.sh/ann-037-pgs-pico-plus-only")
4343 }
+6, -0
......@@ -646,6 +646,9 @@ func TestFindFeatureFlag(t *testing.T) {
646646 if err == nil {
647647 t.Fatal("expected error, got nil")
648648 }
649+ if !strings.Contains(err.Error(), "https://blog.pico.sh/ann-037-pgs-pico-plus-only") {
650+ t.Errorf("expected blog link in error, got %v", err)
651+ }
649652 })
650653
651654 t.Run("error when neither plus nor pgs exists", func(t *testing.T) {
......@@ -654,6 +657,9 @@ func TestFindFeatureFlag(t *testing.T) {
654657 if err == nil {
655658 t.Fatal("expected error, got nil")
656659 }
660+ if !strings.Contains(err.Error(), "pico+") || !strings.Contains(err.Error(), "https://blog.pico.sh/ann-037-pgs-pico-plus-only") {
661+ t.Errorf("expected pico+ requirement and blog link in error, got %v", err)
662+ }
657663 })
658664 }
659665