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

  Scenario: I visit public area
Artem Sidorenko's avatar
Artem Sidorenko committed
9
    Given archived project "Archive"
10 11
    When I visit the public projects area
    Then I should see project "Community"
12
    And I should not see project "Internal"
13
    And I should not see project "Enterprise"
Artem Sidorenko's avatar
Artem Sidorenko committed
14
    And I should not see project "Archive"
15 16

  Scenario: I visit public project page
17 18
    When I visit project "Community" page
    Then I should see project "Community" home page
19

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

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

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

34
  Scenario: I visit an empty public project page as user with no ssh-keys
35
    Given I sign in as a user
36 37 38 39 40 41 42 43
    And I have no ssh keys
    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 http clone info

  Scenario: I visit an empty public project page as user with an ssh-key
    Given I sign in as a user
44
    And I have an ssh key
45 46 47 48
    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
49 50

  Scenario: I visit public area as user
Artem Sidorenko's avatar
Artem Sidorenko committed
51 52
    Given archived project "Archive"
    And I sign in as a user
53 54 55 56
    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"
Artem Sidorenko's avatar
Artem Sidorenko committed
57
    And I should not see project "Archive"
58 59 60 61 62

  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
63 64 65 66

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

69 70 71 72 73 74 75 76
  Scenario: I visit public project page as user with no ssh-keys
    Given I sign in as a user
    And I have no ssh keys
    When I visit project "Community" page
    Then I should see project "Community" home page
    And I should see an http link to the repository

  Scenario: I visit public project page as user with an ssh-key
77
    Given I sign in as a user
78
    And I have an ssh key
79 80
    When I visit project "Community" page
    Then I should see project "Community" home page
81 82 83 84 85 86
    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
87 88 89 90 91

  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
92

93 94 95 96 97
  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
98 99 100 101 102 103

  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
104 105 106 107 108

  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
109
    And project "Community" has "Bug fix" open merge request
110 111 112 113 114
    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
115
    And project "Community" has "Bug fix" open merge request
116 117 118 119 120 121
    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
122
    And project "Internal" has "Feature implemented" open merge request
123
    Then I should see list of merge requests for "Internal" project
124 125

  Scenario: Trending page
Artem Sidorenko's avatar
Artem Sidorenko committed
126 127 128
    Given archived project "Archive"
    And project "Archive" has comments
    And I sign in as a user
129 130 131 132 133
    And project "Community" has comments
    When I visit the explore trending projects
    Then I should see project "Community"
    And I should not see project "Internal"
    And I should not see project "Enterprise"
Artem Sidorenko's avatar
Artem Sidorenko committed
134
    And I should not see project "Archive"
135 136

  Scenario: Most starred page
Artem Sidorenko's avatar
Artem Sidorenko committed
137 138
    Given archived project "Archive"
    And I sign in as a user
139 140 141
    When I visit the explore starred projects
    Then I should see project "Community"
    And I should see project "Internal"
Artem Sidorenko's avatar
Artem Sidorenko committed
142
    And I should see project "Archive"