github.com/stripe/stripe-go/v76@v76.25.0/issuing/card/client_test.go (about)

     1  package card
     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 TestIssuingCardGet(t *testing.T) {
    12  	card, err := Get("ic_123", nil)
    13  	assert.Nil(t, err)
    14  	assert.NotNil(t, card)
    15  	assert.Equal(t, "issuing.card", card.Object)
    16  }
    17  
    18  func TestIssuingCardList(t *testing.T) {
    19  	i := List(&stripe.IssuingCardListParams{})
    20  
    21  	// Verify that we can get at least one card
    22  	assert.True(t, i.Next())
    23  	assert.Nil(t, i.Err())
    24  	assert.NotNil(t, i.IssuingCard())
    25  	assert.Equal(t, "issuing.card", i.IssuingCard().Object)
    26  	assert.NotNil(t, i.IssuingCardList())
    27  }
    28  
    29  func TestIssuingCardNew(t *testing.T) {
    30  	params := &stripe.IssuingCardParams{
    31  		Cardholder: stripe.String("ich_123"),
    32  		Currency:   stripe.String(string(stripe.CurrencyUSD)),
    33  		SpendingControls: &stripe.IssuingCardSpendingControlsParams{
    34  			AllowedCategories: stripe.StringSlice([]string{
    35  				"fast_food_restaurants",
    36  				"miscellaneous_food_stores",
    37  			}),
    38  			SpendingLimits: []*stripe.IssuingCardSpendingControlsSpendingLimitParams{
    39  				{
    40  					Amount:   stripe.Int64(1000),
    41  					Interval: stripe.String(string(stripe.IssuingCardSpendingControlsSpendingLimitIntervalWeekly)),
    42  				},
    43  			},
    44  		},
    45  		Type: stripe.String(string(stripe.IssuingCardTypeVirtual)),
    46  	}
    47  	card, err := New(params)
    48  	assert.Nil(t, err)
    49  	assert.NotNil(t, card)
    50  	assert.Equal(t, "issuing.card", card.Object)
    51  }
    52  
    53  func TestIssuingCardUpdate(t *testing.T) {
    54  	card, err := Update("ic_123", &stripe.IssuingCardParams{
    55  		Status: stripe.String(string(stripe.IssuingCardStatusInactive)),
    56  	})
    57  	assert.Nil(t, err)
    58  	assert.NotNil(t, card)
    59  	assert.Equal(t, "issuing.card", card.Object)
    60  }