package caldwell.ben.trolly.test;

import caldwell.ben.trolly.Trolly;
import com.robotium.solo.*;
import android.test.ActivityInstrumentationTestCase2;

public class TrollyTest extends ActivityInstrumentationTestCase2<Trolly> {
	private Solo solo;

	public TrollyTest() {
		super(Trolly.class);
	}

	public void setUp() throws Exception {
		super.setUp();
		solo = new Solo(getInstrumentation());
		getActivity();
	}

	@Override
	public void tearDown() throws Exception {
		solo.finishOpenedActivities();
		super.tearDown();
	}

	public void testRun() {
		public void testRun() {
			// Wait for activity: 'caldwell.ben.trolly.Trolly'
			solo.waitForActivity(caldwell.ben.trolly.Trolly.class, 2000);
			// Click on Empty Text View
			solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.textbox));
			// Set default small timeout to 15986 milliseconds
			Timeout.setSmallTimeout(15986);
			// Enter the text: 'Oggetto1'
			solo.clearEditText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.textbox));
			solo.enterText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.textbox), "Oggetto1");
			// Click on Add
			solo.clickOnButton("Add");
			//solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.btn_add));
			// Set default small timeout to 18795 milliseconds
			Timeout.setSmallTimeout(18795);
			// Enter the text: 'Oggetto2'
			solo.clearEditText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.textbox));
			solo.enterText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.textbox), "Oggetto2");
			// Click on Add
			solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.btn_add));
			// Enter the text: 'Latte'
			solo.clearEditText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.textbox));
			solo.enterText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.textbox), "Latte");
			// Click on Add
			solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.btn_add));
			// Enter the text: 'Pagare Tasse'
			solo.clearEditText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.textbox));
			solo.enterText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.textbox), "Pagare Tasse");
			// Click on Add
			solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.btn_add));
			// Set default small timeout to 26090 milliseconds
			Timeout.setSmallTimeout(26090);
			// Enter the text: 'Arance'
			solo.clearEditText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.textbox));
			solo.enterText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.textbox), "Arance");
			// Click on Add
			solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.btn_add));
			// Click on Arance
			solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.item));
			// Click on Latte
			solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.item, 1));
			// Long click Oggetto1
			solo.clickLongOnView(solo.getView(caldwell.ben.trolly.R.id.item, 2));
			// Wait for dialog
			solo.waitForDialogToOpen(5000);
			// Press menu back key
			solo.goBack();
			// Long click Oggetto1
			solo.clickLongOnView(solo.getView(caldwell.ben.trolly.R.id.item, 2));
			// Wait for dialog
			solo.waitForDialogToOpen(5000);
			// Click on Off list 
			solo.clickInList(2, 0);
			// Long click Oggetto2
			solo.clickLongOnView(solo.getView(caldwell.ben.trolly.R.id.item, 2));
			// Wait for dialog
			solo.waitForDialogToOpen(5000);
			// Click on Off list 
			solo.clickInList(2, 0);
			// Long click Pagare Tasse
			solo.clickLongOnView(solo.getView(caldwell.ben.trolly.R.id.item, 2));
			// Wait for dialog
			solo.waitForDialogToOpen(5000);
			// Click on Off list 
			solo.clickInList(2, 0);
			// Click on Arance
			solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.item));
			// Long click Arance
			solo.clickLongOnView(solo.getView(caldwell.ben.trolly.R.id.item));
			// Wait for dialog
			solo.waitForDialogToOpen(5000);
			// Click on In trolley 
			solo.clickInList(1, 0);
			// Click on Arance
			solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.item));
			// Long click Arance
			solo.clickLongOnView(solo.getView(caldwell.ben.trolly.R.id.item));
			// Wait for dialog
			solo.waitForDialogToOpen(5000);
			// Click on Edit 
			solo.clickInList(3, 0);
			// Wait for dialog
			//solo.waitForDialogToOpen(5000);
			// Click on Arance
			//solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.edit));
			// Set default small timeout to 39589 milliseconds
			Timeout.setSmallTimeout(39589);
			// Enter the text: 'Arance verdi'
			solo.clearEditText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.edit));
			solo.enterText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.edit), "Arance verdi");
			// Click on OK
			solo.clickOnButton("OK");
			//solo.clickOnView(solo.getView(android.R.id.button1));
			// Long click Latte
			
			solo.clickLongOnView(solo.getView(caldwell.ben.trolly.R.id.item, 1));
			// Wait for dialog
			solo.waitForDialogToOpen(5000);
			// Click on Edit 
			solo.clickInList(3, 0);
			// Enter the text: 'Latte'
			solo.clearEditText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.edit));
			solo.enterText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.edit), "Latte");
			// Click on Latte
			solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.edit));
			// Enter the text: 'Latte'
			solo.clearEditText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.edit));
			solo.enterText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.edit), "Latte");
			// Click on Cancel
			solo.clickOnView(solo.getView(android.R.id.button2));
			// Long click Latte
			solo.clickLongOnView(solo.getView(caldwell.ben.trolly.R.id.item, 1));
			// Wait for dialog
			//solo.waitForDialogToOpen(5000);
			// Click on Edit 
			solo.clickInList(3, 0);
			// Enter the text: 'Latte'
			solo.clearEditText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.edit));
			solo.enterText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.edit), "Latte");
			// Click on Latte
			solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.edit));
			// Enter the text: 'Latte blu'
			solo.clearEditText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.edit));
			solo.enterText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.edit), "Latte blu");
			// Click on OK
			solo.clickOnView(solo.getView(android.R.id.button1));
			// Long click Latte blu
			solo.clickLongOnView(solo.getView(caldwell.ben.trolly.R.id.item, 1));
			// Wait for dialog
			//solo.waitForDialogToOpen(5000);
			// Click on Off list 
			solo.clickInList(2, 0);
			// Click on Add
			solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.btn_add));
			// Long click Latte blu
			solo.clickLongOnView(solo.getView(caldwell.ben.trolly.R.id.item, 1));
			// Wait for dialog
			//solo.waitForDialogToOpen(5000);
			// Click on On list 
			solo.clickInList(1, 0);
			// Long click Latte blu
			solo.clickLongOnView(solo.getView(caldwell.ben.trolly.R.id.item, 1));
			// Wait for dialog
			//solo.waitForDialogToOpen(5000);
			// Click on In trolley 
			solo.clickInList(1, 0);
			// Long click Oggetto1
			solo.clickLongOnView(solo.getView(caldwell.ben.trolly.R.id.item, 2));
			// Wait for dialog
			//solo.waitForDialogToOpen(5000);
			// Click on Delete 
			solo.clickInList(4, 0);
			// Wait for dialog
			solo.waitForDialogToOpen(5000);
			// Click on OK
			solo.clickOnView(solo.getView(android.R.id.button1));
			// Click on Add
			solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.btn_add));
			// Click on action bar item
			
			
			solo.clearEditText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.textbox));
			solo.enterText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.textbox), "Latte blu");
			// Click on Add solo.clickOnActionBarItem(0x3);
			solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.btn_add));
			// Click on Latte blu
			solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.item, 1));
			// Click on action bar item
			solo.clickOnActionBarItem(0x9);
			// Wait for dialog
			solo.waitForDialogToOpen(5000);
			// Click on OK
			solo.clickOnView(solo.getView(android.R.id.button1));
			// Click on Add
			solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.btn_add));
			// Scroll to 654989
			android.widget.ListView listView0 = (android.widget.ListView) solo.getView(android.widget.ListView.class, 0);
			solo.scrollListToLine(listView0, 0);
			// Click on action bar item
			solo.clickOnActionBarItem(0x4);
			// Wait for activity: 'caldwell.ben.trolly.TrollyPreferences'
			
			// Click on List mode sort order Order of items on the list when in list mode LinearLayout
			solo.clickInList(1, 0);
			// Wait for dialog
			//solo.waitForDialogToOpen(5000);
			// Click on Alphabetical Ascending
			solo.clickOnView(solo.getView(android.R.id.text1));
			// Click on List mode sort order Order of items on the list when in list mode LinearLayout
			
			solo.clickInList(1, 0);
			// Wait for dialog
			//solo.waitForDialogToOpen(5000);
			
			// Click on Alphabetical Descending
			solo.clickOnView(solo.getView(android.R.id.text1, 1));
			
			// Click on List mode sort order Order of items on the list when in list mode LinearLayout
			solo.clickInList(1, 0);
			// Wait for dialog
			//solo.waitForDialogToOpen(5000);
			
			// Click on Modified Ascending
			solo.clickOnView(solo.getView(android.R.id.text1, 2));
			
			// Click on List mode sort order Order of items on the list when in list mode LinearLayout
			solo.clickInList(1, 0);
			// Wait for dialog
			//solo.waitForDialogToOpen(5000);
			
			// Click on Modified Descending
			solo.clickOnView(solo.getView(android.R.id.text1, 3));
			// Click on List mode sort order Order of items on the list when in list mode LinearLayout
			assertTrue("caldwell.ben.trolly.TrollyPreferences is not found!", solo.waitForActivity(caldwell.ben.trolly.TrollyPreferences.class));
			solo.clickInList(1, 0);
			// Wait for dialog
			//solo.waitForDialogToOpen(5000);
			// Click on Cancel
			solo.clickOnButton("Cancel");
			assertTrue("caldwell.ben.trolly.TrollyPreferences is not found!", solo.waitForActivity(caldwell.ben.trolly.TrollyPreferences.class));
			//solo.clickOnView(solo.getView(android.R.id.button2));
			// Click on Shopping mode sort order Order of items on the list when in shopping mode L
			solo.clickInList(2, 0);
			// Wait for dialog
			//solo.waitForDialogToOpen(5000);
			// Click on Alphabetical Ascending
			solo.clickOnView(solo.getView(android.R.id.text1));
			// Click on Shopping mode sort order Order of items on the list when in shopping mode L
			assertTrue("caldwell.ben.trolly.TrollyPreferences is not found!", solo.waitForActivity(caldwell.ben.trolly.TrollyPreferences.class));
			solo.clickInList(2, 0);
			// Wait for dialog
			//solo.waitForDialogToOpen(5000);
			// Click on Alphabetical Descending
			solo.clickOnView(solo.getView(android.R.id.text1, 1));
			// Click on Shopping mode sort order Order of items on the list when in shopping mode L
			
			solo.clickInList(2, 0);
			// Wait for dialog
			//solo.waitForDialogToOpen(5000);
			// Click on Modified Ascending
			solo.clickOnView(solo.getView(android.R.id.text1, 2));
			// Click on Shopping mode sort order Order of items on the list when in shopping mode L
			solo.clickInList(2, 0);
			// Wait for dialog
			solo.waitForDialogToOpen(5000);
			// Click on Modified Descending
			solo.clickOnView(solo.getView(android.R.id.text1, 3));
			// Click on Shopping mode sort order Order of items on the list when in shopping mode L
			solo.clickInList(2, 0);
			// Wait for dialog
			solo.waitForDialogToOpen(5000);
			// Click on Cancel
			solo.clickOnView(solo.getView(android.R.id.button2));
			// Press menu back key
			solo.goBack();
			
			// Click on Add
			solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.btn_add));
			// Long click Oggetto2
			solo.clickLongOnView(solo.getView(caldwell.ben.trolly.R.id.item, 2));
			// Wait for dialog
			solo.waitForDialogToOpen(5000);
			// Click on On list 
			solo.clickInList(1, 0);
			// Long click Oggetto2
			solo.clickLongOnView(solo.getView(caldwell.ben.trolly.R.id.item, 2));
			// Wait for dialog
			solo.waitForDialogToOpen(5000);
			// Click on Delete 
			solo.clickInList(4, 0);
			// Click on Cancel
			solo.clickOnButton("Cancel");
			solo.waitForActivity(caldwell.ben.trolly.Trolly.class, 2000);
			// Long click Oggetto2
			solo.clickLongOnView(solo.getView(caldwell.ben.trolly.R.id.item, 2));
			// Wait for dialog
			solo.waitForDialogToOpen(5000);
			// Click on Edit 
			solo.clickInList(3, 0);
			// Enter the text: 'Oggetto2'
			solo.clearEditText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.edit));
			solo.enterText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.edit), "Oggetto2");
			// Click on Cancel
			solo.clickOnView(solo.getView(android.R.id.button2));
			// Click on action bar item
			solo.clickOnActionBarItem(0x9);
			// Click on Cancel
			solo.clickOnView(solo.getView(android.R.id.button2));
			// Click on action bar item
			solo.clickOnActionBarItem(0x3);
			// Click on Checkout
			solo.clickOnView(solo.getView(android.R.id.title, 1));
			// Click on action bar item
			solo.clickOnActionBarItem(0xa);
			// Wait for dialog
			
			// Click on Cancel
			solo.clickOnView(solo.getView(android.R.id.button2));
			// Click on action bar item
			solo.clickOnActionBarItem(0xa);
			// Click on OK
			solo.clickOnView(solo.getView(android.R.id.button1));
			// Click on Add
			solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.btn_add));
			// Click on Empty Text View
			solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.textbox));
			// Enter the text: 'Latte Blu'
			solo.clearEditText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.textbox));
			solo.enterText((android.widget.EditText) solo.getView(caldwell.ben.trolly.R.id.textbox), "Latte Blu");
			// Click on Add
			solo.clickOnView(solo.getView(caldwell.ben.trolly.R.id.btn_add));
			// Click on action bar item
			solo.clickOnActionBarItem(0x9);
			// Click on OK
			solo.clickOnView(solo.getView(android.R.id.button1));
			// Click on action bar item
			solo.clickOnActionBarItem(0x3);
			// Click on action bar item
			solo.clickOnActionBarItem(0x4);
			// Wait for activity: 'caldwell.ben.trolly.TrollyPreferences'
			assertTrue("caldwell.ben.trolly.TrollyPreferences is not found!", solo.waitForActivity(caldwell.ben.trolly.TrollyPreferences.class));
			// Press menu back key
			solo.goBack();
			// Press menu back key
			solo.goBack();
	}
}
