OLDTiendaManagerTest - Dsoledispa/DSA-PROJECTE GitHub Wiki

package edu.upc.dsa;

import edu.upc.dsa.manager.TiendaManager;
import edu.upc.dsa.manager.TiendaManagerImpl;
import edu.upc.dsa.manager.UsuarioManager;
import edu.upc.dsa.manager.UsuarioManagerImpl;
import edu.upc.dsa.models.Producto;
import edu.upc.dsa.util.IniciarDatosTests;
import org.apache.log4j.Logger;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;

import java.util.List;

import static org.junit.Assert.*;

public class TiendaManagerTest {

    final static Logger logger = Logger.getLogger(TiendaManagerTest.class);
    TiendaManager tm;
    UsuarioManager um;

    @Before
    public void setUp() {
        this.tm = TiendaManagerImpl.getInstance();
        this.um = UsuarioManagerImpl.getInstance();
        this.tm.clear(); // Nos aseguramos que no haya datos anteriores
        this.um.clear();

        IniciarDatosTests.initUsuarios(this.um);
        IniciarDatosTests.initProductos(this.tm);
    }

    @After
    public void tearDown() {
        this.tm.clear();
        this.um.clear();
    }

    @Test
    public void testBuscarProductoPorId() {
        Producto p = tm.buscarProductoPorId("1");
        assertNotNull(p);
        assertEquals("Espada mágica", p.getNombre());
    }

    @Test
    public void testBuscarProductosPorNombre() {
        List<Producto> resultados = tm.buscarProductosPorNombre("poción");
        assertEquals(1, resultados.size());
        assertEquals("Poción de vida", resultados.get(0).getNombre());
    }

    @Test
    public void testComprarProducto() {
        boolean comprado = tm.comprarProducto("1", "Miguel");
        assertTrue(comprado);
    }

    @Test
    public void testListarProductosPorSeccion() {
        List<Producto> productos = tm.listarProductosPorSeccion("skins");
        assertEquals(2, productos.size());
    }

    @Test
    public void testListarProductos() {
        List<Producto> todos = tm.listarProductos();
        assertEquals(3, todos.size());
    }

}

⚠️ **GitHub.com Fallback** ⚠️