Feature: Sign up as user using facebook

  @javascript
  Scenario: Happy flow facebook without list
    Given there is no user information stored in the local storage
    When the user is on the homepage
    Then the user is redirected to the sign in page
    When the user clicks the sign in via facebook button
    #When I visit the user obtain token path
    Then the user should be redirected to the homepage
    And the user should be signed in as the facebook user
    And the newly created user info should be stored in the local storage

  @javascript
  Scenario: Authencicate with facebook when there is a list already active
    Given there is a confirmed and open supplier
    And there is a facebook user
    And the user has an active order
    And there is no user information stored in the local storage
    #When I visit the user obtain token path
    When the user is on the homepage
    Then the user is redirected to the sign in page
    When the user clicks the sign in via facebook button
    Then the user should be redirected to the user order overview page

  @javascript
  Scenario: Happy flow instagram without list
    Given there is no user information stored in the local storage
    When the user is on the homepage
    Then the user is redirected to the sign in page
    When the user clicks the sign in via instagram button
    #When I visit the user obtain token path
    Then the user should be redirected to the homepage
    And the user should be signed in as the instagram user
    And the newly created user info should be stored in the local storage

  @javascript
  Scenario: Authencicate with instagram when there is a list already active
    Given there is a confirmed and open supplier
    And there is a instagram user
    And the user has an active order
    And there is no user information stored in the local storage
    #When I visit the user obtain token path
    When the user is on the homepage
    Then the user is redirected to the sign in page
    When the user clicks the sign in via instagram button
    Then the user should be redirected to the user order overview page

  @javascript
  Scenario: Already signed in user loads the application
    Given I am signed in as a user
    When the user is on the homepage
    #And I open the debugger
    #Then the user is redirected to the sign in page
    #When the user clicks the sign in via facebook button
    #When I visit '/user'
    #And I wait 4 seconds
    Then the user should be redirected to the homepage
    And the newly created user info should be stored in the local storage

  @javascript
  Scenario: Expired token
    Given I am signed in as a user
    And the user is on the homepage
    When the user authentication token changes
    And the user is on the homepage
    Then the user is redirected to the sign in page
    And there is no user information stored in the local storage

  Scenario: Facebook problem OmniAuth.config.mock_auth[:facebook] = :invalid_credentials
  Scenario: Valid facebook login, but declines information requested by scope
