@@ -258,7 +258,7 @@ func TestWorkspaceByOwnerAndName(t *testing.T) {
258258t .Run ("NotFound" ,func (t * testing.T ) {
259259t .Parallel ()
260260client := coderdtest .New (t ,nil )
261- _ ,err := client .WorkspaceByOwnerAndName (context .Background (),codersdk .Me ,"something" )
261+ _ ,err := client .WorkspaceByOwnerAndName (context .Background (),codersdk .Me ,"something" , codersdk. WorkspaceByOwnerAndNameParams {} )
262262var apiErr * codersdk.Error
263263require .ErrorAs (t ,err ,& apiErr )
264264require .Equal (t ,http .StatusUnauthorized ,apiErr .StatusCode ())
@@ -271,9 +271,38 @@ func TestWorkspaceByOwnerAndName(t *testing.T) {
271271coderdtest .AwaitTemplateVersionJob (t ,client ,version .ID )
272272template := coderdtest .CreateTemplate (t ,client ,user .OrganizationID ,version .ID )
273273workspace := 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 {} )
275275require .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 ) {