|
7 | 7 | "testing"
|
8 | 8 | "time"
|
9 | 9 |
|
10 |
| - "github.com/stretchr/testify/assert" |
11 | 10 | "github.com/stretchr/testify/require"
|
12 | 11 |
|
13 | 12 | "cdr.dev/slog/sloggers/slogtest"
|
@@ -625,52 +624,53 @@ func TestWorkspaceAutobuild(t *testing.T) {
|
625 | 624 | func TestWorkspacesFiltering(t *testing.T) {
|
626 | 625 | t.Parallel()
|
627 | 626 |
|
628 |
| - t.Run("FilterQueryHasDeletingByAndLicensed", func(t *testing.T) { |
| 627 | + t.Run("DeletingBy", func(t *testing.T) { |
629 | 628 | t.Parallel()
|
630 | 629 |
|
631 |
| - inactivityTTL := 1 * 24 * time.Hour |
| 630 | + lockedTTL := 24 * time.Hour |
632 | 631 |
|
633 | 632 | client, user := coderdenttest.New(t, &coderdenttest.Options{
|
634 | 633 | Options: &coderdtest.Options{
|
635 | 634 | IncludeProvisionerDaemon: true,
|
636 | 635 | },
|
637 |
| - LicenseOptions: &coderdenttest.LicenseOptions{ |
638 |
| - Features: license.Features{ |
639 |
| - codersdk.FeatureAdvancedTemplateScheduling: 1, |
640 |
| - }, |
641 |
| - }, |
642 | 636 | })
|
| 637 | + user := coderdtest.CreateFirstUser(t, client) |
| 638 | + _ = coderdenttest.AddFullLicense(t, client) |
643 | 639 |
|
644 | 640 | version := coderdtest.CreateTemplateVersion(t, client, user.OrganizationID, nil)
|
| 641 | + _ = coderdtest.AwaitTemplateVersionJob(t, client, version.ID) |
645 | 642 | template := coderdtest.CreateTemplate(t, client, user.OrganizationID, version.ID)
|
646 | 643 |
|
647 |
| - coderdtest.AwaitTemplateVersionJob(t, client, version.ID) |
648 |
| - |
649 | 644 | // update template with inactivity ttl
|
650 | 645 | ctx, cancel := context.WithTimeout(context.Background(), testutil.WaitLong)
|
651 | 646 | defer cancel()
|
652 | 647 |
|
653 | 648 | template, err := client.UpdateTemplateMeta(ctx, template.ID, codersdk.UpdateTemplateMeta{
|
654 |
| - InactivityTTLMillis: inactivityTTL.Milliseconds(), |
| 649 | + LockedTTLMillis: lockedTTL.Milliseconds(), |
655 | 650 | })
|
656 |
| - |
657 |
| - assert.NoError(t, err) |
658 |
| - assert.Equal(t, inactivityTTL.Milliseconds(), template.InactivityTTLMillis) |
| 651 | + require.NoError(t, err) |
| 652 | + require.Equal(t, lockedTTL.Milliseconds(), template.LockedTTLMillis) |
659 | 653 |
|
660 | 654 | workspace := coderdtest.CreateWorkspace(t, client, user.OrganizationID, template.ID)
|
661 |
| - coderdtest.AwaitWorkspaceBuildJob(t, client, workspace.LatestBuild.ID) |
| 655 | + _ = coderdtest.AwaitWorkspaceBuildJob(t, client, workspace.LatestBuild.ID) |
662 | 656 |
|
663 | 657 | // stop build so workspace is inactive
|
664 | 658 | stopBuild := coderdtest.CreateWorkspaceBuild(t, client, workspace, database.WorkspaceTransitionStop)
|
665 | 659 | coderdtest.AwaitWorkspaceBuildJob(t, client, stopBuild.ID)
|
| 660 | + err = client.UpdateWorkspaceLock(ctx, workspace.ID, codersdk.UpdateWorkspaceLock{ |
| 661 | + Lock: true, |
| 662 | + }) |
| 663 | + require.NoError(t, err) |
| 664 | + workspace = coderdtest.MustWorkspace(t, client, workspace.ID) |
| 665 | + require.NotNil(t, workspace.DeletingAt) |
666 | 666 |
|
667 | 667 | res, err := client.Workspaces(ctx, codersdk.WorkspaceFilter{
|
668 | 668 | // adding a second to time.Now() to give some buffer in case test runs quickly
|
669 |
| - FilterQuery: fmt.Sprintf("deleting_by:%s", time.Now().Add(time.Second).Add(inactivityTTL).Format("2006-01-02")), |
| 669 | + FilterQuery: fmt.Sprintf("deleting_by:%s", time.Now().Add(time.Second).Add(lockedTTL).Format("2006-01-02")), |
670 | 670 | })
|
671 |
| - assert.NoError(t, err) |
672 |
| - assert.Len(t, res.Workspaces, 1) |
673 |
| - assert.Equal(t, workspace.ID, res.Workspaces[0].ID) |
| 671 | + require.NoError(t, err) |
| 672 | + require.Len(t, res.Workspaces, 1) |
| 673 | + require.Equal(t, workspace.ID, res.Workspaces[0].ID) |
674 | 674 | })
|
675 | 675 | }
|
676 | 676 |
|
|
0 commit comments