Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- the test:
- `/*
- * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
- * Click nbfs://nbhost/SystemFileSystem/Templates/UnitTests/JUnit5TestClass.java to edit this template
- */
- package eac4.gestors;
- import static eac4.gestors.GestorCiutat.ARREL;
- import eac4.model.Ciutat;
- import java.util.List;
- import java.util.stream.Collectors;
- import javax.xml.xquery.XQConnection;
- import javax.xml.xquery.XQDataSource;
- import javax.xml.xquery.XQException;
- import javax.xml.xquery.XQExpression;
- import javax.xml.xquery.XQResultSequence;
- import net.xqj.basex.BaseXXQDataSource;
- import org.junit.jupiter.api.AfterEach;
- import org.junit.jupiter.api.AfterAll;
- import org.junit.jupiter.api.BeforeEach;
- import org.junit.jupiter.api.BeforeAll;
- import org.junit.jupiter.api.Test;
- import static org.junit.jupiter.api.Assertions.*;
- import org.junit.jupiter.api.MethodOrderer;
- import org.junit.jupiter.api.Order;
- import org.junit.jupiter.api.TestMethodOrder;
- import org.junit.jupiter.params.ParameterizedTest;
- import org.junit.jupiter.params.provider.ValueSource;
- `/**
- *
- * @author joan
- */
- @TestMethodOrder(MethodOrderer.OrderAnnotation.class)
- public class TestGestors {
- private static XQDataSource xQDataSource;
- private static List<Ciutat> llistaCiutats;
- private static List<Ciutat> creaLlista() {
- return List.of(
- new Ciutat("Barcelona", 41.3851, 2.1734, 101.9, 12,
- 1600000, "Mare de Déu de la Mercè",
- List.of("Sagrada Família", "Parc Güell", "La Rambla",
- "Casa Batlló", "Barri Gòtic", "Camp Nou",
- "Montjuïc i Palau Nacional", "Museu Picasso",
- "Platja de la Barceloneta",
- "Font Màgica de Montjuïc")),
- new Ciutat("Tarragona", 41.1189, 1.2445, 63.1, 20,
- 200000, "Santa Tecla",
- List.of("Amfiteatre Romà de Tarragona", "Catedral de Tarragona",
- "Muralla de Tarragona", "Circo Romano",
- "Port de Tarragona", "Balco del Mediterrani",
- "Museu Nacional Arqueològic de Tarragona",
- "Platja del Miracle", "Font del Centenari",
- "Casa Castellarnau")),
- new Ciutat("Lleida", 41.6176, 0.6200, 211.6, 150,
- 140000, "Sant Anastasi",
- List.of("La Seu Vella", "Castell de Gardeny", "Catedral Nova",
- "Rambla Ferran", "Museu d'Art Jaume Morera",
- "Parc de l'Agulla", "Teatre de l'Escorxador",
- "Seu dels Jocs Florals", "Museu de Lleida Diocesà i Comarcal",
- "Camps Elisis")),
- new Ciutat("Girona", 41.9793, 2.8195, 38.9, 70,
- 100000, "Sant Narcís",
- List.of("Catedral de Girona", "Barri Vell",
- "Muralla de Girona", "Banys Àrabs", "El Call",
- "Museu d'Història dels Jueus",
- "Monestir de Sant Pere de Galligants", "Sant Feliu",
- "Passeig de la Muralla", "Cases del riu Onyar")),
- new Ciutat("Hospitalet de Llobregat", 41.3662, 2.1165, 12, 10,
- 260000, "Santa Eulàlia",
- List.of("Parc de Can Vidalet",
- "Centre Cultural Metropolità Tecla Sala",
- "Torre Barrina", "Parc de la Remunta",
- "Museu Agbar de les Aigües",
- "Monestir de Sant Josep de la Muntanya",
- "Parc de la Marquesa", "Mercat de Bellvitge",
- "Parc dels Torrents", "Centre d'Arts Santa Eulàlia")),
- new Ciutat("Badalona", 41.4469, 2.2450, 21.2, 14,
- 220000, "Sant Anastasi",
- List.of("Pont del Petroli", "Parc de Can Solei i Ca l'Arnús",
- "Platja de Badalona", "Museu de Badalona",
- "Anís del Mono", "Centre d'Interpretació de l'Anís",
- "Parc de Montigalà", "Carrer del Mar",
- "Monestir de Sant Jeroni de la Murtra",
- "Parc Fluvial del Besòs")),
- new Ciutat("Reus", 41.1499, 1.1052, 52.5, 85,
- 107000, "Sant Pere",
- List.of("Gaudí Centre", "Casa Navàs", "Institut Pere Mata",
- "Ruta del Modernisme de Reus", "Teatre Fortuny",
- "Monestir de Sant Pere de Riu", "Plaça del Mercadal",
- "Carrer Monterols", "Parc de Sant Jordi",
- "Museu Salvador Vilaseca")),
- new Ciutat("Terrassa", 41.5632, 2.0083, 70.2, 277,
- 220000, "Sant Pere, Sant Cristòfor i Sant Valentí",
- List.of("Parc de Vallparadís", "Castell Cartoixa de Vallparadís",
- "La Seu d'Ègara", "Masia Freixa",
- "Museu de la Ciència i de la Tècnica de Catalunya",
- "Santuari de Sant Llorenç del Munt", "Torre del Palau",
- "Parc de Sant Jordi", "Parc de Sant Pere",
- "Ermita de Sant Esperit")),
- new Ciutat("Sabadell", 41.5463, 2.1086, 37.8, 190,
- 210000, "Verge de la Salut",
- List.of("Parc Catalunya", "Castell de Sant Nicolau",
- "La Farinera Teatre",
- "Museu de l'Institut Català de Paleontologia Miquel Crusafont",
- "Parc del Taulí", "Torre d'en Gorgs",
- "Santuari de la Salut", "Mercat Central de Sabadell",
- "Parc de Can Gambús", "Espai Cultura Fundació Caixa Sabadell"))
- );`
- }
- public TestGestors() {
- }
- @BeforeAll
- public static void setUpClass() throws XQException, GestorException {
- xQDataSource = new BaseXXQDataSource();
- xQDataSource.setProperty("serverName", "localhost");
- xQDataSource.setProperty("port", "1984");
- XQConnection conn = xQDataSource.getConnection("admin", "admin");
- GestorCiutat gestorCiutat = new GestorCiutat(conn);
- gestorCiutat.eliminarTot();
- conn.close();
- llistaCiutats = creaLlista();
- }
- @AfterAll
- public static void tearDownClass() {
- }
- @BeforeEach
- public void setUp() {
- }
- @AfterEach
- public void tearDown() {
- }
- /**
- * Test of inserir method, of class GestorCiutat.
- */
- @Test
- @Order(1)
- public void testInserir() throws Exception {
- System.out.println("inserir");
- XQConnection conn = xQDataSource.getConnection("admin", "admin");
- GestorCiutat instance = new GestorCiutat(conn);
- for (Ciutat ciutat : llistaCiutats) {
- instance.inserir(ciutat);
- }
- for (Ciutat ciutat : llistaCiutats) {
- assertThrows(GestorException.class, () -> {
- instance.inserir(ciutat);
- });
- }
- conn.close();
- }
- /**
- * Test of obtenirCiutat method, of class GestorCiutat.
- */
- @Test
- @Order(2)
- public void testObtenirCiutat() throws Exception {
- System.out.println("obtenirCiutat");
- int id = 0;
- XQConnection conn = xQDataSource.getConnection("admin", "admin");
- GestorCiutat instance = new GestorCiutat(conn);
- for (Ciutat o : llistaCiutats) {
- assertEquals(o, instance.obtenirCiutat(o.getNom()));
- }
- conn.close();
- }
- /**
- * Test of obtenirCiutatAmbConnector method, of class GestorCiutat.
- *
- * @param llocInteres
- */
- @ParameterizedTest
- @ValueSource(strings = {"Platja del Miracle", "Monestir", "Seu", "museu"})
- @Order(3)
- public void testObtenirCiutatAmbLlocInteres(String llocInteres) throws Exception {
- System.out.println("obtenirCiutatAmbLlocInteres");
- XQConnection conn = xQDataSource.getConnection("admin", "admin");
- GestorCiutat instance = new GestorCiutat(conn);
- `List<Ciutat> expResult = llistaCiutats.stream().filter((ciutat) -> {
- return ciutat.getLlocsInteres().stream().filter(
- (lloc) -> lloc.toLowerCase().contains(llocInteres.toLowerCase())).count() > 0;
- })
- .collect(Collectors.toList());
- `
- List<Ciutat> result = instance.obtenirCiutatAmbLlocInteres(llocInteres);
- assertEquals(expResult, result);
- conn.close();
- }
- /**
- * Test of eliminar method, of class GestorCiutat.
- */
- @Test
- @Order(4)
- public void testEliminar() throws Exception {
- System.out.println("eliminar");
- XQConnection conn = xQDataSource.getConnection("admin", "admin");
- GestorCiutat instance = new GestorCiutat(conn);
- for (Ciutat ciutat : llistaCiutats) {
- instance.eliminar(ciutat.getNom());
- assertThrows(GestorException.class,() -> {instance.eliminar(ciutat.getNom());});
- }
- conn.close();
- }
- }
Add Comment
Please, Sign In to add comment