Java - @test, error en clase java

 
Vista:
Imágen de perfil de juan

@test, error en clase java

Publicado por juan (1 intervención) el 31/07/2017 01:06:57
Hola, estoy realizando unos test de prueba y veo que existe un error en una clase, no programo en java y no me doy cuenta del error exacto en la clase.
Test:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@Test
    public void testAgregarProductoExistente(){
		carrito.agregarProducto(papa, 20);
		assertEquals(20, carrito.obtenerCantidad("papa"));
 
		carrito.agregarProducto(papa, 2);
		//deberían haber 22 papas
		assertEquals(22, carrito.obtenerCantidad("papa"));
	}
    @Test
    public void testProbarTotal(){
		carrito.agregarProducto(papa, 1);
		carrito.agregarProducto(lechuga, 1);
		assertEquals(25+10, (long)carrito.obtenerPrecioTotal());
	}
resultado:
Testsuite: logica.CarritoTest
Tests run: 2, Failures: 2, Errors: 0, Skipped: 0, Time elapsed: 0,094 sec

Testcase: testProbarTotal(logica.CarritoTest): FAILED
expected:<35> but was:<10>
junit.framework.AssertionFailedError: expected:<35> but was:<10>
at logica.CarritoTest.testProbarTotal(CarritoTest.java:58)


Testcase: testAgregarProductoExistente(logica.CarritoTest): FAILED
expected:<22> but was:<20>
junit.framework.AssertionFailedError: expected:<22> but was:<20>
at logica.CarritoTest.testAgregarProductoExistente(CarritoTest.java:48)


Agrego la clase:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
package logica;
 
import java.util.Iterator;
import java.util.LinkedList;
import javax.naming.CommunicationException;
 
class Carrito implements ICarrito {
 
	private LinkedList<Item> items;
	// el carrito se compone por una lista de <Producto, cantidad>
 
    Cliente cliente;
    String nombreCarrito;
    private ISistemaClientes sistCli;
    private ISistemaFacturacion sistFact;
 
    public Carrito(Cliente c) {
        cliente = c;
        sistCli = null;
        sistFact = null;
        try
        {
            nombreCarrito = c.getNombre();
        }
        catch(CommunicationException ce)
        {
            nombreCarrito = "General";
        }
 
		this.items = new LinkedList<Item> ();
	}
 
	public void agregarProducto(Producto p, int cant) {
		Item i = this.obtenerItem(p.getNombre());
		if(i != null){
			i.setCantidad(i.getCantidad());
                        i.setCantidad(i.getCantidad());
		}
		else {
			items.add(new Item(p, cant));
		}
	}
 
	public void disminuirProducto(Producto p, int cant) {
		// TODO Auto-generated method stub
 
	}
 
	public void eliminarProductos(Producto p) {
		// TODO Auto-generated method stub
 
	}
 
 
    public double obtenerPrecioTotal() {
	double precioTotal = 0;
        for (Item item : items)
            precioTotal = item.getProducto().getPrecio();
 
        return precioTotal;
	}
 
	public double obtenerSubtotal(String s) {
		// TODO Auto-generated method stub
		return 0;
	}
 
	public int obtenerCantidad(String s) {
 
		Item i = obtenerItem(s);
		if (i != null){
			return i.getCantidad();
		}
		else {
			return -1;
		}
	}
 
    public void vaciar() {
        items.clear();
    }
 
    private Item obtenerItem(String s){
		Iterator<Item> iter = items.iterator();
		while(iter.hasNext()){
			Item actual = iter.next();
			if (actual.getProducto().getNombre().equals(s)){
				return actual;
			}
		}
		return null;
	}
 
    public void pagar() {
        double total = (double) obtenerPrecioTotal();
        double descuento;
 
        try {
            descuento = sistCli.descuentoCliente(cliente);
        } catch (NoExisteClienteException e) {
            descuento = 0;
        }
        total = total * (1 - descuento);
        sistFact.facturar(total);
    }
 
    public void configurarSistemaClientes(ISistemaClientes s) {
        this.sistCli = s;
    }
 
    public void configurarSistemaFacturacion(ISistemaFacturacion s) {
        this.sistFact = s;
    }
 
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder