Ich bin gerade in die Welt von easymock.i gekommen frage mich, ob easymock nur Mock-Objekt für Interfaces macht? Also in meinem Bemühen zu verstehen, ich schrieb eine Klasse zu generieren einzigartige Gutschein in java.i kann natürlich nicht wissen, welchen Wert es generiert, um in der Assert stuff.So wie sicherstellen, dass der generierte Gutschein vom Typ lang ist?verifiziere Objekttyp mit easymock
hier ist die Funktion
public static Long generateID(int length) {
logger.info("Calling generateID with specify length");
Long result = null;
if (length > 0) {
StringBuffer id = new StringBuffer(length);
for (int i = 0; i < length; i++) {
id.append(NUMS[(int)Math.floor(Math.random() * 20)]);
}
result = Long.parseLong(id.toString());
}
return result;
}
hier wird die Testklasse
@Before
public void setUp() {
mockgenerator = createMock(VGenerator.class);
}
/**
* Test of generateID method, of class VGenerator.
*/
@Test
public void testGenerateID() {
Long exp = (long)1;
int length = 15;
expect(mockgenerator.generateID(length)).equals(Long.class);
replay(mockgenerator);
long res = mockgenerator.generatedID(length);
assertEquals(exp.class, res.class);
}
auch dies für Sie aussehen könnte grandios, aber ich bin immer noch verwirrt darüber, wie dieses dank tun
für die Unterstützung
Wenn generateID() versucht, etwas zurückzugeben, das nicht lange war, würde die Klasse nicht einmal kompilieren. –