
Problema con metodo assertEquals
Publicado por Guillermo (5 intervenciones) el 13/11/2016 14:07:03
Tengo problemas con unas pruebas que estoy pasando,concretamente con "assertEquals"
Realmente estoy comparando dos objetos de tipo "user" que tienen 3 parámetros "username,password,fullname"
En las pruebas hago esto:
Primero compruebo que no existe ningún usuario,luego creo un usuario y por ultimo con el User u2 le paso el username y password de U1 y si la información de u1 y u2 es la misma sigo hacia adelante,el caso es que cuando llego al assertEquals(u1,u2) me dice que no son iguales pero yo creo que si lo son...
La clase donde hago los cálculos es esta la clase Platform
El código de assertEquals es el siguiente
static public void assertEquals(Object expected, Object actual) {
assertEquals(null, expected, actual);
}
No entiendo por que me dice que los objetos u1 y u2 no son iguales.
Realmente estoy comparando dos objetos de tipo "user" que tienen 3 parámetros "username,password,fullname"
En las pruebas hago esto:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public void loginUser() {
Platform platform = new Platform();
// Check that no user is in the platform
assertEquals((int)platform.getNumUsers(), 0);
// Register new user
User u1=platform.registerUser(username1, password1, fullName1);
assertNotNull(u1);
assertEquals((int)platform.getNumUsers(), 1);
// Try to login with the new user credentials
User u2 = platform.login(username1, password1);
assertNotNull(u2);
assertEquals((int)platform.getNumUsers(), 1);
// User information is correct
assertEquals(u1, u2);
Primero compruebo que no existe ningún usuario,luego creo un usuario y por ultimo con el User u2 le paso el username y password de U1 y si la información de u1 y u2 es la misma sigo hacia adelante,el caso es que cuando llego al assertEquals(u1,u2) me dice que no son iguales pero yo creo que si lo son...
La clase donde hago los cálculos es esta la clase Platform
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
package edu.uoc.dpoo;
import java.util.ArrayList;
import java.util.List;
/**
*
* @author Guillermo Rodriguez Barcelo
*/
public class Platform {
private List<Competition> competitions;
private List<User> users;
public Platform(){
competitions = new ArrayList<Competition>();
users = new ArrayList<User>();
}
public User registerUser(String username ,String password,String fullname){
User p = findUser(username);
if (p == null) {
p = new User(username, password,fullname);
users.add(p);
}
else {
p=null;
}
return (User) p;
}
public User findUser (String username) {
User user = null;
for (User p : users) {
if (username.equals(p.getUserName())) {
user = p;
p= null;
break;
}
}
return user;
}
public User login(String username,String password){
User user = null;
for (User p : users){
if(username.equals(p.getUserName())&& (password.equals(p.getPassword())) ){
user = p;
break;
}else
{
return null;
}
}
return user;
}
public Integer getNumUsers(){
Integer size=users.size();
return size ;
}
public Integer getNumCompetitions(){
return null;
}
public Message sendMessage(User from,String to,String subject,String message){
return null;
}
private float evaluateAll(){
return (float) 0.0;
}
public List<Competition> getOpenCompetitions(){
return null;
}
private User User(User u) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
}
El código de assertEquals es el siguiente
static public void assertEquals(Object expected, Object actual) {
assertEquals(null, expected, actual);
}
No entiendo por que me dice que los objetos u1 y u2 no son iguales.
Valora esta pregunta


0