Module: Card::SpecHelper

Includes:
Rails::Dom::Testing::Assertions::SelectorAssertions
Defined in:
lib/card/spec_helper.rb

Instance Method Summary collapse

Instance Method Details

#assert_view_select(view_html, *args, &block) ⇒ Object



21
22
23
24
25
26
27
28
29
# File 'lib/card/spec_helper.rb', line 21

def assert_view_select(view_html, *args, &block)
  node = Nokogiri::HTML::Document.parse(view_html).root
  #node = HTML::Document.new(view_html).root
  if block_given?
    assert_select node, *args, &block
  else
    assert_select node, *args
  end
end

#debug_assert_view_select(view_html, *args, &block) ⇒ Object



31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/card/spec_helper.rb', line 31

def debug_assert_view_select(view_html, *args, &block)
  Rails.logger.rspec %(
    #{CodeRay.scan(Nokogiri::XML(view_html,&:noblanks).to_s, :html).div}
    <style>
      .CodeRay {
        background-color: #FFF;
        border: 1px solid #CCC;
        padding: 1em 0px 1em 1em;
      }
      .CodeRay .code pre { overflow: auto }
    </style>
  )
  assert_view_select view_html, *args, &block
end

#login_as(user) ⇒ Object

~~~~~~~~~ HELPER METHODS ~~~~~~~~~~~~~~~#



8
9
10
11
12
13
14
# File 'lib/card/spec_helper.rb', line 8

def  user
  Card::Auth.current_id = (uc=Card[user.to_s] and uc.id)
  if @request
    @request.session[:user] = Card::Auth.current_id
  end
  #warn "(ath)login_as #{user.inspect}, #{Card::Auth.current_id}, #{@request.session[:user]}"
end

#newcard(name, content = "") ⇒ Object



16
17
18
19
# File 'lib/card/spec_helper.rb', line 16

def newcard name, content=""
  #FIXME - misleading name; sounds like it doesn't save.
  Card.create! :name=>name, :content=>content
end

#render_card(view, card_args = {}, format_args = {}) ⇒ Object



61
62
63
# File 'lib/card/spec_helper.rb', line 61

def render_card view, card_args={}, format_args={}
  render_card_with_args view, card_args, format_args
end

#render_card_with_args(view, card_args = {}, format_args = {}, view_args = {}) ⇒ Object



65
66
67
68
69
70
71
72
73
74
# File 'lib/card/spec_helper.rb', line 65

def render_card_with_args view, card_args={}, format_args={}, view_args={}
  card = begin
    if card_args[:name]
      Card.fetch card_args[:name], :new=>card_args
    else
      Card.new card_args.merge( :name=> 'Tempo Rary' )
    end
  end
  card.format(format_args)._render(view, view_args)
end

#render_content(content, format_args = {}) ⇒ Object



51
52
53
# File 'lib/card/spec_helper.rb', line 51

def render_content content, format_args={}
  render_content_with_args( content, format_args )
end

#render_content_with_args(content, format_args = {}, view_args = {}) ⇒ Object



55
56
57
58
59
# File 'lib/card/spec_helper.rb', line 55

def render_content_with_args content, format_args={}, view_args={}
  @card ||= Card.new :name=>"Tempo Rary 2"
  @card.content = content
  @card.format(format_args)._render :core, view_args
end

#render_editor(type) ⇒ Object



46
47
48
49
# File 'lib/card/spec_helper.rb', line 46

def render_editor(type)
  card = Card.create(:name=>"my favority #{type} + #{rand(4)}", :type=>type)
  card.format.render(:edit)
end

#usersObject



76
77
78
# File 'lib/card/spec_helper.rb', line 76

def users
  SharedData::USERS.sort
end