(t *testing.T)
| 1922 | } |
| 1923 | |
| 1924 | func TestWorkspaceAgentDeleteDevcontainer(t *testing.T) { |
| 1925 | t.Parallel() |
| 1926 | |
| 1927 | const ( |
| 1928 | workspaceFolder = "/home/coder/coder" |
| 1929 | ) |
| 1930 | configFile := filepath.Join(workspaceFolder, ".devcontainer", "devcontainer.json") |
| 1931 | |
| 1932 | setupDevcontainerMocks := func(t *testing.T) ( |
| 1933 | *gomock.Controller, |
| 1934 | *acmock.MockContainerCLI, |
| 1935 | *acmock.MockDevcontainerCLI, |
| 1936 | codersdk.WorkspaceAgentContainer, |
| 1937 | codersdk.WorkspaceAgentDevcontainer, |
| 1938 | []agentcontainers.Option, |
| 1939 | ) { |
| 1940 | devcontainerID := uuid.New() |
| 1941 | devContainer := codersdk.WorkspaceAgentContainer{ |
| 1942 | ID: uuid.NewString(), |
| 1943 | CreatedAt: dbtime.Now(), |
| 1944 | FriendlyName: testutil.GetRandomName(t), |
| 1945 | Image: "busybox:latest", |
| 1946 | Labels: map[string]string{ |
| 1947 | agentcontainers.DevcontainerLocalFolderLabel: workspaceFolder, |
| 1948 | agentcontainers.DevcontainerConfigFileLabel: configFile, |
| 1949 | }, |
| 1950 | Running: true, |
| 1951 | Status: "running", |
| 1952 | } |
| 1953 | devcontainer := codersdk.WorkspaceAgentDevcontainer{ |
| 1954 | ID: devcontainerID, |
| 1955 | Name: "test-devcontainer", |
| 1956 | WorkspaceFolder: workspaceFolder, |
| 1957 | ConfigPath: configFile, |
| 1958 | Status: codersdk.WorkspaceAgentDevcontainerStatusRunning, |
| 1959 | Container: &devContainer, |
| 1960 | } |
| 1961 | |
| 1962 | mCtrl := gomock.NewController(t) |
| 1963 | mCCLI := acmock.NewMockContainerCLI(mCtrl) |
| 1964 | mDCCLI := acmock.NewMockDevcontainerCLI(mCtrl) |
| 1965 | |
| 1966 | mCCLI.EXPECT().List(gomock.Any()).Return(codersdk.WorkspaceAgentListContainersResponse{ |
| 1967 | Containers: []codersdk.WorkspaceAgentContainer{devContainer}, |
| 1968 | }, nil).AnyTimes() |
| 1969 | mCCLI.EXPECT().DetectArchitecture(gomock.Any(), devContainer.ID).Return("<none>", nil).AnyTimes() |
| 1970 | mDCCLI.EXPECT().ReadConfig(gomock.Any(), workspaceFolder, configFile, gomock.Any()).Return(agentcontainers.DevcontainerConfig{}, nil).AnyTimes() |
| 1971 | |
| 1972 | devcontainerAPIOptions := []agentcontainers.Option{ |
| 1973 | agentcontainers.WithContainerCLI(mCCLI), |
| 1974 | agentcontainers.WithDevcontainerCLI(mDCCLI), |
| 1975 | agentcontainers.WithWatcher(watcher.NewNoop()), |
| 1976 | agentcontainers.WithDevcontainers([]codersdk.WorkspaceAgentDevcontainer{devcontainer}, nil), |
| 1977 | } |
| 1978 | |
| 1979 | return mCtrl, mCCLI, mDCCLI, devContainer, devcontainer, devcontainerAPIOptions |
| 1980 | } |
| 1981 |
nothing calls this directly
no test coverage detected