blob: 5e25fda1f97d59779836c10eb942299d8673cc9e [file] [log] [blame]
package internal
import (
"testing"
"github.com/stretchr/testify/mock"
"go.skia.org/infra/pinpoint/go/workflows"
"github.com/stretchr/testify/require"
swarmingV1 "go.chromium.org/luci/common/api/swarming/swarming/v1"
"go.temporal.io/sdk/testsuite"
)
func Test_BuildChrome_ShouldReturnCAS(t *testing.T) {
testSuite := &testsuite.WorkflowTestSuite{}
env := testSuite.NewTestWorkflowEnvironment()
var bca *BuildChromeActivity
buildID := int64(1234)
cas := &swarmingV1.SwarmingRpcsCASReference{
CasInstance: "fake-instance",
}
env.OnActivity(bca.SearchOrBuildActivity, mock.Anything, mock.Anything).Return(buildID, nil)
env.OnActivity(bca.WaitBuildCompletionActivity, mock.Anything, mock.Anything).Return(true, nil)
env.OnActivity(bca.RetrieveCASActivity, mock.Anything, mock.Anything, mock.Anything).Return(cas, nil)
env.ExecuteWorkflow(BuildChrome, workflows.BuildChromeParams{})
require.True(t, env.IsWorkflowCompleted())
require.NoError(t, env.GetWorkflowError())
var result *swarmingV1.SwarmingRpcsCASReference
require.NoError(t, env.GetWorkflowResult(&result))
require.Equal(t, cas, result)
}