source: devel/testlink/automation2.0/src/test/java/org/expressolivre/cte/pages/email/MailFolderPage.java @ 4627

Revision 4627, 4.3 KB checked in by luiz-fernando, 13 years ago (diff)

Ticket #1771 - Modificacoes feitas em nomes de classes e metodos

Line 
1package org.expressolivre.cte.pages.email;
2
3import org.openqa.selenium.Alert;
4import org.openqa.selenium.By;
5import org.openqa.selenium.WebDriver;
6import org.openqa.selenium.WebElement;
7import org.openqa.selenium.support.FindBy;
8
9/**
10 * Pagina de administracao das pastas do Expresso.
11 *
12 * @author L.F.Estivalet (Serpro)
13 *
14 *         Created on Jun 16, 2011 at 4:01:32 PM
15 *
16 */
17public class MailFolderPage extends MailPage {
18
19        @FindBy(xpath = "//input[@value='Nova Pasta']")
20        private WebElement createNewFolder;
21
22        @FindBy(xpath = "//input[@value='Excluir pasta']")
23        private WebElement deleteFolder;
24
25        @FindBy(xpath = "//input[@value='Renomear pasta']")
26        private WebElement renameFolder;
27
28        @FindBy(xpath = "//input[@value='Fechar']")
29        private WebElement closeButton;
30
31        public MailFolderPage(WebDriver driver) {
32                super(driver);
33                // TODO Auto-generated constructor stub
34        }
35
36        /**
37         * Cria nova pasta.
38         *
39         * @param folderName
40         *            Nome da pasta a ser criada.
41         */
42        public void createNewFolder(String folderName) {
43                this.createFolder(folderName);
44        }
45
46        private void createFolder(String folderName) {
47                this.createNewFolder.click();
48                Alert newFolder = driver.switchTo().alert();
49                assert "Insira o nome da nova pasta: ".equals(newFolder.getText());
50                newFolder.sendKeys(folderName);
51                newFolder.accept();
52
53                super.waitLoading();
54        }
55
56        /**
57         * Cria sub pasta.
58         *
59         * @param rootFolderName
60         *            Pasta pai.
61         * @param subFolderName
62         *            Nome da sub pasta a ser criada.
63         */
64        public void createSubFolder(String rootFolderName, String subFolderName) {
65                this.driver.findElement(
66                                By.id("lINBOX/" + rootFolderName + "folders_tree")).click();
67                this.createFolder(subFolderName);
68        }
69
70        public void createLocalFolder(String subFolderName) {
71                this.driver.findElement(By.id("llocal_rootfolders_tree")).click();
72                this.createFolder(subFolderName);
73        }
74
75        /**
76         * Renomeia pasta.
77         *
78         * @param folderName
79         *            Nome da pasta a ser renomeada.
80         * @param newName
81         *            Novo nome da pasta.
82         */
83        public void renameFolder(String folderName, String newName) {
84                super.waitForElement(By.id("lINBOX/" + folderName + "folders_tree"));
85                this.driver.findElement(By.id("lINBOX/" + folderName + "folders_tree"))
86                                .click();
87                this.renameFolder.click();
88                Alert newFolder = driver.switchTo().alert();
89                assert "Entre com um nome para a pasta:".equals(newFolder.getText());
90                newFolder.sendKeys(newName);
91                newFolder.accept();
92        }
93
94        /**
95         * @param folderName
96         */
97        public void renameFolderInUse(String folderName) {
98                this.driver.findElement(By.id("lINBOX/" + folderName + "folders_tree"))
99                                .click();
100                this.renameFolder.click();
101                Alert newFolder = driver.switchTo().alert();
102                assert "Não é possível renomear esta pasta, pois está em uso no momento!"
103                                .equals(newFolder.getText());
104                newFolder.accept();
105        }
106
107        /**
108         * Exclui pasta.
109         *
110         * @param folderName
111         *            Nome da pasta a ser excluida.
112         */
113        public void deleteFolder(String folderName) {
114                this.driver.findElement(By.id("lINBOX/" + folderName + "folders_tree"))
115                                .click();
116                this.deleteFolder.click();
117        }
118
119        /**
120         * Exclui pasta.
121         *
122         * @param folderName
123         *            Nome da pasta a ser excluida.
124         */
125        public void deleteFolder(String folderName, boolean inUse) {
126                this.driver.findElement(By.id("lINBOX/" + folderName + "folders_tree"))
127                                .click();
128                this.deleteFolder.click();
129                Alert confirm = driver.switchTo().alert();
130                if (!inUse) {
131                        assert ("Você gostaria de excluir a pasta: " + folderName + "?")
132                                        .equals(confirm.getText());
133                } else {
134                        assert ("Não é possível remover esta pasta, pois está em uso no momento!")
135                                        .equals(confirm.getText());
136                }
137                confirm.accept();
138        }
139
140        /**
141         * Exclui pasta.
142         *
143         * @param folderName
144         *            Nome da pasta a ser excluida.
145         */
146        public void deleteSubFolder(String rootFolderName, String subFolderName) {
147                this.driver.findElement(
148                                By.id("pINBOX/" + rootFolderName + "folders_tree")).click();
149                this.driver.findElement(
150                                By.id("lINBOX/" + rootFolderName + "/" + subFolderName
151                                                + "folders_tree")).click();
152                this.deleteFolder.click();
153                Alert confirm = driver.switchTo().alert();
154                assert ("Você gostaria de excluir a pasta: " + subFolderName + "?")
155                                .equals(confirm.getText());
156                confirm.accept();
157        }
158
159        public void closeWindow() {
160                this.closeButton.click();
161        }
162
163}
Note: See TracBrowser for help on using the repository browser.