github.com/clerkinc/clerk-sdk-go@v1.49.1/tests/integration/phone_numbers_test.go (about)

     1  //go:build integration
     2  // +build integration
     3  
     4  package integration
     5  
     6  import (
     7  	"testing"
     8  
     9  	"github.com/brianvoe/gofakeit/v6"
    10  	"github.com/clerkinc/clerk-sdk-go/clerk"
    11  	"github.com/stretchr/testify/assert"
    12  )
    13  
    14  func TestPhoneNumbers(t *testing.T) {
    15  	client := createClient()
    16  
    17  	users, _ := client.Users().ListAll(clerk.ListAllUsersParams{})
    18  	if users == nil || len(users) == 0 {
    19  		return
    20  	}
    21  
    22  	user := users[0]
    23  
    24  	// create
    25  
    26  	fakePhoneNumber := gofakeit.Phone()
    27  
    28  	verified := false
    29  	primary := false
    30  
    31  	createPhoneNumberParams := clerk.CreatePhoneNumberParams{
    32  		UserID:      user.ID,
    33  		PhoneNumber: fakePhoneNumber,
    34  		Verified:    &verified,
    35  		Primary:     &primary,
    36  	}
    37  
    38  	phoneNumber, err := client.PhoneNumbers().Create(createPhoneNumberParams)
    39  	assert.Nil(t, err)
    40  
    41  	assert.Equal(t, "phone_number", phoneNumber.Object)
    42  	assert.Equal(t, fakePhoneNumber, phoneNumber.PhoneNumber)
    43  
    44  	// read
    45  
    46  	phoneNumber, err = client.PhoneNumbers().Read(phoneNumber.ID)
    47  	assert.Nil(t, err)
    48  
    49  	assert.Equal(t, "phone_number", phoneNumber.Object)
    50  	assert.Equal(t, fakePhoneNumber, phoneNumber.PhoneNumber)
    51  
    52  	// update
    53  
    54  	verified = true
    55  	primary = true
    56  
    57  	updatePhoneNumberParams := clerk.UpdatePhoneNumberParams{
    58  		Verified: &verified,
    59  		Primary:  &primary,
    60  	}
    61  
    62  	phoneNumber, err = client.PhoneNumbers().Update(phoneNumber.ID, updatePhoneNumberParams)
    63  	assert.Nil(t, err)
    64  
    65  	assert.Equal(t, "phone_number", phoneNumber.Object)
    66  	assert.Equal(t, fakePhoneNumber, phoneNumber.PhoneNumber)
    67  
    68  	// delete
    69  
    70  	deletedResponse, err := client.PhoneNumbers().Delete(phoneNumber.ID)
    71  	assert.Nil(t, err)
    72  
    73  	assert.Equal(t, phoneNumber.ID, deletedResponse.ID)
    74  	assert.True(t, deletedResponse.Deleted)
    75  }