#70 added conference class, added create method test
This commit is contained in:
parent
ff7f535980
commit
961fdf9397
59
src/test/java/IndexConferenceTest.java
Normal file
59
src/test/java/IndexConferenceTest.java
Normal file
@ -0,0 +1,59 @@
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
import com.google.common.collect.Iterables;
|
||||
import conference.ConferencePage;
|
||||
import conference.ConferencesDashboardPage;
|
||||
import conference.ConferencesPage;
|
||||
import core.PageObject;
|
||||
import core.TestTemplate;
|
||||
import org.assertj.core.api.Assertions;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
import ru.ulstu.NgTrackerApplication;
|
||||
import ru.ulstu.configuration.ApplicationProperties;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@RunWith(SpringRunner.class)
|
||||
@SpringBootTest(classes = NgTrackerApplication.class, webEnvironment = SpringBootTest.WebEnvironment.DEFINED_PORT)
|
||||
public class IndexConferenceTest extends TestTemplate {
|
||||
private final Map<PageObject, List<String>> navigationHolder = ImmutableMap.of(
|
||||
new ConferencesPage(), Arrays.asList("КОНФЕРЕНЦИИ", "/conferences/conferences"),
|
||||
new ConferencePage(), Arrays.asList("РЕДАКТИРОВАНИЕ КОНФЕРЕНЦИИ", "/conferences/conference?id=0"),
|
||||
new ConferencesDashboardPage(), Arrays.asList("АКТУАЛЬНЫЕ КОНФЕРЕНЦИИ", "/conferences/dashboard")
|
||||
);
|
||||
|
||||
@Autowired
|
||||
private ApplicationProperties applicationProperties;
|
||||
|
||||
@Test
|
||||
public void testStartApplication() {
|
||||
getContext().goTo(applicationProperties.getBaseUrl());
|
||||
Assertions
|
||||
.assertThat(getContext().getTitle())
|
||||
.isEqualTo("NG-Tracker");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testCreateNewConference() {
|
||||
Map.Entry<PageObject, List<String>> page = Iterables.get(navigationHolder.entrySet(), 1);
|
||||
|
||||
getContext().goTo(applicationProperties.getBaseUrl() + page.getValue().get(1));
|
||||
ConferencePage conferencePage = (ConferencePage) getContext().initPage(page.getKey());
|
||||
ConferencesPage conferencesPage = (ConferencesPage) getContext().initPage(Iterables.get(navigationHolder.entrySet(), 0).getKey());
|
||||
|
||||
String newConferenceName = "test " + (new Date()).getTime();
|
||||
conferencePage.setName(newConferenceName);
|
||||
conferencePage.clickSaveBut();
|
||||
|
||||
Assert.assertTrue(conferencesPage.getConferencesList()
|
||||
.stream()
|
||||
.anyMatch(webElement -> webElement.getText().equals(newConferenceName)));
|
||||
}
|
||||
}
|
19
src/test/java/conference/ConferencePage.java
Normal file
19
src/test/java/conference/ConferencePage.java
Normal file
@ -0,0 +1,19 @@
|
||||
package conference;
|
||||
|
||||
import core.PageObject;
|
||||
import org.openqa.selenium.By;
|
||||
|
||||
public class ConferencePage extends PageObject {
|
||||
|
||||
public String getSubTitle() {
|
||||
return driver.findElement(By.tagName("h3")).getText();
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
driver.findElement(By.id("title")).sendKeys(name);
|
||||
}
|
||||
|
||||
public void clickSaveBut() {
|
||||
driver.findElement(By.id("send-message-button")).click();
|
||||
}
|
||||
}
|
11
src/test/java/conference/ConferencesDashboardPage.java
Normal file
11
src/test/java/conference/ConferencesDashboardPage.java
Normal file
@ -0,0 +1,11 @@
|
||||
package conference;
|
||||
|
||||
import core.PageObject;
|
||||
import org.openqa.selenium.By;
|
||||
|
||||
public class ConferencesDashboardPage extends PageObject {
|
||||
|
||||
public String getSubTitle() {
|
||||
return driver.findElement(By.tagName("h2")).getText();
|
||||
}
|
||||
}
|
19
src/test/java/conference/ConferencesPage.java
Normal file
19
src/test/java/conference/ConferencesPage.java
Normal file
@ -0,0 +1,19 @@
|
||||
package conference;
|
||||
|
||||
import core.PageObject;
|
||||
import org.openqa.selenium.By;
|
||||
import org.openqa.selenium.WebElement;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class ConferencesPage extends PageObject {
|
||||
|
||||
public String getSubTitle() {
|
||||
return driver.findElement(By.tagName("h3")).getText();
|
||||
}
|
||||
|
||||
public List<WebElement> getConferencesList() {
|
||||
return driver.findElements(By.cssSelector("span.h6.float-left.m-2"));
|
||||
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user