summaryrefslogtreecommitdiff
path: root/spec/requests/atom/issues_spec.rb
blob: 8d0b6c4f3fd4d9a90447a144cacb21186cae90ea (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
require 'spec_helper'

describe "Issues" do
  let(:project) { Factory :project }

  before do
    login_as :user
    project.add_access(@user, :read, :write)
  end

  describe "GET /issues" do
    before do
      @issue = Factory :issue,
        :author => @user,
        :assignee => @user,
        :project => project

      visit project_issues_path(project)
    end

    it "should render atom feed" do
      visit project_issues_path(project, :atom)

      page.response_headers['Content-Type'].should have_content("application/atom+xml")
      page.body.should have_selector("title", :text => "#{project.name} issues")
      page.body.should have_selector("author email", :text => @issue.author_email)
      page.body.should have_selector("entry summary", :text => @issue.title)
    end

    it "should render atom feed via private token" do
      logout
      visit project_issues_path(project, :atom, :private_token => @user.private_token)

      page.response_headers['Content-Type'].should have_content("application/atom+xml")
      page.body.should have_selector("title", :text => "#{project.name} issues")
      page.body.should have_selector("author email", :text => @issue.author_email)
      page.body.should have_selector("entry summary", :text => @issue.title)
    end
  end
end