@@ -39,26 +39,26 @@ func Test_CreateNewTask(t *testing.T) {
39
39
dbName := "_system"
40
40
testCases := map [string ]* arangodb.TaskOptions {
41
41
"taskWIthParams" : {
42
- Name : "taskWIthParams" ,
43
- Command : "(function(params) { require('@arangodb').print(params); })(params)" ,
44
- Period : 2 ,
42
+ Name : utils . NewType ( "taskWIthParams" ) ,
43
+ Command : utils . NewType ( "(function(params) { require('@arangodb').print(params); })(params)" ) ,
44
+ Period : utils . NewType ( int64 ( 2 )) ,
45
45
Params : map [string ]interface {}{
46
46
"test" : "hello" ,
47
47
},
48
48
},
49
49
"taskWIthOutParams" : {
50
- Name : "taskWIthOutParams" ,
51
- Command : "(function() { require('@arangodb').print('Hello'); })()" ,
52
- Period : 2 ,
50
+ Name : utils . NewType ( "taskWIthOutParams" ) ,
51
+ Command : utils . NewType ( "(function() { require('@arangodb').print('Hello'); })()" ) ,
52
+ Period : utils . NewType ( int64 ( 2 )) ,
53
53
},
54
54
}
55
55
56
56
for name , options := range testCases {
57
57
withContextT (t , defaultTestTimeout , func (ctx context.Context , tb testing.TB ) {
58
- createdTask , err := client .CreateTask (ctx , dbName , options )
58
+ createdTask , err := client .CreateTask (ctx , dbName , * options )
59
59
require .NoError (t , err )
60
60
require .NotNil (t , createdTask )
61
- require .Equal (t , name , createdTask .Name ())
61
+ require .Equal (t , name , * createdTask .Name ())
62
62
t .Logf ("Params: %v" , options .Params )
63
63
// Proper params comparison
64
64
// Check parameters
@@ -76,20 +76,27 @@ func Test_CreateNewTask(t *testing.T) {
76
76
}
77
77
}
78
78
79
- taskInfo , err := client .Task (ctx , dbName , createdTask .ID ())
79
+ taskInfo , err := client .Task (ctx , dbName , * createdTask .ID ())
80
80
require .NoError (t , err )
81
81
require .NotNil (t , taskInfo )
82
- require .Equal (t , name , taskInfo .Name ())
82
+ require .Equal (t , name , * taskInfo .Name ())
83
83
84
84
tasks , err := client .Tasks (ctx , dbName )
85
85
require .NoError (t , err )
86
86
require .NotNil (t , tasks )
87
87
require .Greater (t , len (tasks ), 0 , "Expected at least one task to be present" )
88
88
t .Logf ("Found tasks: %v" , tasks )
89
- t .Logf ("Task Id to be removed: %s\n " , tasks [0 ].ID ())
90
-
91
- require .NoError (t , client .RemoveTask (ctx , dbName , createdTask .ID ()))
92
- t .Logf ("Task %s removed successfully" , createdTask .ID ())
89
+ if len (tasks ) > 0 && tasks [0 ].ID () != nil {
90
+ t .Logf ("Task Id to be removed: %s\n " , * tasks [0 ].ID ())
91
+ } else {
92
+ t .Logf ("Task Id to be removed: <nil>" )
93
+ }
94
+ if id := createdTask .ID (); id != nil {
95
+ require .NoError (t , client .RemoveTask (ctx , dbName , * id ))
96
+ t .Logf ("Task %s removed successfully" , * id )
97
+ } else {
98
+ t .Logf ("Task ID is nil" )
99
+ }
93
100
})
94
101
}
95
102
}, WrapOptions {
@@ -102,19 +109,26 @@ func Test_ValidationsForCreateNewTask(t *testing.T) {
102
109
dbName := "_system"
103
110
testCases := map [string ]* arangodb.TaskOptions {
104
111
"taskWIthOutCommand" : {
105
- Name : "taskWIthOutCommand" ,
106
- Period : 2 ,
112
+ Name : utils . NewType ( "taskWIthOutCommand" ) ,
113
+ Period : utils . NewType ( int64 ( 2 )) ,
107
114
},
108
115
"taskWIthOutPeriod" : nil ,
109
116
}
110
117
111
118
for name , options := range testCases {
112
119
withContextT (t , defaultTestTimeout , func (ctx context.Context , tb testing.TB ) {
113
- _ , err := client .CreateTask (ctx , dbName , options )
120
+ var err error
121
+ if options == nil {
122
+ _ , err = client .CreateTask (ctx , dbName , arangodb.TaskOptions {})
123
+ } else {
124
+ _ , err = client .CreateTask (ctx , dbName , * options )
125
+ }
126
+
114
127
require .Error (t , err )
115
128
t .Logf ("Expected error for task '%s': %v" , name , err )
116
129
})
117
130
}
131
+
118
132
}, WrapOptions {
119
133
Parallel : utils .NewType (false ),
120
134
})
@@ -126,27 +140,27 @@ func Test_TaskCreationWithId(t *testing.T) {
126
140
dbName := "_system"
127
141
taskID := "test-task-id"
128
142
options := & arangodb.TaskOptions {
129
- ID : taskID , // Optional if CreateTaskWithID sets it, but safe to keep
130
- Name : "TestTaskWithID" ,
131
- Command : "console.log('This is a test task with ID');" ,
132
- Period : 5 ,
143
+ ID : & taskID , // Optional if CreateTaskWithID sets it, but safe to keep
144
+ Name : utils . NewType ( "TestTaskWithID" ) ,
145
+ Command : utils . NewType ( "console.log('This is a test task with ID');" ) ,
146
+ Period : utils . NewType ( int64 ( 5 )) ,
133
147
}
134
148
135
149
// Create the task with explicit ID
136
- task , err := client .CreateTaskWithID (ctx , dbName , taskID , options )
150
+ task , err := client .CreateTaskWithID (ctx , dbName , taskID , * options )
137
151
require .NoError (t , err , "Expected task creation to succeed" )
138
152
require .NotNil (t , task , "Expected task to be non-nil" )
139
- require .Equal (t , taskID , task .ID (), "Task ID mismatch" )
140
- require .Equal (t , options .Name , task .Name (), "Task Name mismatch" )
153
+ require .Equal (t , taskID , * task .ID (), "Task ID mismatch" )
154
+ require .Equal (t , * options .Name , * task .Name (), "Task Name mismatch" )
141
155
142
156
// Retrieve and validate
143
157
retrievedTask , err := client .Task (ctx , dbName , taskID )
144
158
require .NoError (t , err , "Expected task retrieval to succeed" )
145
159
require .NotNil (t , retrievedTask , "Expected retrieved task to be non-nil" )
146
- require .Equal (t , taskID , retrievedTask .ID (), "Retrieved task ID mismatch" )
147
- require .Equal (t , options .Name , retrievedTask .Name (), "Retrieved task Name mismatch" )
148
- // Try to create task again with same ID — expect 429
149
- _ , err = client .CreateTaskWithID (ctx , dbName , taskID , options )
160
+ require .Equal (t , taskID , * retrievedTask .ID (), "Retrieved task ID mismatch" )
161
+ require .Equal (t , * options .Name , * retrievedTask .Name (), "Retrieved task Name mismatch" )
162
+
163
+ _ , err = client .CreateTaskWithID (ctx , dbName , taskID , * options )
150
164
require .Error (t , err , "Creating a duplicate task should fail" )
151
165
152
166
// Clean up
0 commit comments