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
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 }