TestStorylineStructure
open /wp-admin/
clickAndWait link=Storyline Structure
assertElementPresent //input[@name='original-categories']
uncheck enable-storyline-support
click enable-storyline-support
assertVisible //div[@id='storyline-holder']
click enable-storyline-support
assertNotVisible //div[@id='storyline-holder']
clickAndWait //input[@value='Save Structure and Modify Categories']
assertNotVisible //div[@id='storyline-holder']
click enable-storyline-support
clickAndWait //input[@value='Save Structure and Modify Categories']
assertVisible //div[@id='storyline-holder']
store Selenium Test Category 123 catname1
store Selenium Test Category 234 catname2
click //div[@id='storyline-holder']/div[1]//a
type //div[@id='storyline-holder']/div[2]/input ${catname1}
clickAndWait //input[@value='Save Structure and Modify Categories']
assertElementPresent //div[@id='storyline-holder']/div[2]/input[@value='${catname1}']
click //div[@id='storyline-holder']/div[2]//a[1]
type //div[@id='storyline-holder']/div[3]/input ${catname2}
clickAndWait //input[@value='Save Structure and Modify Categories']
assertElementPresent //div[@id='storyline-holder']/div[3]/input[@value='${catname2}']
click //div[@id='storyline-holder']/div[3]//a[@class='up']
assertElementPresent //div[@id='storyline-holder']/div[2]/input[@value='${catname2}']
assertElementPresent //div[@id='storyline-holder']/div[3]/input[@value='${catname1}']
click //div[@id='storyline-holder']/div[3]//a[@class='delete']
click //div[@id='storyline-holder']/div[2]//a[@class='delete']
clickAndWait //input[@value='Save Structure and Modify Categories']
assertElementNotPresent //div[@id='storyline-holder']/div[3]/input[@value='${catname1}']
assertElementNotPresent //div[@id='storyline-holder']/div[2]/input[@value='${catname2}']
clickAndWait link=Storyline Structure
uncheck enable-storyline-support
clickAndWait //input[@value='Save Structure and Modify Categories']
clickAndWait link=Add New
assertElementNotPresent //div[@id='comic-for-this-post']//*[text()="Storyline"]
clickAndWait link=Storyline Structure
check enable-storyline-support
clickAndWait //input[@value='Save Structure and Modify Categories']
clickAndWait link=Add New
assertElementPresent //div[@id='comic-for-this-post']//th[contains(text(),"Storyline")]
clickAndWait link=Storyline Structure
click //div[@id='storyline-holder']/div[1]//a
type //div[@id='storyline-holder']/div[2]/input Selenium Test
clickAndWait //input[@value='Save Structure and Modify Categories']
assertTextPresent Category Selenium Test created.
clickAndWait link=Add New
assertText //div[@id='comic-for-this-post'] *Selenium Test*
assertText //div[@id='categories-all'] *Selenium Test*
clickAndWait //a[contains(@href, 'comicpress-manager') and contains(text(), 'Upload')]
assertText //div[@id='multiple-new-post-holder'] *Selenium Test*
clickAndWait //a[contains(@href, 'comicpress-manager') and contains(text(), 'Import')]
assertText //div[@id='create-missing-posts-holder'] *Selenium Test*
clickAndWait link=Categories
assertTextPresent Selenium Test
assertElementPresent //td[contains(@class, 'slug') and contains(text(), 'selenium-test')]
clickAndWait //a[contains(text(),'Selenium Test')]
assertValue cat_name Selenium Test
assertValue category_nicename selenium-test
type category_nicename selenium-test2
clickAndWait submit
assertElementPresent //td[contains(@class, 'slug') and contains(text(), 'selenium-test2')]
clickAndWait link=Storyline Structure
assertElementPresent //input[@value='Selenium Test']
clickAndWait link=Add New
assertText //div[@id='comic-for-this-post'] *Selenium Test*
assertText //div[@id='categories-all'] *Selenium Test*
clickAndWait //a[contains(@href, 'comicpress-manager') and contains(text(), 'Upload')]
assertText //div[@id='multiple-new-post-holder'] *Selenium Test*
clickAndWait //a[contains(@href, 'comicpress-manager') and contains(text(), 'Import')]
assertText //div[@id='create-missing-posts-holder'] *Selenium Test*
clickAndWait link=Categories
assertElementPresent //td[contains(@class, 'slug') and contains(text(), 'selenium-test')]
clickAndWait //a[contains(text(),'Selenium Test')]
assertValue cat_name Selenium Test
assertValue category_nicename selenium-test2
type category_nicename selenium-test3
clickAndWait submit
assertElementPresent //td[contains(@class, 'slug') and contains(text(), 'selenium-test3')]
clickAndWait link=Storyline Structure
assertElementPresent //input[@value='Selenium Test']
clickAndWait link=Add New
assertText //div[@id='comic-for-this-post'] *Selenium Test*
assertText //div[@id='categories-all'] *Selenium Test*
clickAndWait //a[contains(@href, 'comicpress-manager') and contains(text(), 'Upload')]
assertText //div[@id='multiple-new-post-holder'] *Selenium Test*
clickAndWait //a[contains(@href, 'comicpress-manager') and contains(text(), 'Import')]
assertText //div[@id='create-missing-posts-holder'] *Selenium Test*
clickAndWait link=Storyline Structure
click //div[@id='storyline-holder']/div[2]/div/a[1]
type //div[@id='storyline-holder']/div[3]/input Selenium Two
clickAndWait //input[@value='Save Structure and Modify Categories']
assertTextPresent Category Selenium Two created.
clickAndWait link=Categories
assertTextPresent Selenium Test
assertTextPresent Selenium Two
assertElementPresent //td[contains(@class, 'slug') and contains(text(), 'selenium-test3')]
assertElementPresent //td[contains(@class, 'slug') and contains(text(), 'selenium-two')]
clickAndWait //a[contains(text(),'Selenium Two')]
assertValue cat_name Selenium Two
assertValue category_nicename selenium-two
type category_nicename selenium-two2
clickAndWait submit
assertElementPresent //td[contains(@class, 'slug') and contains(text(), 'selenium-test3')]
assertElementPresent //td[contains(@class, 'slug') and contains(text(), 'selenium-two2')]
clickAndWait link=Storyline Structure
assertElementPresent //input[@value='Selenium Test']
assertElementPresent //input[@value='Selenium Two']
clickAndWait link=Add New
assertText //div[@id='comic-for-this-post'] *Selenium Test*
assertText //div[@id='categories-all'] *Selenium Test*
assertText //div[@id='comic-for-this-post'] *Selenium Two*
assertText //div[@id='categories-all'] *Selenium Two*
clickAndWait //a[contains(@href, 'comicpress-manager') and contains(text(), 'Upload')]
assertText //div[@id='multiple-new-post-holder'] *Selenium Test*
assertText //div[@id='multiple-new-post-holder'] *Selenium Two*
clickAndWait //a[contains(@href, 'comicpress-manager') and contains(text(), 'Import')]
assertText //div[@id='create-missing-posts-holder'] *Selenium Test*
assertText //div[@id='create-missing-posts-holder'] *Selenium Two*
clickAndWait link=Storyline Structure
waitForVisible storyline-holder
assertElementPresent //input[@value='Selenium Test']
assertElementPresent //input[@value='Selenium Two']
click //div[@id='storyline-holder']/div[2]/div/a[5]
assertElementNotPresent //input[@value='Selenium Test']
click //div[@id='storyline-holder']/div[2]/div/a[5]
assertElementNotPresent //input[@value='Selenium Two']
clickAndWait //input[@value='Save Structure and Modify Categories']
assertTextPresent Category Selenium Test deleted.
assertTextPresent Category Selenium Two deleted.
click //div[@id='storyline-holder']/div[1]//a
type //div[@id='storyline-holder']/div[2]/input Selenium Test
clickAndWait //input[@value='Save Structure and Modify Categories']
assertTextPresent Category Selenium Test created.
click //div[@id='storyline-holder']/div[2]//a[2]
type //div[@id='storyline-holder']/div[3]/input Selenium Test Child
clickAndWait //input[@value='Save Structure and Modify Categories']
assertTextPresent Category Selenium Test Child created.
clickAndWait //a[contains(@href, 'comicpress-manager') and contains(text(), 'Upload')]
type upload-0 /home/john/Desktop/comicpress/selenium/1990-01-01-sample-comic.jpeg
uncheck //th[contains(text(), "Storyline:")]/..//div[1]//input
check //th[contains(text(), "Storyline:")]/..//div[3]//input
clickAndWait submit
clickAndWait link=Edit post
storeLocation edit_post
assertChecked //th[contains(text(), "Storyline")]/..//div[3]//input
clickAndWait link=Storyline Structure
click //div[@id='storyline-holder']/div[3]/div/a[5]
clickAndWait //input[@value='Save Structure and Modify Categories']
assertTextPresent Category Selenium Test Child deleted.
assertTextPresent The following orphaned comic posts were placed into their original category's parent:
assertTextPresent Storyline structure saved.
clickAndWait link=Edit
select m label=January 1990
clickAndWait post-query-submit
clickAndWait //table[contains(@class, 'widefat')]//span[@class='edit']/a
assertChecked //th[contains(text(), "Storyline")]/..//div[2]//input
click link=Delete
assertConfirmation *Sample Comic*
waitForPageToLoad 30000
assertTextPresent Post deleted.
clickAndWait link=Storyline Structure
click //div[@id='storyline-holder']/div[2]/div/a[5]
clickAndWait //input[@value='Save Structure and Modify Categories']
assertTextPresent Category Selenium Test deleted.