@javascript Feature: posting from the main page In order to enlighten humanity for the good of society As a rock star I want to tell the world I am eating a yogurt Background: Given following users exist: | username | | bob | | alice | And a user with username "bob" is connected with "alice" And I sign in as "bob@bob.bob" And I have following aspects: | PostingTo | | NotPostingThingsHere | And I have user with username "alice" in an aspect called "PostingTo" And I have user with username "alice" in an aspect called "NotPostingThingsHere" And I go to the home page Scenario: expanding the publisher Given ".markdownIndications" is hidden And ".options_and_submit" is hidden When I expand the publisher Then I should see "You can use Markdown to format your post" within ".markdownIndications" Then I should see "All aspects" within ".options_and_submit" Then I should see a ".md-write-tab" within ".md-header" Then I should see a ".md-preview-tab" within ".md-header" Scenario: post a text-only message to all aspects Given I expand the publisher When I write the status message "I am eating yogurt" And I submit the publisher And I go to the aspects page Then "I am eating yogurt" should be post 1 Scenario: re-posting a text-only message Given I expand the publisher When I write the status message "The World needs more Cats." And I submit the publisher Given I expand the publisher When I write the status message "The World needs more Cats." And I submit the publisher Then "The World needs more Cats." should be post 1 And "The World needs more Cats." should be post 2 When I go to the aspects page Then "The World needs more Cats." should be post 1 And "The World needs more Cats." should be post 2 Scenario: posting a message appends it to the top of the stream When I click the publisher and post "sup dog" And I click the publisher and post "hello there" Then "hello there" should be post 1 Scenario: post a text-only message to just one aspect When I select only "PostingTo" aspect And I expand the publisher When I write the status message "I am eating a yogurt" And I submit the publisher When I am on the aspects page And I select all aspects And I select only "PostingTo" aspect Then "I am eating a yogurt" should be post 1 When I am on the aspects page And I select all aspects And I select only "NotPostingThingsHere" aspect Then I should not see "I am eating a yogurt" Scenario: post a photo with text Given I expand the publisher And I attach "spec/fixtures/button.png" to the publisher When I write the status message "Look at this dog" And I submit the publisher And I go to the aspects page Then I should see a "img" within ".stream-element div.photo_attachments" And I should see "Look at this dog" within ".stream-element" When I log out And I sign in as "alice@alice.alice" And I go to "bob@bob.bob"'s page Then I should see a "img" within ".stream-element div.photo_attachments" And I should see "Look at this dog" within ".stream-element" Scenario: post a photo without text Given I expand the publisher And I attach "spec/fixtures/button.png" to the publisher Then I should see an uploaded image within the photo drop zone When I press "Share" Then I should see a "img" within ".stream-element div.photo_attachments" When I go to the aspects page Then I should see a "img" within ".stream-element div.photo_attachments" When I log out And I sign in as "alice@alice.alice" And I go to "bob@bob.bob"'s page Then I should see a "img" within ".stream-element div.photo_attachments" Scenario: back out of posting a photo-only post Given I expand the publisher And I attach "spec/fixtures/button.png" to the publisher When I click to delete the first uploaded photo Then I should not see an uploaded image within the photo drop zone And I should not be able to submit the publisher Scenario: back out of uploading a picture to a post with text Given I expand the publisher And I have turned off jQuery effects When I write the status message "I am eating a yogurt" And I attach "spec/fixtures/button.png" to the publisher And I click to delete the first uploaded photo Then I should not see an uploaded image within the photo drop zone And the publisher should be expanded And I close the publisher Scenario: back out of uploading a picture when another has been attached Given I expand the publisher And I have turned off jQuery effects When I write the status message "I am eating a yogurt" And I attach "spec/fixtures/button.png" to the publisher And I attach "spec/fixtures/button.png" to the publisher And I click to delete the first uploaded photo Then I should see an uploaded image within the photo drop zone And the publisher should be expanded And I close the publisher Scenario: hide a contact's post Given I expand the publisher When I write the status message "Here is a post for you to hide" And I submit the publisher And I log out And I sign in as "alice@alice.alice" And I am on "bob@bob.bob"'s page And I hover over the ".stream-element" And I click to hide the first post And I go to "bob@bob.bob"'s page Then I should not see "Here is a post for you to hide" When I am on the aspects page Then I should not see "Here is a post for you to hide" Scenario: delete one of my posts Given I expand the publisher When I write the status message "I am eating a yogurt" And I submit the publisher And I go to the aspects page And I hover over the ".stream-element" And I click to delete the first post And I go to the aspects page Then I should not see "I am eating a yogurt" Scenario: change post target aspects with the aspect-dropdown before posting When I expand the publisher And I press the aspect dropdown And I toggle the aspect "PostingTo" And I press the aspect dropdown And I append "I am eating a yogurt" to the publisher And I submit the publisher And I am on the aspects page And I select only "PostingTo" aspect Then "I am eating a yogurt" should be post 1 When I am on the aspects page And I select all aspects And I select only "NotPostingThingsHere" aspect Then I should not see "I am eating a yogurt" Scenario: post 2 in a row using the aspects-dropdown When I expand the publisher And I press the aspect dropdown And I toggle the aspect "PostingTo" And I press the aspect dropdown And I append "I am eating a yogurt" to the publisher And I submit the publisher And I expand the publisher And I press the aspect dropdown And I toggle the aspect "Besties" And I press the aspect dropdown And I append "And cornflakes also" to the publisher And I submit the publisher And I am on the aspects page And I select only "PostingTo" aspect Then I should see "I am eating a yogurt" and "And cornflakes also" When I am on the aspects page And I select all aspects And I select only "Besties" aspect Then I should not see "I am eating a yogurt" Then I should see "And cornflakes also" When I am on the aspects page And I select all aspects And I select only "NotPostingThingsHere" aspect Then I should not see "I am eating a yogurt" and "And cornflakes also" Scenario: Write html in the publisher When I expand the publisher Then I should not see any alert after I write the status message "" When I submit the publisher Then "" should be post 1 # (NOTE) make this a jasmine spec Scenario: reject deletion one of my posts When I expand the publisher When I write the status message "I am eating a yogurt" And I submit the publisher And I hover over the ".stream-element" And I reject the alert after I prepare the deletion of the first post Then I should see "I am eating a yogurt"