@@ -167,4 +167,46 @@ func TestStart(t *testing.T) {
167
167
})
168
168
}
169
169
})
170
+
171
+ t .Run ("StartActivatesDormant" , func (t * testing.T ) {
172
+ t .Parallel ()
173
+
174
+ ctx := testutil .Context (t , testutil .WaitMedium )
175
+ ownerClient , owner := coderdenttest .New (t , & coderdenttest.Options {
176
+ Options : & coderdtest.Options {
177
+ IncludeProvisionerDaemon : true ,
178
+ },
179
+ LicenseOptions : & coderdenttest.LicenseOptions {
180
+ Features : license.Features {
181
+ codersdk .FeatureAdvancedTemplateScheduling : 1 ,
182
+ },
183
+ },
184
+ })
185
+
186
+ version := coderdtest .CreateTemplateVersion (t , ownerClient , owner .OrganizationID , nil )
187
+ _ = coderdtest .AwaitTemplateVersionJobCompleted (t , ownerClient , version .ID )
188
+ template := coderdtest .CreateTemplate (t , ownerClient , owner .OrganizationID , version .ID )
189
+
190
+ memberClient , _ := coderdtest .CreateAnotherUser (t , ownerClient , owner .OrganizationID )
191
+ workspace := coderdtest .CreateWorkspace (t , memberClient , owner .OrganizationID , template .ID )
192
+ _ = coderdtest .AwaitWorkspaceBuildJobCompleted (t , memberClient , workspace .LatestBuild .ID )
193
+ _ = coderdtest .MustTransitionWorkspace (t , memberClient , workspace .ID , database .WorkspaceTransitionStart , database .WorkspaceTransitionStop )
194
+ err := memberClient .UpdateWorkspaceDormancy (ctx , workspace .ID , codersdk.UpdateWorkspaceDormancy {
195
+ Dormant : true ,
196
+ })
197
+ require .NoError (t , err )
198
+
199
+ inv , root := newCLI (t , "start" , workspace .Name )
200
+ clitest .SetupConfig (t , memberClient , root )
201
+
202
+ var buf bytes.Buffer
203
+ inv .Stdout = & buf
204
+
205
+ err = inv .Run ()
206
+ require .NoError (t , err )
207
+ require .Contains (t , buf .String (), "Activating dormant workspace..." )
208
+
209
+ workspace = coderdtest .MustWorkspace (t , memberClient , workspace .ID )
210
+ require .Equal (t , codersdk .WorkspaceTransitionStart , workspace .LatestBuild .Transition )
211
+ })
170
212
}
0 commit comments