@publishing @publish Feature: Publishing configuration data

In order to make configuration data available for retrieval
As a publisher 
I want to publish configuration data

Scenario: Revision added to metadata
  Given I am allowed to publish configurations
  When I request publication of the configuration data
  Then I receive a unique revision for my publication
  And the metadata is updated with the revision by the CS

Scenario: Metadata saved with data
  Given I am allowed to publish configurations
  And some metadata
  When I request publication of the configuration data
  Then the metadata is also remembered

Scenario: Timestamp added to metadata
  Given I am allowed to publish configurations
  When I request publication of the configuration data
  Then the entry is timestamped

Scenario: New revision for publication to existing identifier
  Given I am allowed to publish configurations
  And the specified configuration exists
  When I request publication of the configuration data
  Then I receive a new unique revision for the publication

Scenario: Invalid data
  Given I am allowed to publish configurations
  And invalid configuration data
  When I request publication of the configuration data
  Then I receive an 'invalid data' notification

Scenario: CS publication failure
  Given I am allowed to publish configurations
  And a CS publication failure
  When I request publication of the configuration data
  Then I should receive a 'publication failure' notification