github.com/stripe/stripe-go/v76@v76.25.0/price/client_test.go (about) 1 package price 2 3 import ( 4 "testing" 5 6 assert "github.com/stretchr/testify/require" 7 stripe "github.com/stripe/stripe-go/v76" 8 _ "github.com/stripe/stripe-go/v76/testing" 9 ) 10 11 func TestPriceGet(t *testing.T) { 12 price, err := Get("gold", nil) 13 assert.Nil(t, err) 14 assert.NotNil(t, price) 15 } 16 17 func TestPriceList(t *testing.T) { 18 params := &stripe.PriceListParams{ 19 Active: stripe.Bool(true), 20 LookupKeys: stripe.StringSlice([]string{ 21 "Key1", 22 "Key2", 23 }), 24 Recurring: &stripe.PriceListRecurringParams{ 25 Interval: stripe.String(string(stripe.PriceRecurringIntervalMonth)), 26 UsageType: stripe.String(string(stripe.PriceRecurringUsageTypeLicensed)), 27 }, 28 } 29 i := List(params) 30 31 // Verify that we can get at least one price 32 assert.True(t, i.Next()) 33 assert.Nil(t, i.Err()) 34 assert.NotNil(t, i.Price()) 35 assert.NotNil(t, i.PriceList()) 36 } 37 38 func TestPriceNew(t *testing.T) { 39 price, err := New(&stripe.PriceParams{ 40 BillingScheme: stripe.String(string(stripe.PriceBillingSchemeTiered)), 41 Currency: stripe.String(string(stripe.CurrencyUSD)), 42 Recurring: &stripe.PriceRecurringParams{ 43 Interval: stripe.String(string(stripe.PriceRecurringIntervalMonth)), 44 IntervalCount: stripe.Int64(6), 45 UsageType: stripe.String(string(stripe.PriceRecurringUsageTypeLicensed)), 46 }, 47 ProductData: &stripe.PriceProductDataParams{ 48 Name: stripe.String("Sapphire Elite"), 49 StatementDescriptor: stripe.String("statement descriptor"), 50 }, 51 Tiers: []*stripe.PriceTierParams{ 52 {UnitAmount: stripe.Int64(500), UpTo: stripe.Int64(5)}, 53 {UnitAmount: stripe.Int64(400), UpTo: stripe.Int64(10)}, 54 {UnitAmount: stripe.Int64(300), UpTo: stripe.Int64(15)}, 55 {UnitAmount: stripe.Int64(200), UpTo: stripe.Int64(20)}, 56 {UnitAmount: stripe.Int64(200), UpToInf: stripe.Bool(true)}, 57 }, 58 }) 59 assert.Nil(t, err) 60 assert.NotNil(t, price) 61 } 62 63 func TestPriceUpdate(t *testing.T) { 64 price, err := Update("gold", &stripe.PriceParams{ 65 Nickname: stripe.String("Updated nickame"), 66 }) 67 assert.Nil(t, err) 68 assert.NotNil(t, price) 69 }