summaryrefslogtreecommitdiff
path: root/features/project/source/markdown_render.feature
blob: fd583618dcfba7dfef55ec74ee33dbb5924a8cad (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
Feature: Project Source Markdown Render
  Background:
    Given I sign in as a user
    And I own project "Delta"
    And I visit markdown branch

  # Tree README

  @javascript
  Scenario: Tree view should have correct links in README
    Given I go directory which contains README file
    And I click on a relative link in README
    Then I should see the correct markdown

  @javascript
  Scenario: I browse files from markdown branch
    Then I should see files from repository in markdown
    And I should see rendered README which contains correct links
    And I click on Gitlab API in README
    Then I should see correct document rendered

  Scenario: I view README in markdown branch
    Then I should see files from repository in markdown
    And I should see rendered README which contains correct links
    And I click on Rake tasks in README
    Then I should see correct directory rendered

  Scenario: I view README in markdown branch to see reference links to directory
    Then I should see files from repository in markdown
    And I should see rendered README which contains correct links
    And I click on GitLab API doc directory in README
    Then I should see correct doc/api directory rendered

  @javascript
  Scenario: I view README in markdown branch to see reference links to file
    Then I should see files from repository in markdown
    And I should see rendered README which contains correct links
    And I click on Maintenance in README
    Then I should see correct maintenance file rendered

  @javascript
  Scenario: README headers should have header links
    Then I should see rendered README which contains correct links
    And Header "Application details" should have correct id and link

  # Blob

  @javascript
  Scenario: I navigate to doc directory to view documentation in markdown
    And I navigate to the doc/api/README
    And I see correct file rendered
    And I click on users in doc/api/README
    Then I should see the correct document file

  @javascript
  Scenario: I navigate to doc directory to view user doc in markdown
    And I navigate to the doc/api/README
    And I see correct file rendered
    And I click on raketasks in doc/api/README
    Then I should see correct directory rendered

  @javascript
  Scenario: I navigate to doc directory to view user doc in markdown
    And I navigate to the doc/api/README
    And Header "GitLab API" should have correct id and link

  # Markdown branch

  @javascript
  Scenario: I browse files from markdown branch
    When I visit markdown branch
    Then I should see files from repository in markdown branch
    And I should see rendered README which contains correct links
    And I click on Gitlab API in README
    Then I should see correct document rendered for markdown branch

  Scenario: I browse directory from markdown branch
    When I visit markdown branch
    Then I should see files from repository in markdown branch
    And I should see rendered README which contains correct links
    And I click on Rake tasks in README
    Then I should see correct directory rendered for markdown branch

  @javascript
  Scenario: I navigate to doc directory to view documentation in markdown branch
    When I visit markdown branch
    And I navigate to the doc/api/README
    And I see correct file rendered in markdown branch
    And I click on users in doc/api/README
    Then I should see the users document file in markdown branch

  @javascript
  Scenario: I navigate to doc directory to view user doc in markdown branch
    When I visit markdown branch
    And I navigate to the doc/api/README
    And I see correct file rendered in markdown branch
    And I click on raketasks in doc/api/README
    Then I should see correct directory rendered for markdown branch

  @javascript
  Scenario: Tree markdown links view empty urls should have correct urls
    When I visit markdown branch
    Then The link with text "empty" should have url "tree/markdown"
    When I visit markdown branch "README.md" blob
    Then The link with text "empty" should have url "blob/markdown/README.md"
    When I visit markdown branch "d" tree
    Then The link with text "empty" should have url "tree/markdown/d"
    When I visit markdown branch "d/README.md" blob
    Then The link with text "empty" should have url "blob/markdown/d/README.md"

  # "ID" means "#id" on the tests below, because we are unable to escape the hash sign.
  # which Spinach interprets as the start of a comment.
  @javascript
  Scenario: All markdown links with ids should have correct urls
    When I visit markdown branch
    Then The link with text "ID" should have url "tree/markdownID"
    Then The link with text "/ID" should have url "tree/markdownID"
    Then The link with text "README.mdID" should have url "blob/markdown/README.mdID"
    Then The link with text "d/README.mdID" should have url "blob/markdown/d/README.mdID"
    When I visit markdown branch "README.md" blob
    Then The link with text "ID" should have url "blob/markdown/README.mdID"
    Then The link with text "/ID" should have url "blob/markdown/README.mdID"
    Then The link with text "README.mdID" should have url "blob/markdown/README.mdID"
    Then The link with text "d/README.mdID" should have url "blob/markdown/d/README.mdID"

  # Wiki

  Scenario: I create a wiki page with different links
    Given I go to wiki page
    And I add various links to the wiki page
    Then Wiki page should have added links
    And I click on test link
    Then I see new wiki page named test
    When I go back to wiki page home
    And I click on GitLab API doc link
    Then I see Gitlab API document
    When I go back to wiki page home
    And I click on Rake tasks link
    Then I see Rake tasks directory

  Scenario: Wiki headers should have should have ids generated for them.
    Given I go to wiki page
    And I add a header to the wiki page
    Then Wiki header should have correct id and link