@@ -1397,14 +1397,15 @@ func TestWorkspaceAgentRecreateDevcontainer(t *testing.T) {
13971397agentcontainers .DevcontainerConfigFileLabel :configFile ,
13981398}
13991399devContainer = codersdk.WorkspaceAgentContainer {
1400- ID :uuid .NewString (),
1401- CreatedAt :dbtime .Now (),
1402- FriendlyName :testutil .GetRandomName (t ),
1403- Image :"busybox:latest" ,
1404- Labels :dcLabels ,
1405- Running :true ,
1406- Status :"running" ,
1407- DevcontainerDirty :true ,
1400+ ID :uuid .NewString (),
1401+ CreatedAt :dbtime .Now (),
1402+ FriendlyName :testutil .GetRandomName (t ),
1403+ Image :"busybox:latest" ,
1404+ Labels :dcLabels ,
1405+ Running :true ,
1406+ Status :"running" ,
1407+ DevcontainerDirty :true ,
1408+ DevcontainerStatus :codersdk .WorkspaceAgentDevcontainerStatusRunning ,
14081409}
14091410plainContainer = codersdk.WorkspaceAgentContainer {
14101411ID :uuid .NewString (),
@@ -1419,29 +1420,31 @@ func TestWorkspaceAgentRecreateDevcontainer(t *testing.T) {
14191420
14201421for _ ,tc := range []struct {
14211422name string
1422- setupMock func (* acmock.MockContainerCLI ,* acmock.MockDevcontainerCLI ) (status int )
1423+ setupMock func (mccli * acmock.MockContainerCLI ,mdccli * acmock.MockDevcontainerCLI ) (status int )
14231424}{
14241425{
14251426name :"Recreate" ,
1426- setupMock :func (mcl * acmock.MockContainerCLI ,mdccli * acmock.MockDevcontainerCLI )int {
1427- mcl .EXPECT ().List (gomock .Any ()).Return (codersdk.WorkspaceAgentListContainersResponse {
1427+ setupMock :func (mccli * acmock.MockContainerCLI ,mdccli * acmock.MockDevcontainerCLI )int {
1428+ mccli .EXPECT ().List (gomock .Any ()).Return (codersdk.WorkspaceAgentListContainersResponse {
14281429Containers : []codersdk.WorkspaceAgentContainer {devContainer },
14291430},nil ).AnyTimes ()
1431+ // DetectArchitecture always returns "<none>" for this test to disable agent injection.
1432+ mccli .EXPECT ().DetectArchitecture (gomock .Any (),devContainer .ID ).Return ("<none>" ,nil ).AnyTimes ()
14301433mdccli .EXPECT ().Up (gomock .Any (),workspaceFolder ,configFile ,gomock .Any ()).Return ("someid" ,nil ).Times (1 )
14311434return 0
14321435},
14331436},
14341437{
14351438name :"Container does not exist" ,
1436- setupMock :func (mcl * acmock.MockContainerCLI ,mdccli * acmock.MockDevcontainerCLI )int {
1437- mcl .EXPECT ().List (gomock .Any ()).Return (codersdk.WorkspaceAgentListContainersResponse {},nil ).AnyTimes ()
1439+ setupMock :func (mccli * acmock.MockContainerCLI ,mdccli * acmock.MockDevcontainerCLI )int {
1440+ mccli .EXPECT ().List (gomock .Any ()).Return (codersdk.WorkspaceAgentListContainersResponse {},nil ).AnyTimes ()
14381441return http .StatusNotFound
14391442},
14401443},
14411444{
14421445name :"Not a devcontainer" ,
1443- setupMock :func (mcl * acmock.MockContainerCLI ,mdccli * acmock.MockDevcontainerCLI )int {
1444- mcl .EXPECT ().List (gomock .Any ()).Return (codersdk.WorkspaceAgentListContainersResponse {
1446+ setupMock :func (mccli * acmock.MockContainerCLI ,mdccli * acmock.MockDevcontainerCLI )int {
1447+ mccli .EXPECT ().List (gomock .Any ()).Return (codersdk.WorkspaceAgentListContainersResponse {
14451448Containers : []codersdk.WorkspaceAgentContainer {plainContainer },
14461449},nil ).AnyTimes ()
14471450return http .StatusNotFound
@@ -1452,9 +1455,9 @@ func TestWorkspaceAgentRecreateDevcontainer(t *testing.T) {
14521455t .Parallel ()
14531456
14541457ctrl := gomock .NewController (t )
1455- mcl := acmock .NewMockContainerCLI (ctrl )
1458+ mccli := acmock .NewMockContainerCLI (ctrl )
14561459mdccli := acmock .NewMockDevcontainerCLI (ctrl )
1457- wantStatus := tc .setupMock (mcl ,mdccli )
1460+ wantStatus := tc .setupMock (mccli ,mdccli )
14581461logger := slogtest .Make (t ,& slogtest.Options {IgnoreErrors :true }).Leveled (slog .LevelDebug )
14591462client ,db := coderdtest .NewWithDatabase (t ,& coderdtest.Options {
14601463Logger :& logger ,
@@ -1471,7 +1474,7 @@ func TestWorkspaceAgentRecreateDevcontainer(t *testing.T) {
14711474o .ExperimentalDevcontainersEnabled = true
14721475o .ContainerAPIOptions = append (
14731476o .ContainerAPIOptions ,
1474- agentcontainers .WithContainerCLI (mcl ),
1477+ agentcontainers .WithContainerCLI (mccli ),
14751478agentcontainers .WithDevcontainerCLI (mdccli ),
14761479agentcontainers .WithWatcher (watcher .NewNoop ()),
14771480)