Add acceptance tests for switching to the comments of another file

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
This commit is contained in:
Daniel Calviño Sánchez 2018-11-22 05:20:26 +01:00
parent b7767a51f1
commit 139e2218d1
2 changed files with 51 additions and 0 deletions

View File

@ -6,3 +6,26 @@ Feature: app-comments
And I open the "Comments" tab in the details view
When I create a new comment with "Hello world" as message
Then I see a comment with "Hello world" as message
Scenario: open the comments for a different file
Given I am logged in
And I create a new folder named "Folder"
And I open the details view for "welcome.txt"
And I open the "Comments" tab in the details view
And I create a new comment with "Hello world" as message
And I see a comment with "Hello world" as message
When I open the details view for "Folder"
# The "Comments" tab should already be opened
Then I see that there are no comments
Scenario: write a comment in a file right after writing a comment in another file
Given I am logged in
And I create a new folder named "Folder"
And I open the details view for "Folder"
And I open the "Comments" tab in the details view
And I create a new comment with "Comment in Folder" as message
And I open the details view for "welcome.txt"
# The "Comments" tab should already be opened
When I create a new comment with "Comment in welcome.txt" as message
Then I see a comment with "Comment in welcome.txt" as message
And I see that there is no comment with "Comment in Folder" as message

View File

@ -62,6 +62,15 @@ class CommentsAppContext implements Context, ActorAwareInterface {
describedAs("Comment with text \"$text\" in details view in Files app");
}
/**
* @return Locator
*/
public static function emptyContent() {
return Locator::forThe()->css(".emptycontent")->
descendantOf(FilesAppContext::detailsView())->
describedAs("Empty content in details view in Files app");
}
/**
* @When /^I create a new comment with "([^"]*)" as message$/
*/
@ -70,6 +79,14 @@ class CommentsAppContext implements Context, ActorAwareInterface {
$this->actor->find(self::submitNewCommentButton())->click();
}
/**
* @Then /^I see that there are no comments$/
*/
public function iSeeThatThereAreNoComments() {
PHPUnit_Framework_Assert::assertTrue(
$this->actor->find(self::emptyContent(), 10)->isVisible());
}
/**
* @Then /^I see a comment with "([^"]*)" as message$/
*/
@ -77,4 +94,15 @@ class CommentsAppContext implements Context, ActorAwareInterface {
PHPUnit_Framework_Assert::assertTrue(
$this->actor->find(self::commentWithText($commentText), 10)->isVisible());
}
/**
* @Then /^I see that there is no comment with "([^"]*)" as message$/
*/
public function iSeeThatThereIsNoCommentWithAsMessage($commentText) {
try {
PHPUnit_Framework_Assert::assertFalse(
$this->actor->find(self::commentWithText($commentText))->isVisible());
} catch (NoSuchElementException $exception) {
}
}
}