@@ -197,58 +197,20 @@ func Test_config_setup_FoldersAPIService_Update(t *testing.T) {
197197
198198// ---
199199
200- // Test_config_setup_FoldersAPIService_List tests listing folders
200+ // Test_config_setup_FoldersAPIService_List tests listing folders (read-only)
201201func Test_config_setup_FoldersAPIService_List (t * testing.T ) {
202- t .Skip ("API returns 500 Internal Server Error on folder create - folder creation not supported in test environment" )
203202 // Setup the authenticated client
204203 client := SetupConfigSvcTestClient (t )
205204
206- // 1. Create a folder first to have something to list
207- createdFolderName := "test-folder-list-" + common .GenerateRandomString (10 )
208- folder := config_setup.Folders {
209- Description : common .StringPtr ("Test folder for list API testing" ),
210- Name : createdFolderName ,
211- Parent : "Shared" ,
212- }
213-
214- // Create the folder via API
215- reqCreate := client .FoldersAPI .CreateFolder (context .Background ()).Folders (folder )
216- createRes , _ , err := reqCreate .Execute ()
217- if err != nil {
218- handleAPIError (err )
219- }
220- require .NoError (t , err , "Failed to create folder for list test" )
221- createdFolderID := createRes .Id
222- require .NotEmpty (t , createdFolderID , "Created folder should have an ID" )
223-
224- // 2. Test List operation
225- reqList := client .FoldersAPI .ListFolders (context .Background ()).Limit (500 )
226- listRes , httpResList , errList := reqList .Execute ()
205+ // Read-only test: list existing folders (Create gives 500, but List works independently)
206+ listRes , httpResList , errList := client .FoldersAPI .ListFolders (context .Background ()).Limit (200 ).Offset (0 ).Execute ()
227207 if errList != nil {
228208 handleAPIError (errList )
229209 }
230-
231- // Verify the list operation was successful
232210 require .NoError (t , errList , "Failed to list folders" )
233211 assert .Equal (t , 200 , httpResList .StatusCode , "Expected 200 OK status" )
234-
235- // Assert response object properties
236212 require .NotNil (t , listRes , "List response should not be nil" )
237- require .NotNil (t , listRes .Data , "List response data should not be nil" )
238- assert .GreaterOrEqual (t , len (listRes .Data ), 1 , "Expected at least 1 folder in the list response" )
239-
240- t .Logf ("Successfully listed and found created folder: %s" , createdFolderName )
241-
242- // 3. Cleanup: Delete the created folder
243- reqDel := client .FoldersAPI .DeleteFolderByID (context .Background (), createdFolderID )
244- httpResDel , errDel := reqDel .Execute ()
245- if errDel != nil {
246- handleAPIError (errDel )
247- }
248- require .NoError (t , errDel , "Failed to delete folder during cleanup" )
249- assert .Equal (t , 200 , httpResDel .StatusCode , "Expected 200 OK status for delete" )
250-
251- t .Logf ("Successfully cleaned up folder: %s" , createdFolderID )
213+ t .Logf ("Successfully listed folders, total: %d" , listRes .GetTotal ())
252214}
253215
254216// ---
@@ -299,60 +261,19 @@ func Test_config_setup_FoldersAPIService_DeleteByID(t *testing.T) {
299261 assert .Equal (t , 404 , httpResGet .StatusCode , "Expected 404 Not Found status after deletion" )
300262}
301263
302- // Test_config_setup_FoldersAPIService_FetchFolders tests the FetchFolders convenience method
264+ // Test_config_setup_FoldersAPIService_FetchFolders tests the FetchFolders convenience method (read-only)
303265func Test_config_setup_FoldersAPIService_FetchFolders (t * testing.T ) {
304- t .Skip ("API returns 500 Internal Server Error on folder create - folder creation not supported in test environment" )
305266 // Setup the authenticated client
306267 client := SetupConfigSvcTestClient (t )
307268
308- // Create test object using same payload as Create test
309- testName := "test-folder-fetch-" + common .GenerateRandomString (6 )
310- testObj := config_setup.Folders {
311- Description : common .StringPtr ("Test folder for fetch API testing" ),
312- Name : testName ,
313- Parent : "Shared" ,
314- }
315-
316- createReq := client .FoldersAPI .CreateFolder (context .Background ()).Folders (testObj )
317- createRes , _ , err := createReq .Execute ()
318- if err != nil {
319- handleAPIError (err )
320- }
321- require .NoError (t , err , "Failed to create test object for fetch test" )
322- require .NotNil (t , createRes , "Create response should not be nil" )
323- createdID := createRes .Id
324-
325- // Cleanup after test
326- defer func () {
327- deleteReq := client .FoldersAPI .DeleteFolderByID (context .Background (), createdID )
328- _ , _ = deleteReq .Execute ()
329- t .Logf ("Cleaned up test object: %s" , createdID )
330- }()
331-
332- // Test 1: Fetch existing object by name
333- fetchedObj , err := client .FoldersAPI .FetchFolders (
269+ // Read-only test: Fetch non-existent object (should return nil, nil)
270+ notFound , err := client .FoldersAPI .FetchFolders (
334271 context .Background (),
335- testName ,
336- nil , // folder (folders don't have folder field)
272+ "non-existent-folder-xyz-12345" ,
273+ nil , // folder
337274 nil , // snippet
338275 nil , // device
339276 )
340-
341- // Verify successful fetch
342- require .NoError (t , err , "Failed to fetch folders by name" )
343- require .NotNil (t , fetchedObj , "Fetched object should not be nil" )
344- assert .Equal (t , createdID , fetchedObj .Id , "Fetched object ID should match" )
345- assert .Equal (t , testName , fetchedObj .Name , "Fetched object name should match" )
346- t .Logf ("[SUCCESS] FetchFolders found object: %s" , fetchedObj .Name )
347-
348- // Test 2: Fetch non-existent object (should return nil, nil)
349- notFound , err := client .FoldersAPI .FetchFolders (
350- context .Background (),
351- "non-existent-folders-xyz-12345" ,
352- nil , // folder (folders don't have folder field)
353- nil ,
354- nil ,
355- )
356277 require .NoError (t , err , "Fetch should not error for non-existent object" )
357278 assert .Nil (t , notFound , "Should return nil for non-existent object" )
358279 t .Logf ("[SUCCESS] FetchFolders correctly returned nil for non-existent object" )
0 commit comments