У меня есть abstract class Printers
, и я просто хочу проверить его equals
метод, но когда я создаю два Printers
в PrintersTest
, я не могу установить их.
Это PrintersTest
:
import static org.junit.jupiter.api.Assertions.*;
import org.junit.jupiter.api.Test;
class PrintersTest {
@Test
void testEqualsObject() {
Printers a = new Printers("BW_LASER HP", "Laserjet 1230", "25", "180 euros");
Printers b = new Printers("BW_LASER HP", "Laserjet 1230", "25", "180 euros");
assertEquals(a,b);
}
}
и это Printers
класс:
import java.util.Objects;
public abstract class Printers {
protected String brand;
protected String model;
protected String pages;
protected String price;
public Printers(String brand, String model, String pages, String price) {
super();
this.brand = brand;
this.model = model;
this.pages = pages;
this.price = price;
}
/*
* (non-Javadoc)
*
* @see java.lang.Object#equals(java.lang.Object)
*/
@Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (obj == null) {
return false;
}
if (!(obj instanceof Printers)) {
return false;
}
Printers other = (Printers) obj;
return Objects.equals(brand, other.brand) && Objects.equals(model, other.model)
&& Objects.equals(pages, other.pages) && Objects.equals(price, other.price);
}
}
Большое спасибо за вашу помощь.