github.com/mundipagg/boleto-api@v0.0.0-20230620145841-3f9ec742599f/test/builder_test.go (about)

     1  package test
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/mundipagg/boleto-api/models"
     7  	"github.com/stretchr/testify/assert"
     8  )
     9  
    10  func Test_BoletoBuilder_WhenCreateAndSetBoletoRequest_ReturnBoletoRequestSuccessful(t *testing.T) {
    11  
    12  	authentication := models.Authentication{
    13  		Username: "username",
    14  	}
    15  	agreement := models.Agreement{
    16  		Agency:  "1234",
    17  		Account: "123456",
    18  	}
    19  	title := models.Title{
    20  		OurNumber: 1234567890,
    21  	}
    22  	recipient := models.Recipient{
    23  		Name: "Recebedor",
    24  	}
    25  	buyer := models.Buyer{
    26  		Name: "Comprador",
    27  	}
    28  
    29  	b := NewBuilderBoletoRequest()
    30  	b.SetBank(models.Caixa)
    31  	b.SetAuthentication(authentication)
    32  	b.SetAgreement(agreement)
    33  	b.SetTitle(title)
    34  	b.SetRecipient(recipient)
    35  	b.SetBuyer(buyer)
    36  
    37  	r := b.BoletoRequest()
    38  
    39  	assert.Equal(t, models.Caixa, int(r.BankNumber))
    40  	assert.Equal(t, authentication, r.Authentication)
    41  	assert.Equal(t, agreement, r.Agreement)
    42  	assert.Equal(t, title, r.Title)
    43  	assert.Equal(t, recipient, r.Recipient)
    44  	assert.Equal(t, buyer, r.Buyer)
    45  	assert.NotEqual(t, "00000000-0000-0000-0000-000000000000", r.RequestKey)
    46  
    47  }