Create Product
setTimeout 45000
storeGlobal javascript{Math.floor(Math.random()*11000)} randomSuffix
open index.php/accounts/default/create
waitForPageToLoad
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
waitForTextPresent Create Account
type Account_name Test Account ${randomSuffix}
clickAndWait save
waitForPageToLoad
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
assertTextPresent Test Account ${randomSuffix}
open index.php/contacts/default/create
waitForPageToLoad
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
waitForTextPresent Create Contact
type Contact_firstName Test
type Contact_lastName Contact ${randomSuffix}
clickAndWait save
waitForPageToLoad
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
assertTextPresent Test Contact ${randomSuffix}
open index.php/opportunities/default/create
waitForPageToLoad
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
waitForTextPresent Create Opportunity
type Opportunity_name Test Opportunity ${randomSuffix}
click //form[@id='edit-form']/div[2]/div[1]/div/table/tbody/tr[4]/td/div[1]/button
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
assertText link=19 19
click link=19
clickAndWait save
waitForPageToLoad
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
assertTextPresent Test Opportunity ${randomSuffix}
open index.php/products/default
waitForPageToLoad
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
assertTextPresent Create
assertTextPresent Products
assertTextPresent Catalog Items
assertTextPresent Categories
assertTextPresent Delete
assertTextPresent Export
assertText link=Create Product Create Product
clickAndWait link=Create Product
waitForPageToLoad
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
waitForTextPresent Create Product
clickAndWait save
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
waitForTextPresent Name cannot be blank.
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
waitForTextPresent Quantity cannot be blank.
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
assertSelectedLabel Product_type_value Product
assertSelectedLabel Product_priceFrequency_value One Time
assertSelectedLabel Product_sellPrice_currency_id USD
assertText Product_sellPrice_value
assertSelectedLabel Product_stage_value Open
click id=Product_productTemplate_SelectLink
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
type id=ProductTemplatesSearchForm_anyMixedAttributes A Bend in the River
keyUp id=ProductTemplatesSearchForm_anyMixedAttributes \10
verifyTextPresent A Bend in the River
verifyValue ProductTemplatesSearchForm_anyMixedAttributes A Bend in the River
assertText link=A Bend in the River A Bend in the River
click link=A Bend in the River
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
setSpeed 1000
click //a[@id='Product_account_SelectLink']/span[1]
waitForPageToLoad
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
type AccountsSearchForm_anyMixedAttributes Test Account ${randomSuffix}
keyUp AccountsSearchForm_anyMixedAttributes \10
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
waitForText //div[@id='list-viewmodal']/div[2]/table/tbody/tr[1]/td Test Account ${randomSuffix}
verifyTextPresent Test Account ${randomSuffix}
verifyValue AccountsSearchForm_anyMixedAttributes Test Account ${randomSuffix}
click //div[@id='list-viewmodal']/div[2]/table/tbody/tr/td[1]/a
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
setSpeed 0
click //a[@id='Product_contact_SelectLink']/span[2]
waitForPageToLoad
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
type ContactsSearchForm_anyMixedAttributes Test Contact ${randomSuffix}
keyUp ContactsSearchForm_anyMixedAttributes \10
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
waitForText //div[@id='list-viewmodal']/div[2]/table/tbody/tr[1]/td Test Contact ${randomSuffix}
verifyTextPresent Test Contact ${randomSuffix}
verifyValue ContactsSearchForm_anyMixedAttributes Test Contact ${randomSuffix}
click //div[@id='list-viewmodal']/div[2]/table/tbody/tr/td[1]/a
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
click //a[@id='Product_opportunity_SelectLink']/span[2]
waitForPageToLoad
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
type OpportunitiesSearchForm_anyMixedAttributes Test Opportunity ${randomSuffix}
keyUp OpportunitiesSearchForm_anyMixedAttributes \10
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
waitForText //div[@id='list-viewmodal']/div[2]/table/tbody/tr[1]/td Test Opportunity ${randomSuffix}
verifyTextPresent Test Opportunity ${randomSuffix}
verifyValue OpportunitiesSearchForm_anyMixedAttributes Test Opportunity ${randomSuffix}
click //div[@id='list-viewmodal']/div[2]/table/tbody/tr/td[1]/a
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
setSpeed 3000
type id=token-input-ProductCategoriesForm_ProductCategory_ids Came
typeKeys //*[@id="token-input-ProductCategoriesForm_ProductCategory_ids"] Jil
typeKeys //*[@id="token-input-ProductCategoriesForm_ProductCategory_ids"] Jil
assertTextPresent Camera
setSpeed 0
select id=Product_type_value label=Product
select id=Product_sellPrice_currency_id label=EUR
select id=Product_priceFrequency_value label=Monthly
select id=Product_stage_value label=Open
type Product_name Test Product ${randomSuffix}
type Product_quantity 20000
clickAndWait save
waitForPageToLoad
waitForCondition selenium.browserbot.getCurrentWindow().jQuery.active == 0 30000
assertTextPresent Test Product ${randomSuffix}
setSpeed 3000
assertText //div[@id='ProductEditAndDetailsView']/div/div[2]/div/table/tbody/tr[1]/td/a A Bend in the River
assertText //div[@id='ProductEditAndDetailsView']/div/div[2]/div/table/tbody/tr[2]/td Test Product ${randomSuffix}
assertText //div[@id='ProductEditAndDetailsView']/div/div[2]/div/table/tbody/tr[3]/td 20,000
assertText //div[@id='ProductEditAndDetailsView']/div/div[2]/div/table/tbody/tr[4]/td/a Test Account ${randomSuffix}
assertText //div[@id='ProductEditAndDetailsView']/div/div[2]/div/table/tbody/tr[5]/td Test Contact ${randomSuffix}
assertText //div[@id='ProductEditAndDetailsView']/div/div[2]/div/table/tbody/tr[6]/td Test Opportunity ${randomSuffix}
assertText //div[@id='ProductEditAndDetailsView']/div/div[2]/div/table/tbody/tr[7]/td Books, Camera
assertText //div[@id='ProductEditAndDetailsView']/div/div[2]/div/table/tbody/tr[8]/td Product
assertText //div[@id='ProductEditAndDetailsView']/div/div[2]/div/table/tbody/tr[9]/td Monthly
assertText //div[@id='ProductEditAndDetailsView']/div/div[2]/div/table/tbody/tr[10]/td €200.00
assertText //div[@id='ProductEditAndDetailsView']/div/div[2]/div/table/tbody/tr[11]/td Open