summaryrefslogtreecommitdiff
path: root/features/explore/groups.feature
blob: b50a3e766c64449e020f46b6efbcb982aa3bc3f0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
@public
Feature: Explore Groups
  Background:
    Given group "TestGroup" has private project "Enterprise"

  Scenario: I should not see group with private projects as visitor
    When I visit group "TestGroup" page
    Then I should be redirected to sign in page

  Scenario: I should not see group with private projects group as user
    When I sign in as a user
    And I visit group "TestGroup" page
    Then page status code should be 404

  Scenario: I should not see group with private and internal projects as visitor
    Given group "TestGroup" has internal project "Internal"
    When I visit group "TestGroup" page
    Then I should be redirected to sign in page

  Scenario: I should see group with private and internal projects as user
    Given group "TestGroup" has internal project "Internal"
    When I sign in as a user
    And I visit group "TestGroup" page
    Then I should see project "Internal" items
    And I should not see project "Enterprise" items

  Scenario: I should see group issues for internal project as user
    Given group "TestGroup" has internal project "Internal"
    When I sign in as a user
    And I visit group "TestGroup" issues page
    And I change filter to Everyone's
    Then I should see project "Internal" items
    And I should not see project "Enterprise" items

  Scenario: I should see group merge requests for internal project as user
    Given group "TestGroup" has internal project "Internal"
    When I sign in as a user
    And I visit group "TestGroup" merge requests page
    And I change filter to Everyone's
    Then I should see project "Internal" items
    And I should not see project "Enterprise" items

  Scenario: I should see group's members as user
    Given group "TestGroup" has internal project "Internal"
    And "John Doe" is owner of group "TestGroup"
    When I sign in as a user
    And I visit group "TestGroup" members page
    Then I should see group member "John Doe"
    And I should not see member roles

  Scenario: I should see group with private, internal and public projects as visitor
    Given group "TestGroup" has internal project "Internal"
    Given group "TestGroup" has public project "Community"
    When I visit group "TestGroup" page
    Then I should see project "Community" items
    And I should not see project "Internal" items
    And I should not see project "Enterprise" items

  Scenario: I should see group issues for public project as visitor
    Given group "TestGroup" has internal project "Internal"
    Given group "TestGroup" has public project "Community"
    When I visit group "TestGroup" issues page
    Then I should see project "Community" items
    And I should not see project "Internal" items
    And I should not see project "Enterprise" items

  Scenario: I should see group merge requests for public project as visitor
    Given group "TestGroup" has internal project "Internal"
    Given group "TestGroup" has public project "Community"
    When I visit group "TestGroup" merge requests page
    Then I should see project "Community" items
    And I should not see project "Internal" items
    And I should not see project "Enterprise" items

  Scenario: I should see group's members as visitor
    Given group "TestGroup" has internal project "Internal"
    Given group "TestGroup" has public project "Community"
    And "John Doe" is owner of group "TestGroup"
    When I visit group "TestGroup" members page
    Then I should see group member "John Doe"
    And I should not see member roles

  Scenario: I should see group with private, internal and public projects as user
    Given group "TestGroup" has internal project "Internal"
    Given group "TestGroup" has public project "Community"
    When I sign in as a user
    And I visit group "TestGroup" page
    Then I should see project "Community" items
    And I should see project "Internal" items
    And I should not see project "Enterprise" items

  Scenario: I should see group issues for internal and public projects as user
    Given group "TestGroup" has internal project "Internal"
    Given group "TestGroup" has public project "Community"
    When I sign in as a user
    And I visit group "TestGroup" issues page
    And I change filter to Everyone's
    Then I should see project "Community" items
    And I should see project "Internal" items
    And I should not see project "Enterprise" items

  Scenario: I should see group merge requests for internal and public projects as user
    Given group "TestGroup" has internal project "Internal"
    Given group "TestGroup" has public project "Community"
    When I sign in as a user
    And I visit group "TestGroup" merge requests page
    And I change filter to Everyone's
    Then I should see project "Community" items
    And I should see project "Internal" items
    And I should not see project "Enterprise" items

  Scenario: I should see group's members as user
    Given group "TestGroup" has internal project "Internal"
    Given group "TestGroup" has public project "Community"
    And "John Doe" is owner of group "TestGroup"
    When I sign in as a user
    And I visit group "TestGroup" members page
    Then I should see group member "John Doe"
    And I should not see member roles

  Scenario: I should see group with public project in public groups area
    Given group "TestGroup" has public project "Community"
    When I visit the public groups area
    Then I should see group "TestGroup"

  Scenario: I should not see group with internal project in public groups area
    Given group "TestGroup" has internal project "Internal"
    When I visit the public groups area
    Then I should not see group "TestGroup"

  Scenario: I should not see group with private project in public groups area
    When I visit the public groups area
    Then I should not see group "TestGroup"

  Scenario: I should see group with public project in public groups area as user
    Given group "TestGroup" has public project "Community"
    When I sign in as a user
    And I visit the public groups area
    Then I should see group "TestGroup"

  Scenario: I should see group with internal project in public groups area as user
    Given group "TestGroup" has internal project "Internal"
    When I sign in as a user
    And I visit the public groups area
    Then I should see group "TestGroup"

  Scenario: I should not see group with private project in public groups area as user
    When I sign in as a user
    And I visit the public groups area
    Then I should not see group "TestGroup"