ko-archetype/src/main/resources/archetype-resources/src/test/java/TwitterClientTest.java
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/ko-archetype/src/main/resources/archetype-resources/src/test/java/TwitterClientTest.java Mon May 13 14:25:37 2013 +0200
1.3 @@ -0,0 +1,49 @@
1.4 +package ${package};
1.5 +
1.6 +import java.util.List;
1.7 +import net.java.html.json.Context;
1.8 +import static org.testng.Assert.*;
1.9 +import org.testng.annotations.BeforeMethod;
1.10 +import org.testng.annotations.Test;
1.11 +
1.12 +/** We can unit test the TwitterModel smoothly.
1.13 + */
1.14 +public class TwitterClientTest {
1.15 + private TwitterModel model;
1.16 +
1.17 +
1.18 + @BeforeMethod
1.19 + public void initModel() {
1.20 + model = new TwitterModel(Context.EMPTY);
1.21 + }
1.22 +
1.23 + @Test public void testIsValidToAdd() {
1.24 + model.setUserNameToAdd("Joe");
1.25 + Tweeters t = new Tweeters(Context.EMPTY);
1.26 + t.setName("test");
1.27 + model.getSavedLists().add(t);
1.28 + model.setActiveTweetersName("test");
1.29 +
1.30 + assertTrue(model.isUserNameToAddIsValid(), "Joe is OK");
1.31 + TwitterClient.addUser(model);
1.32 + assertFalse(model.isUserNameToAddIsValid(), "Can't add Joe for the 2nd time");
1.33 + assertEquals(t.getUserNames().size(), 0, "Original tweeters list remains empty");
1.34 +
1.35 + List<String> mod = model.getActiveTweeters();
1.36 + assertTrue(model.isHasUnsavedChanges(), "We have modifications");
1.37 + assertEquals(mod.size(), 1, "One element in the list");
1.38 + assertEquals(mod.get(0), "Joe", "Its name is Joe");
1.39 +
1.40 + assertSame(model.getActiveTweeters(), mod, "Editing list is the modified one");
1.41 +
1.42 + TwitterClient.saveChanges(model);
1.43 + assertFalse(model.isHasUnsavedChanges(), "Does not have anything to save");
1.44 +
1.45 + assertSame(model.getActiveTweeters(), mod, "Still editing the old modified one");
1.46 + }
1.47 +
1.48 + @Test public void httpAtTheEnd() {
1.49 + String res = TwitterClient.Twt.html("Ahoj http://kuk");
1.50 + assertEquals(res, "Ahoj <a href='http://kuk'>http://kuk</a>");
1.51 + }
1.52 +}