@@ -258,7 +258,7 @@ func TestWorkspaceByOwnerAndName(t *testing.T) {
258258 t .Run ("NotFound" , func (t * testing.T ) {
259259 t .Parallel ()
260260 client := coderdtest .New (t , nil )
261- _ , err := client .WorkspaceByOwnerAndName (context .Background (), codersdk .Me , "something" )
261+ _ , err := client .WorkspaceByOwnerAndName (context .Background (), codersdk .Me , "something" , codersdk. WorkspaceByOwnerAndNameParams {} )
262262 var apiErr * codersdk.Error
263263 require .ErrorAs (t , err , & apiErr )
264264 require .Equal (t , http .StatusUnauthorized , apiErr .StatusCode ())
@@ -271,9 +271,38 @@ func TestWorkspaceByOwnerAndName(t *testing.T) {
271271 coderdtest .AwaitTemplateVersionJob (t , client , version .ID )
272272 template := coderdtest .CreateTemplate (t , client , user .OrganizationID , version .ID )
273273 workspace := coderdtest .CreateWorkspace (t , client , user .OrganizationID , template .ID )
274- _ , err := client .WorkspaceByOwnerAndName (context .Background (), codersdk .Me , workspace .Name )
274+ _ , err := client .WorkspaceByOwnerAndName (context .Background (), codersdk .Me , workspace .Name , codersdk. WorkspaceByOwnerAndNameParams {} )
275275 require .NoError (t , err )
276276 })
277+ t .Run ("Deleted" , func (t * testing.T ) {
278+ t .Parallel ()
279+ client := coderdtest .New (t , & coderdtest.Options {IncludeProvisionerD : true })
280+ user := coderdtest .CreateFirstUser (t , client )
281+ version := coderdtest .CreateTemplateVersion (t , client , user .OrganizationID , nil )
282+ coderdtest .AwaitTemplateVersionJob (t , client , version .ID )
283+ template := coderdtest .CreateTemplate (t , client , user .OrganizationID , version .ID )
284+ workspace := coderdtest .CreateWorkspace (t , client , user .OrganizationID , template .ID )
285+ coderdtest .AwaitWorkspaceBuildJob (t , client , workspace .LatestBuild .ID )
286+
287+ // Given:
288+ // We delete the workspace
289+ build , err := client .CreateWorkspaceBuild (context .Background (), workspace .ID , codersdk.CreateWorkspaceBuildRequest {
290+ Transition : codersdk .WorkspaceTransitionDelete ,
291+ })
292+ require .NoError (t , err , "delete the workspace" )
293+ coderdtest .AwaitWorkspaceBuildJob (t , client , build .ID )
294+
295+ // Then:
296+ // When we call without includes_deleted, we don't expect to get the workspace back
297+ _ , err = client .WorkspaceByOwnerAndName (context .Background (), workspace .OwnerName , workspace .Name , codersdk.WorkspaceByOwnerAndNameParams {})
298+ require .ErrorContains (t , err , "403" )
299+
300+ // Then:
301+ // When we call with includes_deleted, we should get the workspace back
302+ workspaceNew , err := client .WorkspaceByOwnerAndName (context .Background (), workspace .OwnerName , workspace .Name , codersdk.WorkspaceByOwnerAndNameParams {IncludeDeleted : true })
303+ require .NoError (t , err )
304+ require .Equal (t , workspace .ID , workspaceNew .ID )
305+ })
277306}
278307
279308func TestWorkspaceFilter (t * testing.T ) {
0 commit comments