Skip to content

Commit

Permalink
Merge branch 'integrationTesting' into B-21359-INT
Browse files Browse the repository at this point in the history
  • Loading branch information
JonSpight authored Dec 12, 2024
2 parents 0b630fa + 0636629 commit 0a96eca
Show file tree
Hide file tree
Showing 8 changed files with 660 additions and 18 deletions.
54 changes: 53 additions & 1 deletion pkg/factory/transportation_office_assignment_factory_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import (
"github.com/transcom/mymove/pkg/models"
)

func (suite *FactorySuite) TestBuildPrimaryTransportationOfficeAssignment() {
func (suite *FactorySuite) TestBuildTransportationOfficeAssignment() {
suite.Run("Successful creation of default Primary TransportationOfficeAssignment", func() {
// Under test: BuildPrimaryTransportationOfficeAssignment
// Mocked: None
Expand Down Expand Up @@ -168,4 +168,56 @@ func (suite *FactorySuite) TestBuildPrimaryTransportationOfficeAssignment() {
suite.Equal(models.BoolPointer(false), secondaryTransportationOfficeAssignment.PrimaryOffice)

})

suite.Run("Successful return of primary linkOnly TransportationOffice", func() {
// Under test: BuildPrimaryTransportationOfficeAssignment
// Set up: Pass in a linkOnly transportationOfficeAssignment
// Expected outcome: No new TransportationOfficeAssignment should be persisted.

precount, err := suite.DB().Count(&models.TransportationOfficeAssignment{})
suite.NoError(err)

officeUser := BuildOfficeUserWithoutTransportationOfficeAssignment(suite.DB(), nil, nil)

officeId := uuid.Must(uuid.NewV4())
assignment := BuildPrimaryTransportationOfficeAssignment(suite.DB(), []Customization{
{
Model: models.TransportationOfficeAssignment{
ID: officeUser.ID,
TransportationOfficeID: officeId,
},
LinkOnly: true,
},
}, nil)
count, err := suite.DB().Count(&models.TransportationOfficeAssignment{})
suite.Equal(precount, count)
suite.NoError(err)
suite.Equal(officeUser.ID, assignment.ID)
})

suite.Run("Successful return of secondary linkOnly TransportationOffice", func() {
// Under test: BuildPrimaryTransportationOfficeAssignment
// Set up: Pass in a linkOnly transportationOfficeAssignment
// Expected outcome: No new TransportationOfficeAssignment should be persisted.

officeUser := BuildOfficeUser(suite.DB(), nil, nil)

precount, err := suite.DB().Count(&models.TransportationOfficeAssignment{})
suite.NoError(err)

officeId := uuid.Must(uuid.NewV4())
assignment := BuildAlternateTransportationOfficeAssignment(suite.DB(), []Customization{
{
Model: models.TransportationOfficeAssignment{
ID: officeUser.ID,
TransportationOfficeID: officeId,
},
LinkOnly: true,
},
}, nil)
count, err := suite.DB().Count(&models.TransportationOfficeAssignment{})
suite.Equal(precount, count)
suite.NoError(err)
suite.Equal(officeUser.ID, assignment.ID)
})
}
Loading

0 comments on commit 0a96eca

Please sign in to comment.