projects.feature 3.92 KB
Newer Older
1
@public
2
Feature: Explore Projects Feature
3 4
  Background:
    Given public project "Community"
5
    And internal project "Internal"
6 7 8 9 10
    And private project "Enterprise"

  Scenario: I visit public area
    When I visit the public projects area
    Then I should see project "Community"
11
    And I should not see project "Internal"
12 13 14
    And I should not see project "Enterprise"

  Scenario: I visit public project page
15 16
    When I visit project "Community" page
    Then I should see project "Community" home page
17

18 19
  Scenario: I visit internal project page
    When I visit project "Internal" page
20
    Then I should be redirected to sign in page
21 22 23

  Scenario: I visit private project page
    When I visit project "Enterprise" page
24
    Then I should be redirected to sign in page
25

26 27
  Scenario: I visit an empty public project page
    Given public empty project "Empty Public Project"
28 29
    When I visit empty project page
    Then I should see empty public project details
30 31 32 33 34 35 36 37
    And I should see empty public project details with http clone info

  Scenario: I visit an empty public project page as user
    Given I sign in as a user
    And public empty project "Empty Public Project"
    When I visit empty project page
    Then I should see empty public project details
    And I should see empty public project details with ssh clone info
38 39 40 41 42 43 44 45 46 47 48 49

  Scenario: I visit public area as user
    Given I sign in as a user
    When I visit the public projects area
    Then I should see project "Community"
    And I should see project "Internal"
    And I should not see project "Enterprise"

  Scenario: I visit internal project page as user
    Given I sign in as a user
    When I visit project "Internal" page
    Then I should see project "Internal" home page
50 51 52 53

  Scenario: I visit public project page
    When I visit project "Community" page
    Then I should see project "Community" home page
54
    And I should see an http link to the repository
55

56
  Scenario: I visit public project page as user
57 58 59
    Given I sign in as a user
    When I visit project "Community" page
    Then I should see project "Community" home page
60 61 62 63 64 65
    And I should see an ssh link to the repository

  Scenario: I visit an empty public project page
    Given public empty project "Empty Public Project"
    When I visit empty project page
    Then I should see empty public project details
66 67 68 69 70

  Scenario: I visit public project issues page as a non authorized user
    Given I visit project "Community" page
    And I visit "Community" issues page
    Then I should see list of issues for "Community" project
71

72 73 74 75 76
  Scenario: I visit public project issues page as authorized user
    Given I sign in as a user
    Given I visit project "Community" page
    And I visit "Community" issues page
    Then I should see list of issues for "Community" project
77 78 79 80 81 82

  Scenario: I visit internal project issues page as authorized user
    Given I sign in as a user
    Given I visit project "Internal" page
    And I visit "Internal" issues page
    Then I should see list of issues for "Internal" project
83 84 85 86 87

  Scenario: I visit public project merge requests page as an authorized user
    Given I sign in as a user
    Given I visit project "Community" page
    And I visit "Community" merge requests page
88
    And project "Community" has "Bug fix" open merge request
89 90 91 92 93
    Then I should see list of merge requests for "Community" project

  Scenario: I visit public project merge requests page as a non authorized user
    Given I visit project "Community" page
    And I visit "Community" merge requests page
94
    And project "Community" has "Bug fix" open merge request
95 96 97 98 99 100
    Then I should see list of merge requests for "Community" project

  Scenario: I visit internal project merge requests page as an authorized user
    Given I sign in as a user
    Given I visit project "Internal" page
    And I visit "Internal" merge requests page
101
    And project "Internal" has "Feature implemented" open merge request
102
    Then I should see list of merge requests for "Internal" project