Cucumber Ltd / cucumber-pro

Conversationsfeatures/collaborate/conversations.feature

Release Dasher II (patch 1) (2018-12-13)

Romain Gérard

Currently viewing

Feature: Conversations

If you're not having conversations, you're not doing BDD

Rules

  • You can comment on most elements of a Gherkin document, even tags
  • You can comment on most elements of a Markdown document
  • You can only see comments and post comment if you're logged in
  • Commenting on an element starts a conversation.
  • More comments can be added to the conversation.
  • The conversation is a single thread, there is no nesting.
  • Conversations can be resolved, meaning they're no longer displayed.
  • Resolved conversations could be displayed in the future.
  • Orphaned conversations (i.e. when the document changes so that the line number the conversation was attached to no longer exists or is blank) are displayed on the closest non-blank line.
  • You can't start a conversation on an element that has an unresolved conversation.

Deferred

  • Access/read/reopen/reply to resolved conversations
  • Moving conversation as document content changes
  • Show/hide conversations
  • Edit/delete comments
  • Search for comment text

Background:

  • Given Dave has created test-project with document.md

Scenario: start new conversation on a document

  • Given Dave is reading document.md in test-project
  • And Bev is reading document.md in test-project
  • When Dave comments on document.md:3
  • Then Bev should be able to read Dave's comment
  • And Dave should be able to read Dave's comment

Scenario: reply to a conversation

  • Given Dave is reading document.md in test-project
  • Given Bev is reading document.md in test-project
  • And Dave has commented on document.md:3
  • When Bev replies on document.md:3
  • Then Bev should be able to read Bev's comment
  • And Dave should be able to read Bev's comment

Scenario: resolve a conversation

  • Given Dave is reading document.md in test-project
  • Given Bev is reading document.md in test-project
  • And Dave has commented on document.md:3
  • When Bev resolves the conversation
  • Then Bev should not be able to read the conversation anymore
  • And Dave should not be able to read the conversation anymore

Scenario: view an existing conversation

  • Given Dave is reading document.md in test-project
  • And Dave has commented on document.md:3
  • When Bev reads document.md in test-project
  • Then Bev should be able to read Dave's comment