On Jan 26, 5:25 am, "Fred Grott(Android Expert,
http://mobilebytes.wordpress.com)"
<[email protected]> wrote:
> you can only use those mocks supplied by google Sdk..not mockkit..
I'm affraid, that I must disagree with you:
-------------------%<----------------------------
package de.pribluda.games.android.lines;
import android.content.ContentValues;
import mockit.Expectations;
import mockit.Mocked;
import mockit.Verifications;
import org.junit.Test;
/**
* @author ko5tik
*/
public class HighscoreEntryTest {
@Mocked
ContentValues values;
/**
* shall marshall itself to content values
*/
@Test
public void testMarshalling() {
HighscoreEntry entry = new HighscoreEntry();
entry.setBalls(100);
entry.setDuration(2390);
entry.setPoints(500);
entry.setName("glum glam");
entry.setTime(10000);
entry.setTurns(300);
entry.marshall(values);
new Verifications() {
{
values.put(HighscoreEntry.BALLS, 100);
values.put(HighscoreEntry.DURATION, 2390);
values.put(HighscoreEntry.POINTS, 500);
values.put(HighscoreEntry.NAME, "glum glam");
values.put(HighscoreEntry.TIME, 1000);
values.put(HighscoreEntry.TURNS, 300);
}
};
}
}
-------------------%<----------------------------
CTRL-SHIFT-F10
---------------------%<-----------------------------
/home/ko5tik/jdk1.6.0_17/bin/java -Didea.launcher.port=7532 -
Didea.launcher.bin.path=/home/ko5tik/idea-IU-93.13/bin -
Dfile.encoding=UTF-8 -classpath /home/ko5tik/idea-IU-93.13/plugins/
junit/lib/junit-rt.jar:/home/ko5tik/jdk1.6.0_17/jre/lib/alt-rt.jar:/
home/ko5tik/jdk1.6.0_17/jre/lib/deploy.jar:/home/ko5tik/jdk1.6.0_17/
jre/lib/resources.jar:/home/ko5tik/jdk1.6.0_17/jre/lib/charsets.jar:/
home/ko5tik/jdk1.6.0_17/jre/lib/jce.jar:/home/ko5tik/jdk1.6.0_17/jre/
lib/javaws.jar:/home/ko5tik/jdk1.6.0_17/jre/lib/management-agent.jar:/
home/ko5tik/jdk1.6.0_17/jre/lib/plugin.jar:/home/ko5tik/jdk1.6.0_17/
jre/lib/rt.jar:/home/ko5tik/jdk1.6.0_17/jre/lib/jsse.jar:/home/ko5tik/
jdk1.6.0_17/jre/lib/ext/localedata.jar:/home/ko5tik/jdk1.6.0_17/jre/
lib/ext/dnsns.jar:/home/ko5tik/jdk1.6.0_17/jre/lib/ext/sunpkcs11.jar:/
home/ko5tik/jdk1.6.0_17/jre/lib/ext/sunjce_provider.jar:/home/ko5tik/
android/lines/out/test/Lines:/home/ko5tik/android/lines/out/production/
Lines:/home/ko5tik/android/lines/libs/jmockit.jar:/home/ko5tik/android/
lines/libs/junit-4.7.jar:/home/ko5tik/android-sdk-linux/platforms/
android-1.5/android.jar:/home/ko5tik/android/lines/libs/admob-sdk-
android.jar:/home/ko5tik/idea-IU-93.13/lib/idea_rt.jar
com.intellij.rt.execution.application.AppMain
com.intellij.rt.execution.junit.JUnitStarter -ideVersion5 -junit4
de.pribluda.games.android.lines.HighscoreEntryTest,testMarshalling
java.lang.AssertionError: Missing invocation of:
void android.content.ContentValues#put(String, Integer)
with arguments: "balls", 100
on mock instance: android.content.contentval...@fd68b1
at android.content.ContentValues.put(ContentValues.java)
at de.pribluda.games.android.lines.HighscoreEntryTest$1.<init>
(HighscoreEntryTest.java:36)
at de.pribluda.games.android.lines.HighscoreEntryTest.testMarshalling
(HighscoreEntryTest.java:34)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs
(JUnit4IdeaTestRunner.java:94)
at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart
(JUnitStarter.java:165)
at com.intellij.rt.execution.junit.JUnitStarter.main
(JUnitStarter.java:60)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:
110)
Process finished with exit code 255
---------------------%<-----------------------------
Looks like succesfull mock for me
> What areas are you getting stuck at?
>
Well, coming from J2EE there are a lot of missing nuts and bolts -
like
dependency injection etc, but I"m looking around and working on it
I think some port of picocontainer would be possible ( but it has to
be refactored
to femtocontainer as core is quite big right now - over 220KB , and
enhanced with
android specific stuff)
regards,
--
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en