package fi.otavanopisto.muikku.plugins.workspace.test.ui; public abstract class Story20Base extends SeleniumTestBase { //FIXME: Re-enable this test // // private static final String WORKSPACE_DATASOURCE = "MOCK"; // private static final String WORKSPACE_URLNAME = "selenium-tests"; // private static final String WORKSPACE_DESCRIPTION = "Workspace for selenium tests"; // private static final String WORKSPACE_TYPE_ID = "2"; // private static final String WORKSPACE_COURSE_IDENTIFIER_IDENTIFIER = "2"; // // private static final String TEXTFIELD_MATERIAL_HTML = "<html><body><p>Testi käyttäjätarinalle #100020: Opiskeljana haluan voida vastata tekstimuotoiseen kenttään</p><p><strong>Yksirivinen tekstikenttä:</strong></p><p><object type='application/vnd.muikku.field.text'><param name='type' value='application/json'><param name='content' value='{"name":"param1","rightAnswers":[],"columns":20,"hint":"Vihjeteksti","help":"Ohjeteksti"}'><input name='param1' size='20' type='text'></object></body></html>"; // private static final String TEXTFIELD_MATERIAL_TITLE = "User Styoe #20 - textfield"; // private static final String TEXTFIELD_MATERIAL_URLNAME = "us20-textfield"; // private static final String TEXTFIELD_TEST_URL = "/workspace/" + WORKSPACE_URLNAME + "/materials.html/" + TEXTFIELD_MATERIAL_URLNAME; // private static final String TEXTFIELD_HINT_TEXT = "Vihjeteksti"; // private static final String TEXTFIELD_HELP_TEXT = "Ohjeteksti"; // // private static final String MEMOFIELD_MATERIAL_HTML = "<html><body><p>Testi käyttäjätarinalle #100020: Opiskeljana haluan voida vastata tekstimuotoiseen kenttään</p><p><strong>Yksirivinen tekstikenttä:</strong></p><p><object type='application/vnd.muikku.field.memo'><param name='type' value='application/json'><param name='content' value='{"name":"param2","columns":20,"rows":2,"help":"Ohjeteksti","hint":"Vihjeteksti"}'><textarea cols='20' name='param2' placeholder='Ohjeteksti' rows='2' title='Vihjeteksti'></textarea></object></body></html>"; // private static final String MEMOFIELD_MATERIAL_TITLE = "User Styoe #20 - memofield"; // private static final String MEMOFIELD_MATERIAL_URLNAME = "us20-memofield"; // private static final String MEMOFIELD_TEST_URL = "/workspace/" + WORKSPACE_URLNAME + "/materials.html/" + MEMOFIELD_MATERIAL_URLNAME; // private static final String MEMOFIELD_HINT_TEXT = "Vihjeteksti"; // private static final String MEMOFIELD_HELP_TEXT = "Ohjeteksti"; // private static final String MEMOFIELD_COLUMNS = "20"; // private static final String MEMOFIELD_ROWS = "2"; // // @Test // public void testTextFieldAttributes() throws Exception { // WorkspaceCompact workspace = createWorkspace(WORKSPACE_DATASOURCE, WORKSPACE_URLNAME, WORKSPACE_DESCRIPTION, WORKSPACE_TYPE_ID, WORKSPACE_COURSE_IDENTIFIER_IDENTIFIER); // try { // HtmlMaterialCompact htmlMaterial = createHtmlMaterial(TEXTFIELD_MATERIAL_URLNAME, TEXTFIELD_MATERIAL_TITLE, TEXTFIELD_MATERIAL_HTML); // try { // WorkspaceMaterialCompact workspaceMaterial = createWorkspaceMaterial(workspace, htmlMaterial.getId(), htmlMaterial.getUrlName()); // try { // By textInputBy = By.cssSelector("#material-form input[type=\"text\"]"); // getDriver().get(getAppUrl(TEXTFIELD_TEST_URL).toString()); // // // Can we find the text input? // assertNotNull(getDriver().findElement(textInputBy)); // assertEquals("text", getDriver().findElement(textInputBy).getAttribute("type")); // assertEquals(TEXTFIELD_HINT_TEXT, getDriver().findElement(textInputBy).getAttribute("title")); // assertEquals(TEXTFIELD_HELP_TEXT, getDriver().findElement(textInputBy).getAttribute("placeholder")); // } finally { // deleteWorkspaceMaterial(workspaceMaterial); // } // } finally { // deleteHtmlMaterial(htmlMaterial); // } // } finally { // deleteWorkspace(workspace); // } // } // // @Test // public void testMemoFieldAttributes() throws Exception { // WorkspaceCompact workspace = createWorkspace(WORKSPACE_DATASOURCE, WORKSPACE_URLNAME, WORKSPACE_DESCRIPTION, WORKSPACE_TYPE_ID, WORKSPACE_COURSE_IDENTIFIER_IDENTIFIER); // try { // HtmlMaterialCompact htmlMaterial = createHtmlMaterial(MEMOFIELD_MATERIAL_URLNAME, MEMOFIELD_MATERIAL_TITLE, MEMOFIELD_MATERIAL_HTML); // try { // WorkspaceMaterialCompact workspaceMaterial = createWorkspaceMaterial(workspace, htmlMaterial.getId(), htmlMaterial.getUrlName()); // try { // By memoFieldBy = By.cssSelector("#material-form textarea"); // getDriver().get(getAppUrl(MEMOFIELD_TEST_URL).toString()); // // // Can we find the text input? // assertNotNull(getDriver().findElement(memoFieldBy)); // assertEquals(MEMOFIELD_HINT_TEXT, getDriver().findElement(memoFieldBy).getAttribute("title")); // assertEquals(MEMOFIELD_HELP_TEXT, getDriver().findElement(memoFieldBy).getAttribute("placeholder")); // assertEquals(MEMOFIELD_COLUMNS, getDriver().findElement(memoFieldBy).getAttribute("cols")); // assertEquals(MEMOFIELD_ROWS, getDriver().findElement(memoFieldBy).getAttribute("rows")); // } finally { // deleteWorkspaceMaterial(workspaceMaterial); // } // } finally { // deleteHtmlMaterial(htmlMaterial); // } // } finally { // deleteWorkspace(workspace); // } // } // // @Test // public void testTextFieldSave() throws Exception { // WorkspaceCompact workspace = createWorkspace(WORKSPACE_DATASOURCE, WORKSPACE_URLNAME, WORKSPACE_DESCRIPTION, WORKSPACE_TYPE_ID, WORKSPACE_COURSE_IDENTIFIER_IDENTIFIER); // try { // HtmlMaterialCompact htmlMaterial = createHtmlMaterial(TEXTFIELD_MATERIAL_URLNAME, TEXTFIELD_MATERIAL_TITLE, TEXTFIELD_MATERIAL_HTML); // try { // WorkspaceMaterialCompact workspaceMaterial = createWorkspaceMaterial(workspace, htmlMaterial.getId(), htmlMaterial.getUrlName()); // try { // By textFieldBy = By.cssSelector("#material-form input[type=\"text\"]"); // By saveButtonBy = By.cssSelector("#material-form input[type=\"submit\"]"); // // getDriver().get(getAppUrl(TEXTFIELD_TEST_URL).toString()); // loginStudent1(); // // // Can we find the text input? // assertNotNull(getDriver().findElement(textFieldBy)); // // // Can we find the submit button ? // assertNotNull(getDriver().findElement(saveButtonBy)); // // // Lets to some text into it // // getDriver().findElement(textFieldBy).click(); // getDriver().findElement(textFieldBy).clear(); // getDriver().findElement(textFieldBy).sendKeys(PANGRAM_FINNISH); // // // Save and check value // // getDriver().findElement(saveButtonBy).click(); // assertEquals(PANGRAM_FINNISH, getDriver().findElement(textFieldBy).getAttribute("value")); // // // Reload & check value // // getDriver().get(getAppUrl(TEXTFIELD_TEST_URL).toString()); // assertEquals(PANGRAM_FINNISH, getDriver().findElement(textFieldBy).getAttribute("value")); // // // Change value, save, check, reload and check // // getDriver().findElement(textFieldBy).click(); // getDriver().findElement(textFieldBy).clear(); // getDriver().findElement(textFieldBy).sendKeys(PANGRAM_ENGLISH); // getDriver().findElement(saveButtonBy).click(); // assertEquals(PANGRAM_ENGLISH, getDriver().findElement(textFieldBy).getAttribute("value")); // getDriver().get(getAppUrl(TEXTFIELD_TEST_URL).toString()); // assertEquals(PANGRAM_ENGLISH, getDriver().findElement(textFieldBy).getAttribute("value")); // // // Test unicode (Japanese, Russian) // // getDriver().findElement(textFieldBy).click(); // getDriver().findElement(textFieldBy).clear(); // getDriver().findElement(textFieldBy).sendKeys(PANGRAM_JAPANESE); // getDriver().findElement(saveButtonBy).click(); // getDriver().get(getAppUrl(TEXTFIELD_TEST_URL).toString()); // assertEquals(PANGRAM_JAPANESE, getDriver().findElement(textFieldBy).getAttribute("value")); // // getDriver().findElement(textFieldBy).click(); // getDriver().findElement(textFieldBy).clear(); // getDriver().findElement(textFieldBy).sendKeys(PANGRAM_RUSSIAN); // getDriver().findElement(saveButtonBy).click(); // getDriver().get(getAppUrl(TEXTFIELD_TEST_URL).toString()); // assertEquals(PANGRAM_RUSSIAN, getDriver().findElement(textFieldBy).getAttribute("value")); // } finally { // deleteWorkspaceMaterial(workspaceMaterial); // } // } finally { // deleteHtmlMaterial(htmlMaterial); // } // } finally { // deleteWorkspace(workspace); // } // } // // @Test // public void testMemoFieldSave() throws Exception { // WorkspaceCompact workspace = createWorkspace(WORKSPACE_DATASOURCE, WORKSPACE_URLNAME, WORKSPACE_DESCRIPTION, WORKSPACE_TYPE_ID, WORKSPACE_COURSE_IDENTIFIER_IDENTIFIER); // try { // HtmlMaterialCompact htmlMaterial = createHtmlMaterial(MEMOFIELD_MATERIAL_URLNAME, MEMOFIELD_MATERIAL_TITLE, MEMOFIELD_MATERIAL_HTML); // try { // WorkspaceMaterialCompact workspaceMaterial = createWorkspaceMaterial(workspace, htmlMaterial.getId(), htmlMaterial.getUrlName()); // try { // By memoFieldBy = By.cssSelector("#material-form textarea"); // By saveButtonBy = By.cssSelector("#material-form input[type=\"submit\"]"); // // getDriver().get(getAppUrl(MEMOFIELD_TEST_URL).toString()); // loginStudent1(); // // // Can we find the text input? // assertNotNull(getDriver().findElement(memoFieldBy)); // // // Can we find the submit button ? // assertNotNull(getDriver().findElement(saveButtonBy)); // // // Lets to some text into it // // getDriver().findElement(memoFieldBy).click(); // getDriver().findElement(memoFieldBy).clear(); // getDriver().findElement(memoFieldBy).sendKeys(PANGRAM_FINNISH); // // // Save and check value // // getDriver().findElement(saveButtonBy).click(); // assertEquals(PANGRAM_FINNISH, getDriver().findElement(memoFieldBy).getAttribute("value")); // // // Reload & check value // // getDriver().get(getAppUrl(MEMOFIELD_TEST_URL).toString()); // assertEquals(PANGRAM_FINNISH, getDriver().findElement(memoFieldBy).getAttribute("value")); // // // Change value, save, check, reload and check // // getDriver().findElement(memoFieldBy).click(); // getDriver().findElement(memoFieldBy).clear(); // getDriver().findElement(memoFieldBy).sendKeys(PANGRAM_ENGLISH); // getDriver().findElement(saveButtonBy).click(); // assertEquals(PANGRAM_ENGLISH, getDriver().findElement(memoFieldBy).getAttribute("value")); // getDriver().get(getAppUrl(MEMOFIELD_TEST_URL).toString()); // assertEquals(PANGRAM_ENGLISH, getDriver().findElement(memoFieldBy).getAttribute("value")); // // // Test unicode (Japanese, Russian) // // getDriver().findElement(memoFieldBy).click(); // getDriver().findElement(memoFieldBy).clear(); // getDriver().findElement(memoFieldBy).sendKeys(PANGRAM_JAPANESE); // getDriver().findElement(saveButtonBy).click(); // getDriver().get(getAppUrl(MEMOFIELD_TEST_URL).toString()); // assertEquals(PANGRAM_JAPANESE, getDriver().findElement(memoFieldBy).getAttribute("value")); // // getDriver().findElement(memoFieldBy).click(); // getDriver().findElement(memoFieldBy).clear(); // getDriver().findElement(memoFieldBy).sendKeys(PANGRAM_RUSSIAN); // getDriver().findElement(saveButtonBy).click(); // getDriver().get(getAppUrl(MEMOFIELD_TEST_URL).toString()); // assertEquals(PANGRAM_RUSSIAN, getDriver().findElement(memoFieldBy).getAttribute("value")); // } finally { // deleteWorkspaceMaterial(workspaceMaterial); // } // } finally { // deleteHtmlMaterial(htmlMaterial); // } // } finally { // deleteWorkspace(workspace); // } // } // // private void loginStudent1() throws InterruptedException { // WebElement usernameInput = getDriver().findElement(By.cssSelector(".loginWidget input[type=\"text\"]")); // assertNotNull(usernameInput); // // WebElement passwordInput = getDriver().findElement(By.cssSelector(".loginWidget input[type=\"password\"]")); // assertNotNull(passwordInput); // // WebElement loginButton = getDriver().findElement(By.cssSelector(".loginWidget input[type=\"submit\"]")); // assertNotNull(loginButton); // // usernameInput.click(); // usernameInput.sendKeys(getStudent1Username()); // // passwordInput.click(); // passwordInput.sendKeys(getStudent1Password()); // // loginButton.click(); // } }