@@ -258,7 +258,7 @@ func TestWorkspaceByOwnerAndName(t *testing.T) {
258
258
t .Run ("NotFound" ,func (t * testing.T ) {
259
259
t .Parallel ()
260
260
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 {} )
262
262
var apiErr * codersdk.Error
263
263
require .ErrorAs (t ,err ,& apiErr )
264
264
require .Equal (t ,http .StatusUnauthorized ,apiErr .StatusCode ())
@@ -271,9 +271,38 @@ func TestWorkspaceByOwnerAndName(t *testing.T) {
271
271
coderdtest .AwaitTemplateVersionJob (t ,client ,version .ID )
272
272
template := coderdtest .CreateTemplate (t ,client ,user .OrganizationID ,version .ID )
273
273
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 {} )
275
275
require .NoError (t ,err )
276
276
})
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
+ })
277
306
}
278
307
279
308
func TestWorkspaceFilter (t * testing.T ) {