diff options
author | Jérémy Zurcher <jeremy@asynk.ch> | 2014-03-02 12:08:46 +0100 |
---|---|---|
committer | Jérémy Zurcher <jeremy@asynk.ch> | 2016-11-10 17:40:55 +0100 |
commit | d1d4b77dccabb24d88cb3de78d6e9c374ddf5676 (patch) | |
tree | 213594b3435b002f2b92e99c6c833e82f360e236 /Android/05-UserInterface/UILab/tests/src/course/labs/todomanager | |
parent | 36280db96fe3e135b64e85365b346d387b5dba18 (diff) | |
download | coursera-d1d4b77dccabb24d88cb3de78d6e9c374ddf5676.zip coursera-d1d4b77dccabb24d88cb3de78d6e9c374ddf5676.tar.gz |
Android : 05-UserInterface: add
Diffstat (limited to 'Android/05-UserInterface/UILab/tests/src/course/labs/todomanager')
3 files changed, 315 insertions, 0 deletions
diff --git a/Android/05-UserInterface/UILab/tests/src/course/labs/todomanager/TestCancel.java b/Android/05-UserInterface/UILab/tests/src/course/labs/todomanager/TestCancel.java new file mode 100644 index 0000000..ab9d3d9 --- /dev/null +++ b/Android/05-UserInterface/UILab/tests/src/course/labs/todomanager/TestCancel.java @@ -0,0 +1,95 @@ +package course.labs.todomanager.tests; + +import course.labs.todomanager.ToDoManagerActivity; +import com.robotium.solo.*; +import android.test.ActivityInstrumentationTestCase2; + +public class TestCancel extends +ActivityInstrumentationTestCase2<ToDoManagerActivity> { + private Solo solo; + + public TestCancel() { + super(ToDoManagerActivity.class); + } + + public void setUp() throws Exception { + solo = new Solo(getInstrumentation()); + getActivity(); + } + + @Override + public void tearDown() throws Exception { + solo.finishOpenedActivities(); + } + + public void testRun() { + + int timeout = 10; + + // Wait for activity: 'course.labs.todomanager.ToDoManagerActivity' + assertTrue( + "'course.labs.todomanager.ToDoManagerActivity' not found", + solo.waitForActivity( + course.labs.todomanager.ToDoManagerActivity.class, 2000)); + + // Click on action bar item + solo.clickOnActionBarItem(0x1); + + // Click on Add New ToDo Item + solo.clickOnView(solo.getView(course.labs.todomanager.R.id.footerView)); + + // Wait for activity: 'course.labs.todomanager.AddToDoActivity' + assertTrue( + "course.labs.todomanager.AddToDoActivity is not found!", + solo.waitForActivity(course.labs.todomanager.AddToDoActivity.class)); + + // Hide the soft keyboard + solo.hideSoftKeyboard(); + // Enter the text: 't3' + solo.clearEditText((android.widget.EditText) solo.getView(course.labs.todomanager.R.id.title)); + solo.enterText((android.widget.EditText) solo.getView(course.labs.todomanager.R.id.title), "t3"); + // Hide the soft keyboard + solo.hideSoftKeyboard(); + // Click on Done: + solo.clickOnView(solo.getView(course.labs.todomanager.R.id.statusDone)); + // Click on High + solo.clickOnView(solo.getView(course.labs.todomanager.R.id.highPriority)); + + // Click on Cancel + solo.clickOnView(solo.getView(course.labs.todomanager.R.id.cancelButton)); + + // Click on Add New ToDo Item + solo.clickOnView(solo.getView(course.labs.todomanager.R.id.footerView)); + // Hide the soft keyboard + solo.hideSoftKeyboard(); + // Enter the text: 't4' + solo.clearEditText((android.widget.EditText) solo.getView(course.labs.todomanager.R.id.title)); + solo.enterText((android.widget.EditText) solo.getView(course.labs.todomanager.R.id.title), "t4"); + + // Hide the soft keyboard + solo.hideSoftKeyboard(); + // Click on Done: + solo.clickOnView(solo.getView(course.labs.todomanager.R.id.statusDone)); + // Click on Low + solo.clickOnView(solo.getView(course.labs.todomanager.R.id.lowPriority)); + + // Click on Submit + solo.clickOnView(solo.getView(course.labs.todomanager.R.id.submitButton)); + + // Wait for activity: 'course.labs.todomanager.ToDoManagerActivity' + assertTrue( + "course.labs.todomanager.ToDoManagerActivity is not found!", + solo.waitForActivity(course.labs.todomanager.ToDoManagerActivity.class)); + + assertFalse("'A ToDoItem with title, t3', was found", solo.searchText("t3")); + + // Click on action bar item to dump items to log + solo.clickOnActionBarItem(0x2); + + assertTrue("Menu didn't close", solo.waitForDialogToClose()); + + // Wait for Log Message 'Title:t4,Priority:LOW,Status:NOT DONE' + assertTrue("Log message 'Title:t4,Priority:LOW,Status:NOT DONE' not found", + solo.waitForLogMessage("Title:t4,Priority:LOW,Status:DONE",timeout)); + } +} diff --git a/Android/05-UserInterface/UILab/tests/src/course/labs/todomanager/TestReset.java b/Android/05-UserInterface/UILab/tests/src/course/labs/todomanager/TestReset.java new file mode 100644 index 0000000..41f62f3 --- /dev/null +++ b/Android/05-UserInterface/UILab/tests/src/course/labs/todomanager/TestReset.java @@ -0,0 +1,100 @@ +package course.labs.todomanager.tests; + +import course.labs.todomanager.ToDoManagerActivity; +import com.robotium.solo.*; +import android.test.ActivityInstrumentationTestCase2; + +public class TestReset extends +ActivityInstrumentationTestCase2<ToDoManagerActivity> { + private Solo solo; + + public TestReset() { + super(ToDoManagerActivity.class); + } + + public void setUp() throws Exception { + solo = new Solo(getInstrumentation()); + getActivity(); + } + + @Override + public void tearDown() throws Exception { + solo.finishOpenedActivities(); + } + + public void testRun() { + + int timeout = 10; + + // Wait for activity: 'course.labs.todomanager.ToDoManagerActivity' + assertTrue( + "'course.labs.todomanager.ToDoManagerActivity' not found.", + solo.waitForActivity( + course.labs.todomanager.ToDoManagerActivity.class, 2000)); + + // Click on action bar item + solo.clickOnActionBarItem(0x1); + + // Click on Add New ToDo Item + solo.clickOnView(solo.getView(course.labs.todomanager.R.id.footerView)); + + // Wait for activity: 'course.labs.todomanager.AddToDoActivity' + assertTrue( + "course.labs.todomanager.AddToDoActivity is not found!", + solo.waitForActivity(course.labs.todomanager.AddToDoActivity.class)); + + // Hide the soft keyboard + solo.hideSoftKeyboard(); + + // Enter the text: 't2' + solo.clearEditText((android.widget.EditText) solo.getView(course.labs.todomanager.R.id.title)); + solo.enterText((android.widget.EditText) solo.getView(course.labs.todomanager.R.id.title), "t2"); + + // Hide the soft keyboard + solo.hideSoftKeyboard(); + // Click on Done: + solo.clickOnView(solo.getView(course.labs.todomanager.R.id.statusDone)); + + // Click on Reset + solo.clickOnView(solo.getView(course.labs.todomanager.R.id.resetButton)); + + // Enter the text: 'Empty Text View' + solo.clearEditText((android.widget.EditText) solo.getView(course.labs.todomanager.R.id.title)); + solo.enterText((android.widget.EditText) solo.getView(course.labs.todomanager.R.id.title), ""); + // Hide the soft keyboard + solo.hideSoftKeyboard(); + + // Enter the text: 't3' + solo.clearEditText((android.widget.EditText) solo.getView(course.labs.todomanager.R.id.title)); + solo.enterText((android.widget.EditText) solo.getView(course.labs.todomanager.R.id.title), "t3"); + + // Hide the soft keyboard + solo.hideSoftKeyboard(); + // Click on High + solo.clickOnView(solo.getView(course.labs.todomanager.R.id.highPriority)); + + // Click on Submit + solo.clickOnView(solo.getView(course.labs.todomanager.R.id.submitButton)); + + // Click on Empty Text View + assertFalse(solo.isCheckBoxChecked(0)); + + // Change status to DONE + solo.clickOnCheckBox(0); + + // Wait for activity: 'course.labs.todomanager.ToDoManagerActivity' + assertTrue( + "course.labs.todomanager.ToDoManagerActivity is not found!", + solo.waitForActivity( + course.labs.todomanager.ToDoManagerActivity.class, 2000)); + + // Click on action bar item to dump items to log + solo.clickOnActionBarItem(0x2); + + assertTrue("Menu didn't close", solo.waitForDialogToClose()); + + // Wait for Log Message 'Item 0: Title:t3,Priority:HIGH,Status:DONE' + assertTrue("Log message: 'Title:t3,Priority:HIGH,Status:DONE' not found", + solo.waitForLogMessage("Title:t3,Priority:HIGH,Status:DONE", timeout)); + } +} diff --git a/Android/05-UserInterface/UILab/tests/src/course/labs/todomanager/TestSubmit.java b/Android/05-UserInterface/UILab/tests/src/course/labs/todomanager/TestSubmit.java new file mode 100644 index 0000000..4ffe078 --- /dev/null +++ b/Android/05-UserInterface/UILab/tests/src/course/labs/todomanager/TestSubmit.java @@ -0,0 +1,120 @@ +package course.labs.todomanager.tests; + +import course.labs.todomanager.ToDoManagerActivity; +import com.robotium.solo.*; +import android.test.ActivityInstrumentationTestCase2; + +public class TestSubmit extends +ActivityInstrumentationTestCase2<ToDoManagerActivity> { + private Solo solo; + + public TestSubmit() { + super(ToDoManagerActivity.class); + } + + public void setUp() throws Exception { + solo = new Solo(getInstrumentation()); + getActivity(); + } + + @Override + public void tearDown() throws Exception { + solo.finishOpenedActivities(); + } + + public void testRun() { + + int timeout = 10; + + // Wait for activity: 'course.labs.todomanager.ToDoManagerActivity' + assertTrue( + "course.labs.todomanager.ToDoManagerActivity is not found!", + solo.waitForActivity( + course.labs.todomanager.ToDoManagerActivity.class, 2000)); + + // Click on action bar item to delete all items + solo.clickOnActionBarItem(0x1); + + // Click on Add New ToDo Item + solo.clickOnView(solo.getView(course.labs.todomanager.R.id.footerView)); + + // Wait for activity: 'course.labs.todomanager.AddToDoActivity' + assertTrue( + "course.labs.todomanager.AddToDoActivity is not found!", + solo.waitForActivity(course.labs.todomanager.AddToDoActivity.class)); + + // Hide the soft keyboard + solo.hideSoftKeyboard(); + + // Enter the text: 't1' + solo.clearEditText((android.widget.EditText) solo.getView(course.labs.todomanager.R.id.title)); + solo.enterText((android.widget.EditText) solo.getView(course.labs.todomanager.R.id.title), "t1"); + + // Hide the soft keyboard + solo.hideSoftKeyboard(); + + // Click on Done: + solo.clickOnView(solo.getView(course.labs.todomanager.R.id.statusDone)); + // Click on Low + solo.clickOnView(solo.getView(course.labs.todomanager.R.id.lowPriority)); + // Click on Choose Date + solo.clickOnView(solo.getView(course.labs.todomanager.R.id.date_picker_button)); + + // Wait for dialog + solo.waitForDialogToOpen(10000); + // Enter the text: 'Feb' + solo.clearEditText((android.widget.EditText) solo.getView("numberpicker_input")); + solo.enterText((android.widget.EditText) solo.getView("numberpicker_input"),"Feb"); + // Enter the text: '28' + solo.clearEditText((android.widget.EditText) solo.getView("numberpicker_input", 1)); + solo.enterText((android.widget.EditText) solo.getView("numberpicker_input", 1),"28"); + // Enter the text: '2014' + solo.clearEditText((android.widget.EditText) solo.getView("numberpicker_input",2)); + solo.enterText((android.widget.EditText) solo.getView("numberpicker_input", 2),"2014"); + + // Really set the date + solo.setDatePicker(0, 2014, 1, 28); + + // Click on Done + solo.clickOnView(solo.getView(android.R.id.button1)); + + // Click on Choose Time + solo.clickOnView(solo.getView(course.labs.todomanager.R.id.time_picker_button)); + // Wait for dialog + solo.waitForDialogToOpen(10000); + // Enter the text: '9' + solo.clearEditText((android.widget.EditText) solo.getView("numberpicker_input")); + solo.enterText((android.widget.EditText) solo.getView("numberpicker_input"),"9"); + // Enter the text: '19' + solo.clearEditText((android.widget.EditText) solo.getView("numberpicker_input", 1)); + solo.enterText((android.widget.EditText) solo.getView("numberpicker_input", 1),"19"); + + // Really set the time + solo.setTimePicker(0, 9, 19); + + // Click on Done + solo.clickOnView(solo.getView(android.R.id.button1)); + + // Click on Submit + solo.clickOnView(solo.getView(course.labs.todomanager.R.id.submitButton)); + + // Wait for activity: 'course.labs.todomanager.ToDoManagerActivity' + assertTrue( + "course.labs.todomanager.ToDoManagerActivity is not found!", + solo.waitForActivity(course.labs.todomanager.ToDoManagerActivity.class, 2000)); + + // Click on action bar item to dump items to log + solo.clickOnActionBarItem(0x2); + + assertTrue("Menu didn't close", solo.waitForDialogToClose()); + + + // Wait for Log Message 'Item 0: + // Title:t1,Priority:LOW,Status:DONE,Date:2014-02-28 09:19:00' + assertTrue( + "Log message: 'Title:t1,Priority:LOW,Status:DONE,Date:2014-02-28 09:19:00' not found", + solo.waitForLogMessage( + "Title:t1,Priority:LOW,Status:DONE,Date:2014-02-28 09:19:00", + timeout)); + } +} |