View Javadoc
1   package com.acumenvelocity.ath.integration;
2   
3   import com.fasterxml.jackson.databind.JsonNode;
4   import org.junit.jupiter.api.Test;
5   
6   import static org.junit.jupiter.api.Assertions.*;
7   
8   public class TestFilters_IT extends BaseIntegrationTest {
9   
10    @Test
11    public void testGetFilters() throws Exception {
12      HttpResponse response = sendGetRequest("/filters");
13  
14      assertEquals(200, response.getStatusCode(), "Expected HTTP 200");
15  
16      JsonNode json = parseJson(response.getBody());
17      assertTrue(json.has("filters"), "Response should have 'filters' field");
18  
19      JsonNode filters = json.get("filters");
20      assertTrue(filters.isArray(), "Filters should be an array");
21      assertTrue(filters.size() > 0, "Filters array should not be empty");
22  
23      // Verify structure
24      JsonNode firstFilter = filters.get(0);
25      assertTrue(firstFilter.has("id"), "Filter should have 'id' field");
26      assertTrue(firstFilter.has("name"), "Filter should have 'name' field");
27      assertTrue(firstFilter.has("description"), "Filter should have 'description' field");
28      assertTrue(firstFilter.has("file_extensions"), "Filter should have 'file_extensions' field");
29  
30      System.out.println("Found " + filters.size() + " filters");
31    }
32  }