blob: ef339822b2917ff98ef568142711028dfdac55a6 [file] [log] [blame]
margaretha398f4722019-01-09 19:07:20 +01001package de.ids_mannheim.korap.rewrite;
Michael Hanldaf86602016-05-12 14:31:52 +02002
Marc Kupietzd43a98d2023-09-22 17:11:46 +02003import static org.junit.jupiter.api.Assertions.assertFalse;
4import static org.junit.jupiter.api.Assertions.assertNotNull;
5import static org.junit.jupiter.api.Assertions.assertTrue;
margarethaf68daa62017-09-21 02:11:24 +02006
Marc Kupietzd43a98d2023-09-22 17:11:46 +02007import org.junit.jupiter.api.Test;
margaretha5c67dd52018-12-18 17:27:05 +01008import org.springframework.beans.factory.annotation.Autowired;
Michael Hanlf0785322015-11-13 16:14:45 +01009import com.fasterxml.jackson.databind.JsonNode;
margaretha5c67dd52018-12-18 17:27:05 +010010import de.ids_mannheim.korap.config.KustvaktConfiguration;
11import de.ids_mannheim.korap.config.SpringJerseyTest;
Michael Hanldaf86602016-05-12 14:31:52 +020012import de.ids_mannheim.korap.exceptions.KustvaktException;
Michael Hanlf0785322015-11-13 16:14:45 +010013import de.ids_mannheim.korap.query.serialize.QuerySerializer;
margaretha398f4722019-01-09 19:07:20 +010014import de.ids_mannheim.korap.rewrite.IdWriter;
15import de.ids_mannheim.korap.rewrite.RewriteHandler;
margaretha5c67dd52018-12-18 17:27:05 +010016import de.ids_mannheim.korap.user.KorAPUser;
Michael Hanlf0785322015-11-13 16:14:45 +010017import de.ids_mannheim.korap.utils.JsonUtils;
Michael Hanldaf86602016-05-12 14:31:52 +020018
Michael Hanla36fc332015-10-27 23:11:42 +010019/**
20 * @author hanl
21 * @date 21/10/2015
22 */
margaretha5c67dd52018-12-18 17:27:05 +010023public class IdRewriteTest extends SpringJerseyTest {
Michael Hanla36fc332015-10-27 23:11:42 +010024
margaretha5c67dd52018-12-18 17:27:05 +010025 @Autowired
26 private KustvaktConfiguration config;
Marc Kupietzd43a98d2023-09-22 17:11:46 +020027
Michael Hanla36fc332015-10-27 23:11:42 +010028 @Test
margaretha35e1ca22023-11-16 22:00:01 +010029 public void insertTokenId () throws KustvaktException {
margaretha5c67dd52018-12-18 17:27:05 +010030 RewriteHandler handler = new RewriteHandler(config);
Michael Hanldaf86602016-05-12 14:31:52 +020031 assertTrue(handler.add(IdWriter.class));
Michael Hanlf0785322015-11-13 16:14:45 +010032 String query = "[surface=Wort]";
33 QuerySerializer s = new QuerySerializer();
34 s.setQuery(query, "poliqarp");
margaretha5c67dd52018-12-18 17:27:05 +010035 String value = handler.processQuery(s.toJSON(), new KorAPUser());
Michael Hanlf0785322015-11-13 16:14:45 +010036 JsonNode result = JsonUtils.readTree(value);
Michael Hanldaf86602016-05-12 14:31:52 +020037 assertNotNull(result);
38 assertTrue(result.path("query").has("idn"));
Michael Hanla36fc332015-10-27 23:11:42 +010039 }
40
Michael Hanldaf86602016-05-12 14:31:52 +020041 @Test
margaretha35e1ca22023-11-16 22:00:01 +010042 public void testIdWriterTest () throws KustvaktException {
margaretha5c67dd52018-12-18 17:27:05 +010043 RewriteHandler handler = new RewriteHandler(config);
Michael Hanldaf86602016-05-12 14:31:52 +020044 assertTrue(handler.add(IdWriter.class));
Michael Hanldaf86602016-05-12 14:31:52 +020045 QuerySerializer s = new QuerySerializer();
46 s.setQuery("[base=Haus]", "poliqarp");
margaretha5c67dd52018-12-18 17:27:05 +010047 String result = handler.processQuery(s.toJSON(), new KorAPUser());
Michael Hanldaf86602016-05-12 14:31:52 +020048 JsonNode node = JsonUtils.readTree(result);
49 assertNotNull(node);
50 assertFalse(node.at("/query/wrap").isMissingNode());
51 assertFalse(node.at("/query/idn").isMissingNode());
52 }
Michael Hanla36fc332015-10-27 23:11:42 +010053}