use of it.vige.rubia.model.Category in project rubia-forums by flashboss.
the class ViewRSSLink method getPage.
public static Forum getPage(WebDriver driver, Forum forum) {
VerifyForum.goTo(driver, forum);
goTo(driver);
Forum result = new Forum();
result.setName(driver.findElement(id(FEED_TITLE_TEXT)).getText().split(": ")[1]);
result.setCategory(new Category(driver.findElement(id(FEED_SUBTITLE_TEXT)).getText().split(" in category ")[1]));
Map<String, Topic> topics = new HashMap<String, Topic>();
List<WebElement> entries = driver.findElements(className(ENTRY_LINK));
DateFormat dateFormat = new SimpleDateFormat("d MMM yyyy, HH:mm");
for (WebElement entry : entries) {
String[] entryText = entry.getText().split(BY);
String lastUpdated = entry.findElement(className(LAST_UPDATED)).getText();
String topicTitle = entryText[0].replace(RE, "");
Topic topic = topics.get(topicTitle);
if (topic == null) {
topic = new Topic(topicTitle);
topics.put(topicTitle, topic);
}
Post post = new Post(entry.findElement(className(FEED_ENTRY_CONTENT)).getText());
post.setPoster(new Poster(entryText[1].split("\n")[0]));
try {
post.setCreateDate(dateFormat.parse(lastUpdated));
} catch (ParseException e) {
}
post.getMessage().setSubject(entryText[0]);
topic.getPosts().add(post);
}
result.setTopics(new ArrayList<Topic>(topics.values()));
returnToHome(driver);
return result;
}
use of it.vige.rubia.model.Category in project rubia-forums by flashboss.
the class OperationPostTest method verifyPostFromForumPageLastPost.
@Test
public void verifyPostFromForumPageLastPost() {
Forum forum = new Forum("Second Test Forum", "Second Test Description", new Category("First Test Category"));
goTo(driver, forum);
Topic topic = new Topic(forum, "Third Test Topic");
Poster poster = getPosterLastPost(driver, topic);
goTo(driver, forum);
Post post = getLastPostOfCurrentForum(driver, topic);
assertTrue(post != null);
assertEquals(RE + "Third Test Topic", post.getMessage().getSubject());
assertTrue(poster != null);
assertEquals("root", poster.getUserId());
assertTrue(poster.getPostCount() >= 14);
}
use of it.vige.rubia.model.Category in project rubia-forums by flashboss.
the class OperationPostTest method verifyPostProfileFromCategoryPage.
@Test
public void verifyPostProfileFromCategoryPage() {
Category category = new Category("First Test Category");
goTo(driver, category);
Forum forum = new Forum("Second Test Forum", "Second Test Description", category);
Poster poster = getPoster(driver, forum);
assertTrue(poster != null);
assertEquals("root", poster.getUserId());
assertTrue(poster.getPostCount() >= 14);
}
use of it.vige.rubia.model.Category in project rubia-forums by flashboss.
the class ViewAtomLink method getPage.
public static Topic getPage(WebDriver driver, Topic topic) {
VerifyTopic.goTo(driver, topic);
goTo(driver);
Topic result = new Topic();
result.setSubject(driver.findElement(id(FEED_TITLE_TEXT)).getText().split(": ")[1]);
String[] splittedText = driver.findElement(id(FEED_SUBTITLE_TEXT)).getText().split(" in topic | in forum | in category ");
result.setForum(new Forum(splittedText[2]));
result.getForum().setCategory(new Category(splittedText[3]));
List<Post> posts = new ArrayList<Post>();
int entriesSize = driver.findElements(className(ENTRY_LINK)).size();
DateFormat dateFormat = new SimpleDateFormat("d MMM yyyy, HH:mm");
for (int i = 0; i < entriesSize; i++) {
WebElement entry = driver.findElements(className(ENTRY_LINK)).get(i);
String[] entryText = entry.getText().split(BY);
String lastUpdated = entry.findElement(className(LAST_UPDATED)).getText();
Post post = new Post(entryText[0]);
post.setPoster(new Poster(entryText[1].split("\n")[0]));
try {
post.setCreateDate(dateFormat.parse(lastUpdated));
} catch (ParseException e) {
}
post.setMessage(new Message(entry.findElement(className(FEED_ENTRY_CONTENT)).getText()));
post.getMessage().setSubject(entryText[0]);
posts.add(post);
WebElement entryLink = driver.findElement(linkText(entry.getText().split("\n")[0]));
entryLink.click();
List<Attachment> attachments = getAttachmentsOfCurrentPostInPage(driver, post);
post.setAttachments(attachments);
if (topic.getPoll() == null) {
Poll poll = getPollOfCurrentTopic(driver);
result.setPoll(poll);
}
VerifyTopic.goTo(driver, result);
goTo(driver);
}
result.setPosts(posts);
returnToHome(driver);
return result;
}
use of it.vige.rubia.model.Category in project rubia-forums by flashboss.
the class ViewCategory method execute.
// ui actions supported by this
// bean----------------------------------------------------------------------------------------------------
/**
* this generates the category and its corresponding forums
*/
@PostConstruct
public void execute() {
try {
// try to extract categoryId
int categoryId = -1;
String c = getParameter(p_categoryId);
if (c != null && c.trim().length() > 0) {
categoryId = Integer.parseInt(c);
// Setting flag that category has been selected.
categorySelected = true;
}
// Luca Stancapiano start
// get the forumInstanceId where this forum should be added
int forumInstanceId = userPreferences.getForumInstanceId();
this.forumLastPosts = forumsModule.findLastPostsOfForums(forumInstanceId);
// setup category related data to be displayed
if (categoryId == -1) {
// process a default level category
// Luca Stancapiano
Collection<Category> cour = forumsModule.findCategoriesFetchForums(forumInstanceId);
if (cour != null) {
for (Category currentCategory : cour) processCategory(currentCategory);
}
} else {
// process the specifed category
Category currentCategory = forumsModule.findCategoryById(categoryId);
if (currentCategory != null) {
processCategory(currentCategory);
}
}
} catch (Exception e) {
handleException(e);
}
}
Aggregations