Author Archive

EasyMock i IAnswer, recepta na zachowanie metod

Posted by Łukasz Dywicki on Dec 03 2008

Złym zwyczajem jest modyfikowanie argumentów zamiast zwracania nowej wartości, jakkolwiek trafiają się sytuacje gdy testowany kod powinien weryfikować takie wywołania. W EasyMock mamy do dyspozycji w takim przypadku interfejs IAnswer. Jego użycie jest w miarę proste – dobieramy się do tablicy argumentów i robimy z nią co potrzeba.
Oto przykład – interfejs Populator dodaje do przekazanej [...]

2 responses so far

Testowanie tablic argumentów z EasyMock

Posted by Łukasz Dywicki on Nov 26 2008

Często zdarza się że metody, które piszemy i później testujemy mają argumenty w postaci tablic. EasyMock wówczas potrafi zgłosić wyjątek, że przekazana tablica jest różna od oczekiwanej mimo, że zawartość tablic jest identyczna.
java.lang.AssertionError:
Unexpected method call find([Ljava.lang.String;@1ad77a7):
find([Ljava.lang.String;@b8f82d): expected: 1, actual: 0

package org.code_house.test.mock;

import static org.easymock.EasyMock.aryEq;
import static org.easymock.EasyMock.createMock;
import static org.easymock.EasyMock.expect;
import static org.easymock.EasyMock.replay;

import [...]

No responses yet

Uruchom inny język w Javie

Posted by Łukasz Dywicki on Nov 24 2008

Do Javy 6.0 zostało dołączone API (JSR 223) umożliwiające wywoływanie różnych języków wewnątrz wirtualnej maszyny. Można w ten sposób przesunąć chociażby moment kompilowania kodu na później bądź od razu podpiąć język interpretowany.
Poniżej przykład:

package org.code_house.scripting;

import javax.script.ScriptEngine;
import javax.script.ScriptEngineFactory;
import javax.script.ScriptEngineManager;

public class JSMain {

public static void main(String[] args) throws Exception {
[...]

No responses yet

« Newer Entries - Older Entries »