/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package dia4g3java;

import Hito4.Producto;
import Hito4.CuentaCorriente;
import Hito4.Movimiento;
import Hito4.Cliente;
import java.util.ArrayList;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import static org.junit.Assert.*;

/**
 *
 * @author acc_local
 */
public class ProductoTest {
    CuentaCorriente c;
    public ProductoTest() {
    }

    @BeforeClass
    public static void setUpClass() throws Exception {
    }

    @AfterClass
    public static void tearDownClass() throws Exception {
    }

    @Before
    public void setUp() {
        c=new CuentaCorriente();
        c.setSaldo(100);
    }

    @After
    public void tearDown() {
    }

    /**
     * Test of getMovimiento method, of class Producto.
     */
    @Test
    public void testGetMovimiento() {
    }

    /**
     * Test of setMovimiento method, of class Producto.
     */
    @Test
    public void testSetMovimiento() {
    }

    /**
     * Test of getNombreCliente method, of class Producto.
     */
    @Test
    public void testGetNombreCliente() {
    }

    /**
     * Test of setNombreCliente method, of class Producto.
     */
    @Test
    public void testSetNombreCliente() {
    }

    /**
     * Test of getNumeroProducto method, of class Producto.
     */
    @Test
    public void testGetNumeroProducto() {
    }

    /**
     * Test of setNumeroProducto method, of class Producto.
     */
    @Test
    public void testSetNumeroProducto() {
    }

    /**
     * Test of insertaMovimientoenCuenta method, of class Producto.
     */
    @Test
    public void testInsertaMovimientoenCuenta() {
    }

    /**
     * Test of getSaldo method, of class Producto.
     */
    @Test
    public void testGetSaldo() {
    }

    /**
     * Test of setSaldo method, of class Producto.
     */
    @Test
    public void testSetSaldo() {
    }

    /**
     * Test of reintegro method, of class Producto.
     */
    @Test
    public void testReintegro() {
        c.reintegro(50);
        assertTrue(c.getSaldo()==50);

        c.reintegro(60);
        assertTrue(c.getSaldo()==50);

        c.reintegro(50);
        assertTrue(c.getSaldo()==0);
    }

    /**
     * Test of ingreso method, of class Producto.
     */
    @Test
    public void testIngreso() {
        c.ingreso(50);
        assertTrue(c.getSaldo()==150);

        c.ingreso(-10);
        assertTrue(c.getSaldo()==140);
    }

    /**
     * Test of getMovimiento method, of class Producto.
     */
    @Test
    public void testGetMovimiento1() {
        System.out.println("getMovimiento");
        Producto instance = new Producto();
        ArrayList<Movimiento> expResult = null;
        ArrayList<Movimiento> result = instance.getMovimiento();
        assertEquals(expResult, result);
        // TODO review the generated test code and remove the default call to fail.
       // fail("The test case is a prototype.");
    }

    /**
     * Test of setMovimiento method, of class Producto.
     */
    @Test
    public void testSetMovimiento_ArrayList() {
        System.out.println("setMovimiento");
        ArrayList<Movimiento> val = null;
        Producto instance = new Producto();
        instance.setMovimiento(val);
        // TODO review the generated test code and remove the default call to fail.
        //fail("The test case is a prototype.");
    }

    /**
     * Test of getNumeroProducto method, of class Producto.
     */
    @Test
    public void testGetNumeroProducto1() {
        System.out.println("getNumeroProducto");
        Producto instance = new Producto();
        String expResult = "";
        String result = instance.getNumeroProducto();
        assertEquals(expResult, result);
        // TODO review the generated test code and remove the default call to fail.
        //fail("The test case is a prototype.");
    }

    /**
     * Test of setNumeroProducto method, of class Producto.
     */
    @Test
    public void testSetNumeroProducto_String() {
        System.out.println("setNumeroProducto");
        String val = "";
        Producto instance = new Producto();
        instance.setNumeroProducto(val);
        // TODO review the generated test code and remove the default call to fail.
        //fail("The test case is a prototype.");
    }

    /**
     * Test of insertaMovimientoenCuenta method, of class Producto.
     */
    @Test
    public void testInsertaMovimientoenCuenta_Movimiento() {
        System.out.println("insertaMovimientoenCuenta");
        Movimiento mov = null;
        Producto instance = new Producto();
        instance.insertaMovimientoenCuenta(mov);
        // TODO review the generated test code and remove the default call to fail.
        //fail("The test case is a prototype.");
    }

    /**
     * Test of getSaldo method, of class Producto.
     */
    @Test
    public void testGetSaldo1() {
        System.out.println("getSaldo");
        Producto instance = new Producto();
        double expResult = 0.0;
        double result = instance.getSaldo();
        assertEquals(expResult, result);
        // TODO review the generated test code and remove the default call to fail.
        //fail("The test case is a prototype.");
    }

    /**
     * Test of setSaldo method, of class Producto.
     */
    @Test
    public void testSetSaldo_double() {
        System.out.println("setSaldo");
        double saldo = 0.0;
        Producto instance = new Producto();
        instance.setSaldo(saldo);
        // TODO review the generated test code and remove the default call to fail.
        //fail("The test case is a prototype.");
    }

    /**
     * Test of reintegro method, of class Producto.
     */
    @Test
    public void testReintegro_double() {
        System.out.println("reintegro");
        double cantidad = 0.0;
        Producto instance = new Producto();
        instance.reintegro(cantidad);
        // TODO review the generated test code and remove the default call to fail.
        fail("The test case is a prototype.");
    }

    /**
     * Test of ingreso method, of class Producto.
     */
    @Test
    public void testIngreso_double() {
        System.out.println("ingreso");
        double cantidad = 0.0;
        Producto instance = new Producto();
        instance.ingreso(cantidad);
        // TODO review the generated test code and remove the default call to fail.
        fail("The test case is a prototype.");
    }

    /**
     * Test of transferencia method, of class Producto.
     */
    @Test
    public void testTransferencia() throws Exception {
        System.out.println("transferencia");
        Producto origen = null;
        Producto destino = null;
        String concepto = "";
        String fecha = "";
        Double importe = null;
        Double comision = null;
        Producto instance = new Producto();
        boolean expResult = false;
        boolean result = instance.transferencia(origen, destino, concepto, fecha, importe, comision);
        assertEquals(expResult, result);
        // TODO review the generated test code and remove the default call to fail.
        fail("The test case is a prototype.");
    }

    /**
     * Test of getMTitulares method, of class Producto.
     */
    @Test
    public void testGetMTitulares() {
        System.out.println("getMTitulares");
        Producto instance = new Producto();
        ArrayList<Cliente> expResult = null;
        ArrayList<Cliente> result = instance.getMTitulares();
        assertEquals(expResult, result);
        // TODO review the generated test code and remove the default call to fail.
        fail("The test case is a prototype.");
    }

    /**
     * Test of setMTitulares method, of class Producto.
     */
    @Test
    public void testSetMTitulares() {
        System.out.println("setMTitulares");
        ArrayList<Cliente> mTitulares = null;
        Producto instance = new Producto();
        instance.setMTitulares(mTitulares);
        // TODO review the generated test code and remove the default call to fail.
        fail("The test case is a prototype.");
    }

    /**
     * Test of insertaTitularenProducto method, of class Producto.
     */
    @Test
    public void testInsertaTitularenProducto() {
        System.out.println("insertaTitularenProducto");
        Cliente c = null;
        Producto instance = new Producto();
        instance.insertaTitularenProducto(c);
        // TODO review the generated test code and remove the default call to fail.
        fail("The test case is a prototype.");
    }

}