11package backup_test
22
33import (
4- "context"
54 "encoding/json"
65 "testing"
76
@@ -15,53 +14,55 @@ import (
1514
1615func TestScheduleCreate_Success (t * testing.T ) {
1716 env := testutil .NewTestEnv (t )
18- t .Cleanup (env .Cleanup )
1917
20- env .BackupServer .CreateBackupScheduleFunc = func (_ context.Context , req * backupv1.CreateBackupScheduleRequest ) (* backupv1.CreateBackupScheduleResponse , error ) {
21- assert .Equal (t , "test-account-id" , req .GetBackupSchedule ().GetAccountId ())
22- assert .Equal (t , "cluster-abc" , req .GetBackupSchedule ().GetClusterId ())
23- assert .Equal (t , "0 2 * * *" , req .GetBackupSchedule ().GetSchedule ())
24- return & backupv1.CreateBackupScheduleResponse {
18+ env .BackupServer .CreateBackupScheduleCalls .Returns (
19+ & backupv1.CreateBackupScheduleResponse {
2520 BackupSchedule : & backupv1.BackupSchedule {Id : "schedule-new" , ClusterId : "cluster-abc" },
26- }, nil
27- }
21+ },
22+ nil ,
23+ )
2824
2925 stdout , _ , err := testutil .Exec (t , env , "backup" , "schedule" , "create" ,
3026 "--cluster-id=cluster-abc" , "--schedule=0 2 * * *" , "--retention-days=30" )
3127 require .NoError (t , err )
28+ req , _ := env .BackupServer .CreateBackupScheduleCalls .Last ()
29+ assert .Equal (t , "test-account-id" , req .GetBackupSchedule ().GetAccountId ())
30+ assert .Equal (t , "cluster-abc" , req .GetBackupSchedule ().GetClusterId ())
31+ assert .Equal (t , "0 2 * * *" , req .GetBackupSchedule ().GetSchedule ())
3232 assert .Contains (t , stdout , "schedule-new" )
3333 assert .Contains (t , stdout , "cluster-abc" )
3434}
3535
3636func TestScheduleCreate_WithRetention (t * testing.T ) {
3737 env := testutil .NewTestEnv (t )
38- t .Cleanup (env .Cleanup )
39-
40- var capturedRetentionDays int64
41- env .BackupServer .CreateBackupScheduleFunc = func (_ context.Context , req * backupv1.CreateBackupScheduleRequest ) (* backupv1.CreateBackupScheduleResponse , error ) {
42- if req .GetBackupSchedule ().GetRetentionPeriod () != nil {
43- capturedRetentionDays = int64 (req .GetBackupSchedule ().GetRetentionPeriod ().AsDuration ().Hours ()) / 24
44- }
45- return & backupv1.CreateBackupScheduleResponse {
38+
39+ env .BackupServer .CreateBackupScheduleCalls .Returns (
40+ & backupv1.CreateBackupScheduleResponse {
4641 BackupSchedule : & backupv1.BackupSchedule {Id : "schedule-ret" , ClusterId : "cluster-abc" },
47- }, nil
48- }
42+ },
43+ nil ,
44+ )
4945
5046 _ , _ , err := testutil .Exec (t , env , "backup" , "schedule" , "create" ,
5147 "--cluster-id=cluster-abc" , "--schedule=0 2 * * *" , "--retention-days=30" )
5248 require .NoError (t , err )
53- assert .Equal (t , int64 (30 ), capturedRetentionDays )
49+ req , _ := env .BackupServer .CreateBackupScheduleCalls .Last ()
50+ var retentionDays int64
51+ if req .GetBackupSchedule ().GetRetentionPeriod () != nil {
52+ retentionDays = int64 (req .GetBackupSchedule ().GetRetentionPeriod ().AsDuration ().Hours ()) / 24
53+ }
54+ assert .Equal (t , int64 (30 ), retentionDays )
5455}
5556
5657func TestScheduleCreate_JSONOutput (t * testing.T ) {
5758 env := testutil .NewTestEnv (t )
58- t .Cleanup (env .Cleanup )
5959
60- env .BackupServer .CreateBackupScheduleFunc = func ( _ context. Context , _ * backupv1. CreateBackupScheduleRequest ) ( * backupv1. CreateBackupScheduleResponse , error ) {
61- return & backupv1.CreateBackupScheduleResponse {
60+ env .BackupServer .CreateBackupScheduleCalls . Returns (
61+ & backupv1.CreateBackupScheduleResponse {
6262 BackupSchedule : & backupv1.BackupSchedule {Id : "schedule-json" , Schedule : "0 5 * * *" },
63- }, nil
64- }
63+ },
64+ nil ,
65+ )
6566
6667 stdout , _ , err := testutil .Exec (t , env , "backup" , "schedule" , "create" ,
6768 "--cluster-id=cluster-abc" , "--schedule=0 5 * * *" , "--retention-days=30" , "--json" )
@@ -77,7 +78,6 @@ func TestScheduleCreate_JSONOutput(t *testing.T) {
7778
7879func TestScheduleCreate_InvalidRetention (t * testing.T ) {
7980 env := testutil .NewTestEnv (t )
80- t .Cleanup (env .Cleanup )
8181
8282 _ , _ , err := testutil .Exec (t , env , "backup" , "schedule" , "create" ,
8383 "--cluster-id=cluster-abc" , "--schedule=0 2 * * *" , "--retention-days=0" )
@@ -86,15 +86,13 @@ func TestScheduleCreate_InvalidRetention(t *testing.T) {
8686
8787func TestScheduleCreate_MissingFlags (t * testing.T ) {
8888 env := testutil .NewTestEnv (t )
89- t .Cleanup (env .Cleanup )
9089
9190 _ , _ , err := testutil .Exec (t , env , "backup" , "schedule" , "create" , "--cluster-id=cluster-abc" )
9291 require .Error (t , err )
9392}
9493
9594func TestScheduleCreate_MissingClusterID (t * testing.T ) {
9695 env := testutil .NewTestEnv (t )
97- t .Cleanup (env .Cleanup )
9896
9997 _ , _ , err := testutil .Exec (t , env , "backup" , "schedule" , "create" ,
10098 "--schedule=0 2 * * *" , "--retention-days=30" )
@@ -103,7 +101,6 @@ func TestScheduleCreate_MissingClusterID(t *testing.T) {
103101
104102func TestScheduleCreate_MissingRetentionDays (t * testing.T ) {
105103 env := testutil .NewTestEnv (t )
106- t .Cleanup (env .Cleanup )
107104
108105 _ , _ , err := testutil .Exec (t , env , "backup" , "schedule" , "create" ,
109106 "--cluster-id=cluster-abc" , "--schedule=0 2 * * *" )
0 commit comments