pickle 0.3.1 → 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/History.txt +9 -0
 - data/README.rdoc +33 -5
 - data/VERSION +1 -1
 - data/lib/pickle/adapters/active_record.rb +7 -1
 - data/lib/pickle/email.rb +5 -7
 - data/pickle.gemspec +2 -2
 - data/spec/pickle/adapter_spec.rb +44 -21
 - data/spec/pickle/email_spec.rb +3 -3
 - metadata +4 -4
 
    
        data/History.txt
    CHANGED
    
    | 
         @@ -1,3 +1,12 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            == 0.3.2
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            * 3 minor improvements
         
     | 
| 
      
 4 
     | 
    
         
            +
              * Document how to use machinist named blueprints [Christopher Darroch]
         
     | 
| 
      
 5 
     | 
    
         
            +
              * Email links now visit the url, rather than just the path, this allows for features that
         
     | 
| 
      
 6 
     | 
    
         
            +
                make use of the domain to function correctly
         
     | 
| 
      
 7 
     | 
    
         
            +
              * Deprecation warnings for Rails 3 removed [Brian Rose & Kevin Olsen]
         
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
      
 9 
     | 
    
         
            +
             
     | 
| 
       1 
10 
     | 
    
         
             
            == 0.3.1
         
     | 
| 
       2 
11 
     | 
    
         | 
| 
       3 
12 
     | 
    
         
             
            * 1 major improvement
         
     | 
    
        data/README.rdoc
    CHANGED
    
    | 
         @@ -93,10 +93,7 @@ you've written, you can just do stuff like 
     | 
|
| 
       93 
93 
     | 
    
         
             
              Then a user should exist with name: "Fred"
         
     | 
| 
       94 
94 
     | 
    
         
             
              And that user should be activated # this uses rspec predicate matchers
         
     | 
| 
       95 
95 
     | 
    
         | 
| 
       96 
     | 
    
         
            -
            ====  
     | 
| 
       97 
     | 
    
         
            -
             
     | 
| 
       98 
     | 
    
         
            -
            (The latest version of pickle supports {multiple blueprints}[http://github.com/notahat/machinist/commit/d6492e6927a8aa1819926e48b22377171fd20496], for
         
     | 
| 
       99 
     | 
    
         
            -
            earlier versions of machinist use pickle <= 0.1.10)
         
     | 
| 
      
 96 
     | 
    
         
            +
            ==== Machinist: require your blueprints and reset Shams
         
     | 
| 
       100 
97 
     | 
    
         | 
| 
       101 
98 
     | 
    
         
             
            In your <tt>features/support/env.rb</tt> add the following lines at the bottom
         
     | 
| 
       102 
99 
     | 
    
         | 
| 
         @@ -114,7 +111,7 @@ If that doesn't solve loading issues then require your factories.rb file directl 
     | 
|
| 
       114 
111 
     | 
    
         | 
| 
       115 
112 
     | 
    
         
             
            === Using with an ORM other than ActiveRecord or DataMapper
         
     | 
| 
       116 
113 
     | 
    
         | 
| 
       117 
     | 
    
         
            -
            Pickle can be used with any  
     | 
| 
      
 114 
     | 
    
         
            +
            Pickle can be used with any modelling library provided there is an adapter written for it.
         
     | 
| 
       118 
115 
     | 
    
         | 
| 
       119 
116 
     | 
    
         
             
            Adapters are very simple and exist a module or class with the name "PickleAdapter" available to the class.  For example
         
     | 
| 
       120 
117 
     | 
    
         | 
| 
         @@ -187,6 +184,35 @@ You can refer to other models in the fields 
     | 
|
| 
       187 
184 
     | 
    
         
             
                | Fred  | false     |
         
     | 
| 
       188 
185 
     | 
    
         
             
                | Ethel | true      |
         
     | 
| 
       189 
186 
     | 
    
         | 
| 
      
 187 
     | 
    
         
            +
            ===== Named machinist blueprints
         
     | 
| 
      
 188 
     | 
    
         
            +
             
     | 
| 
      
 189 
     | 
    
         
            +
            "Given <b> a <i>named</i> model</b> exists with <b>fields</b>"
         
     | 
| 
      
 190 
     | 
    
         
            +
             
     | 
| 
      
 191 
     | 
    
         
            +
            The latest version of pickle supports {named machinist blueprints}[http://github.com/notahat/machinist/commit/d6492e6927a8aa1819926e48b22377171fd20496].
         
     | 
| 
      
 192 
     | 
    
         
            +
             
     | 
| 
      
 193 
     | 
    
         
            +
            If you had the following blueprints:
         
     | 
| 
      
 194 
     | 
    
         
            +
             
     | 
| 
      
 195 
     | 
    
         
            +
              User.blueprint do
         
     | 
| 
      
 196 
     | 
    
         
            +
                name
         
     | 
| 
      
 197 
     | 
    
         
            +
                email
         
     | 
| 
      
 198 
     | 
    
         
            +
              end
         
     | 
| 
      
 199 
     | 
    
         
            +
              
         
     | 
| 
      
 200 
     | 
    
         
            +
              User.blueprint(:super_admin) do
         
     | 
| 
      
 201 
     | 
    
         
            +
                role { "admin" }
         
     | 
| 
      
 202 
     | 
    
         
            +
              end
         
     | 
| 
      
 203 
     | 
    
         
            +
              
         
     | 
| 
      
 204 
     | 
    
         
            +
              User.blueprint(:activated) do
         
     | 
| 
      
 205 
     | 
    
         
            +
                activated { true }
         
     | 
| 
      
 206 
     | 
    
         
            +
              end
         
     | 
| 
      
 207 
     | 
    
         
            +
             
     | 
| 
      
 208 
     | 
    
         
            +
            You could create a user with pickle by simply adding the name of the blueprint before the model:
         
     | 
| 
      
 209 
     | 
    
         
            +
             
     | 
| 
      
 210 
     | 
    
         
            +
              Given a super admin user exists
         
     | 
| 
      
 211 
     | 
    
         
            +
              And an activated user exists with name: "Fred"
         
     | 
| 
      
 212 
     | 
    
         
            +
             
     | 
| 
      
 213 
     | 
    
         
            +
            This is much nicer than having to set up common configurations in your steps all the time, and far more readable to boot.
         
     | 
| 
      
 214 
     | 
    
         
            +
             
     | 
| 
      
 215 
     | 
    
         
            +
             
     | 
| 
       190 
216 
     | 
    
         
             
            ==== Then steps
         
     | 
| 
       191 
217 
     | 
    
         | 
| 
       192 
218 
     | 
    
         
             
            ===== Asserting existence of models
         
     | 
| 
         @@ -302,6 +328,8 @@ To run the features (rails 2.3 only ATM): 
     | 
|
| 
       302 
328 
     | 
    
         | 
| 
       303 
329 
     | 
    
         
             
            The following people have made Pickle better:
         
     | 
| 
       304 
330 
     | 
    
         | 
| 
      
 331 
     | 
    
         
            +
            * Brian Rose & Kevin Olsen
         
     | 
| 
      
 332 
     | 
    
         
            +
            * {Christopher Darroch}[http://github.com/chrisdarroch]
         
     | 
| 
       305 
333 
     | 
    
         
             
            * {Szymon Nowak}[http://github.com/szimek]
         
     | 
| 
       306 
334 
     | 
    
         
             
            * {H.J. Blok}[http://github.com/hjblok]
         
     | 
| 
       307 
335 
     | 
    
         
             
            * {Daniel Neighman}[http://github.com/hassox]
         
     | 
    
        data/VERSION
    CHANGED
    
    | 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            0.3. 
     | 
| 
      
 1 
     | 
    
         
            +
            0.3.2
         
     | 
| 
         @@ -18,7 +18,13 @@ class ActiveRecord::Base 
     | 
|
| 
       18 
18 
     | 
    
         | 
| 
       19 
19 
     | 
    
         
             
                # Gets a list of the available models for this adapter
         
     | 
| 
       20 
20 
     | 
    
         
             
                def self.model_classes
         
     | 
| 
       21 
     | 
    
         
            -
                   
     | 
| 
      
 21 
     | 
    
         
            +
                  begin
         
     | 
| 
      
 22 
     | 
    
         
            +
                    klasses = ::ActiveRecord::Base.__send__(:descendants) # Rails 3
         
     | 
| 
      
 23 
     | 
    
         
            +
                  rescue
         
     | 
| 
      
 24 
     | 
    
         
            +
                    klasses = ::ActiveRecord::Base.__send__(:subclasses) # Rails 2
         
     | 
| 
      
 25 
     | 
    
         
            +
                  end
         
     | 
| 
      
 26 
     | 
    
         
            +
             
     | 
| 
      
 27 
     | 
    
         
            +
                  klasses.select do |klass|
         
     | 
| 
       22 
28 
     | 
    
         
             
                    !klass.abstract_class? && klass.table_exists? && !except_classes.include?(klass.name)
         
     | 
| 
       23 
29 
     | 
    
         
             
                  end
         
     | 
| 
       24 
30 
     | 
    
         
             
                end
         
     | 
    
        data/lib/pickle/email.rb
    CHANGED
    
    | 
         @@ -25,8 +25,7 @@ module Pickle 
     | 
|
| 
       25 
25 
     | 
    
         | 
| 
       26 
26 
     | 
    
         
             
                def click_first_link_in_email(email)
         
     | 
| 
       27 
27 
     | 
    
         
             
                  link = links_in_email(email).first
         
     | 
| 
       28 
     | 
    
         
            -
                   
     | 
| 
       29 
     | 
    
         
            -
                  visit request_uri
         
     | 
| 
      
 28 
     | 
    
         
            +
                  visit link
         
     | 
| 
       30 
29 
     | 
    
         
             
                end
         
     | 
| 
       31 
30 
     | 
    
         | 
| 
       32 
31 
     | 
    
         
             
              protected
         
     | 
| 
         @@ -60,15 +59,14 @@ module Pickle 
     | 
|
| 
       60 
59 
     | 
    
         
             
                # e.g. confirm in http://confirm
         
     | 
| 
       61 
60 
     | 
    
         
             
                def parse_email_for_explicit_link(email, regex)
         
     | 
| 
       62 
61 
     | 
    
         
             
                  regex = /#{Regexp.escape(regex)}/ unless regex.is_a?(Regexp)
         
     | 
| 
       63 
     | 
    
         
            -
                   
     | 
| 
       64 
     | 
    
         
            -
                  URI::parse(url).request_uri if url
         
     | 
| 
      
 62 
     | 
    
         
            +
                  links_in_email(email).detect { |link| link =~ regex }
         
     | 
| 
       65 
63 
     | 
    
         
             
                end
         
     | 
| 
       66 
64 
     | 
    
         | 
| 
       67 
65 
     | 
    
         
             
                # e.g. Click here in  <a href="http://confirm">Click here</a>
         
     | 
| 
       68 
66 
     | 
    
         
             
                def parse_email_for_anchor_text_link(email, link_text)
         
     | 
| 
       69 
     | 
    
         
            -
                  email.body 
     | 
| 
       70 
     | 
    
         
            -
             
     | 
| 
       71 
     | 
    
         
            -
                   
     | 
| 
      
 67 
     | 
    
         
            +
                  if match_data = email.body.match(%r{<a[^>]*href=['"]?([^'"]*)['"]?[^>]*?>[^<]*?#{link_text}[^<]*?</a>})
         
     | 
| 
      
 68 
     | 
    
         
            +
                    match_data[1]
         
     | 
| 
      
 69 
     | 
    
         
            +
                  end
         
     | 
| 
       72 
70 
     | 
    
         
             
                end
         
     | 
| 
       73 
71 
     | 
    
         | 
| 
       74 
72 
     | 
    
         
             
                def links_in_email(email, protos=['http', 'https'])
         
     | 
    
        data/pickle.gemspec
    CHANGED
    
    | 
         @@ -5,11 +5,11 @@ 
     | 
|
| 
       5 
5 
     | 
    
         | 
| 
       6 
6 
     | 
    
         
             
            Gem::Specification.new do |s|
         
     | 
| 
       7 
7 
     | 
    
         
             
              s.name = %q{pickle}
         
     | 
| 
       8 
     | 
    
         
            -
              s.version = "0.3. 
     | 
| 
      
 8 
     | 
    
         
            +
              s.version = "0.3.2"
         
     | 
| 
       9 
9 
     | 
    
         | 
| 
       10 
10 
     | 
    
         
             
              s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
         
     | 
| 
       11 
11 
     | 
    
         
             
              s.authors = ["Ian White"]
         
     | 
| 
       12 
     | 
    
         
            -
              s.date = %q{2010- 
     | 
| 
      
 12 
     | 
    
         
            +
              s.date = %q{2010-08-05}
         
     | 
| 
       13 
13 
     | 
    
         
             
              s.description = %q{Easy model creation and reference in your cucumber features}
         
     | 
| 
       14 
14 
     | 
    
         
             
              s.email = %q{ian.w.white@gmail.com}
         
     | 
| 
       15 
15 
     | 
    
         
             
              s.extra_rdoc_files = [
         
     | 
    
        data/spec/pickle/adapter_spec.rb
    CHANGED
    
    | 
         @@ -7,11 +7,11 @@ require 'pickle/adapters/active_record' 
     | 
|
| 
       7 
7 
     | 
    
         | 
| 
       8 
8 
     | 
    
         
             
            describe Pickle::Adapter do
         
     | 
| 
       9 
9 
     | 
    
         
             
              it ".factories should raise NotImplementedError" do
         
     | 
| 
       10 
     | 
    
         
            -
                lambda{ Pickle::Adapter.factories }.should raise_error(NotImplementedError)
         
     | 
| 
      
 10 
     | 
    
         
            +
                lambda { Pickle::Adapter.factories }.should raise_error(NotImplementedError)
         
     | 
| 
       11 
11 
     | 
    
         
             
              end
         
     | 
| 
       12 
12 
     | 
    
         | 
| 
       13 
13 
     | 
    
         
             
              it "#create should raise NotImplementedError" do
         
     | 
| 
       14 
     | 
    
         
            -
                lambda{ Pickle::Adapter.new.create }.should raise_error(NotImplementedError)
         
     | 
| 
      
 14 
     | 
    
         
            +
                lambda { Pickle::Adapter.new.create }.should raise_error(NotImplementedError)
         
     | 
| 
       15 
15 
     | 
    
         
             
              end
         
     | 
| 
       16 
16 
     | 
    
         | 
| 
       17 
17 
     | 
    
         
             
              describe ".model_classes" do
         
     | 
| 
         @@ -26,7 +26,7 @@ describe Pickle::Adapter do 
     | 
|
| 
       26 
26 
     | 
    
         
             
                  klass4 = Class.new(ActiveRecord::Base)
         
     | 
| 
       27 
27 
     | 
    
         
             
                  klass5 = Class.new(ActiveRecord::Base)
         
     | 
| 
       28 
28 
     | 
    
         
             
                  klass6 = Class.new(ActiveRecord::Base)
         
     | 
| 
       29 
     | 
    
         
            -
                  [klass1, klass2,klass3,klass4, klass5, klass6].each{|k| k.stub!(:table_exists?).and_return(true)}
         
     | 
| 
      
 29 
     | 
    
         
            +
                  [klass1, klass2, klass3, klass4, klass5, klass6].each { |k| k.stub!(:table_exists?).and_return(true) }
         
     | 
| 
       30 
30 
     | 
    
         | 
| 
       31 
31 
     | 
    
         
             
                  klass2.stub!(:name).and_return("CGI::Session::ActiveRecordStore::Session")
         
     | 
| 
       32 
32 
     | 
    
         
             
                  klass3.stub!(:name).and_return("ActiveRecord::SessionStore::Session")
         
     | 
| 
         @@ -39,37 +39,60 @@ describe Pickle::Adapter do 
     | 
|
| 
       39 
39 
     | 
    
         | 
| 
       40 
40 
     | 
    
         
             
              describe "adapters: " do
         
     | 
| 
       41 
41 
     | 
    
         
             
                before do
         
     | 
| 
       42 
     | 
    
         
            -
                  @klass1 = returning(Class.new(ActiveRecord::Base)) {|k| k.stub!(:name).and_return('One')}
         
     | 
| 
       43 
     | 
    
         
            -
                  @klass2 = returning(Class.new(ActiveRecord::Base)) {|k| k.stub!(:name).and_return('One::Two')}
         
     | 
| 
       44 
     | 
    
         
            -
                  @klass3 = returning(Class.new(ActiveRecord::Base)) {|k| k.stub!(:name).and_return('Three')}
         
     | 
| 
      
 42 
     | 
    
         
            +
                  @klass1 = returning(Class.new(ActiveRecord::Base)) { |k| k.stub!(:name).and_return('One') }
         
     | 
| 
      
 43 
     | 
    
         
            +
                  @klass2 = returning(Class.new(ActiveRecord::Base)) { |k| k.stub!(:name).and_return('One::Two') }
         
     | 
| 
      
 44 
     | 
    
         
            +
                  @klass3 = returning(Class.new(ActiveRecord::Base)) { |k| k.stub!(:name).and_return('Three') }
         
     | 
| 
       45 
45 
     | 
    
         
             
                end
         
     | 
| 
       46 
46 
     | 
    
         | 
| 
       47 
47 
     | 
    
         
             
                describe 'ActiveRecord' do
         
     | 
| 
       48 
     | 
    
         
            -
                  before do
         
     | 
| 
       49 
     | 
    
         
            -
                    ActiveRecord::Base::PickleAdapter.stub!(:model_classes).and_return([@klass1, @klass2, @klass3])
         
     | 
| 
       50 
     | 
    
         
            -
                  end
         
     | 
| 
       51 
48 
     | 
    
         | 
| 
       52 
     | 
    
         
            -
             
     | 
| 
       53 
     | 
    
         
            -
             
     | 
| 
       54 
     | 
    
         
            -
             
     | 
| 
       55 
     | 
    
         
            -
                     
     | 
| 
       56 
     | 
    
         
            -
             
     | 
| 
      
 49 
     | 
    
         
            +
            #DEPRECATION WARNING: subclasses is deprecated and will be removed from Rails 3.0 (use descendants instead). (called from __send__ at /Users/pivotal/workspace/factorylabs/protosite/vendor/cache/ruby/1.8/gems/pickle-0.3.1/lib/pickle/adapters/active_record.rb:21)
         
     | 
| 
      
 50 
     | 
    
         
            +
             
     | 
| 
      
 51 
     | 
    
         
            +
                  describe ".model_classes" do
         
     | 
| 
      
 52 
     | 
    
         
            +
                    it "calls .descendants" do
         
     | 
| 
      
 53 
     | 
    
         
            +
                      ::ActiveRecord::Base.should_receive(:descendants).and_return([])
         
     | 
| 
      
 54 
     | 
    
         
            +
                      ::ActiveRecord::Base.should_not_receive(:subclasses).and_return([])
         
     | 
| 
      
 55 
     | 
    
         
            +
             
     | 
| 
      
 56 
     | 
    
         
            +
                      ActiveRecord::Base::PickleAdapter.model_classes
         
     | 
| 
      
 57 
     | 
    
         
            +
                    end
         
     | 
| 
      
 58 
     | 
    
         
            +
             
     | 
| 
      
 59 
     | 
    
         
            +
                    it "calls .subclasses when .descendants doesn't respond" do
         
     | 
| 
      
 60 
     | 
    
         
            +
                      ::ActiveRecord::Base.should_receive(:subclasses).and_return([])
         
     | 
| 
      
 61 
     | 
    
         
            +
             
     | 
| 
      
 62 
     | 
    
         
            +
                      ActiveRecord::Base::PickleAdapter.model_classes
         
     | 
| 
      
 63 
     | 
    
         
            +
                    end
         
     | 
| 
      
 64 
     | 
    
         
            +
             
     | 
| 
       57 
65 
     | 
    
         
             
                  end
         
     | 
| 
       58 
66 
     | 
    
         | 
| 
       59 
     | 
    
         
            -
                  describe  
     | 
| 
      
 67 
     | 
    
         
            +
                  describe 'with class stubs' do
         
     | 
| 
       60 
68 
     | 
    
         
             
                    before do
         
     | 
| 
       61 
     | 
    
         
            -
                       
     | 
| 
      
 69 
     | 
    
         
            +
                      ActiveRecord::Base::PickleAdapter.stub!(:model_classes).and_return([@klass1, @klass2, @klass3])
         
     | 
| 
       62 
70 
     | 
    
         
             
                    end
         
     | 
| 
       63 
71 
     | 
    
         | 
| 
       64 
     | 
    
         
            -
                    it "should  
     | 
| 
       65 
     | 
    
         
            -
                      @ 
     | 
| 
      
 72 
     | 
    
         
            +
                    it ".factories should create one for each active record class" do
         
     | 
| 
      
 73 
     | 
    
         
            +
                      Pickle::Adapter::ActiveRecord.should_receive(:new).with(@klass1).once
         
     | 
| 
      
 74 
     | 
    
         
            +
                      Pickle::Adapter::ActiveRecord.should_receive(:new).with(@klass2).once
         
     | 
| 
      
 75 
     | 
    
         
            +
                      Pickle::Adapter::ActiveRecord.should_receive(:new).with(@klass3).once
         
     | 
| 
      
 76 
     | 
    
         
            +
                      Pickle::Adapter::ActiveRecord.factories
         
     | 
| 
       66 
77 
     | 
    
         
             
                    end
         
     | 
| 
       67 
78 
     | 
    
         | 
| 
       68 
     | 
    
         
            -
                     
     | 
| 
       69 
     | 
    
         
            -
                       
     | 
| 
       70 
     | 
    
         
            -
             
     | 
| 
      
 79 
     | 
    
         
            +
                    describe ".new(Class)" do
         
     | 
| 
      
 80 
     | 
    
         
            +
                      before do
         
     | 
| 
      
 81 
     | 
    
         
            +
                        @factory = Pickle::Adapter::ActiveRecord.new(@klass2)
         
     | 
| 
      
 82 
     | 
    
         
            +
                      end
         
     | 
| 
      
 83 
     | 
    
         
            +
             
     | 
| 
      
 84 
     | 
    
         
            +
                      it "should have underscored (s/_) name of Class as #name" do
         
     | 
| 
      
 85 
     | 
    
         
            +
                        @factory.name.should == 'one_two'
         
     | 
| 
      
 86 
     | 
    
         
            +
                      end
         
     | 
| 
      
 87 
     | 
    
         
            +
             
     | 
| 
      
 88 
     | 
    
         
            +
                      it "#create(attrs) should call Class.create!(attrs)" do
         
     | 
| 
      
 89 
     | 
    
         
            +
                        @klass2.should_receive(:create!).with({:key => "val"})
         
     | 
| 
      
 90 
     | 
    
         
            +
                        @factory.create(:key => "val")
         
     | 
| 
      
 91 
     | 
    
         
            +
                      end
         
     | 
| 
       71 
92 
     | 
    
         
             
                    end
         
     | 
| 
       72 
93 
     | 
    
         
             
                  end
         
     | 
| 
      
 94 
     | 
    
         
            +
             
     | 
| 
      
 95 
     | 
    
         
            +
             
     | 
| 
       73 
96 
     | 
    
         
             
                end
         
     | 
| 
       74 
97 
     | 
    
         | 
| 
       75 
98 
     | 
    
         
             
                describe 'FactoryGirl' do
         
     | 
    
        data/spec/pickle/email_spec.rb
    CHANGED
    
    | 
         @@ -143,17 +143,17 @@ describe Pickle::Email do 
     | 
|
| 
       143 
143 
     | 
    
         
             
                end
         
     | 
| 
       144 
144 
     | 
    
         | 
| 
       145 
145 
     | 
    
         
             
                it "should find a link for http://example.com/page" do
         
     | 
| 
       146 
     | 
    
         
            -
                  should_receive(:visit).with('/page')
         
     | 
| 
      
 146 
     | 
    
         
            +
                  should_receive(:visit).with('http://example.com/page')
         
     | 
| 
       147 
147 
     | 
    
         
             
                  visit_in_email(@email1, 'http://example.com/page')
         
     | 
| 
       148 
148 
     | 
    
         
             
                end
         
     | 
| 
       149 
149 
     | 
    
         | 
| 
       150 
150 
     | 
    
         
             
                it "should find a link for \"example page\"" do
         
     | 
| 
       151 
     | 
    
         
            -
                  should_receive(:visit).with('/page')
         
     | 
| 
      
 151 
     | 
    
         
            +
                  should_receive(:visit).with('http://example.com/page')
         
     | 
| 
       152 
152 
     | 
    
         
             
                  visit_in_email(@email1, 'example page')
         
     | 
| 
       153 
153 
     | 
    
         
             
                end
         
     | 
| 
       154 
154 
     | 
    
         | 
| 
       155 
155 
     | 
    
         
             
                it "should follow the first link in an email" do
         
     | 
| 
       156 
     | 
    
         
            -
                  should_receive(:visit).with('/page')
         
     | 
| 
      
 156 
     | 
    
         
            +
                  should_receive(:visit).with('http://example.com/page')
         
     | 
| 
       157 
157 
     | 
    
         
             
                  click_first_link_in_email(@email1)
         
     | 
| 
       158 
158 
     | 
    
         
             
                end
         
     | 
| 
       159 
159 
     | 
    
         
             
              end
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,13 +1,13 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification 
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: pickle
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version 
         
     | 
| 
       4 
     | 
    
         
            -
              hash:  
     | 
| 
      
 4 
     | 
    
         
            +
              hash: 23
         
     | 
| 
       5 
5 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       6 
6 
     | 
    
         
             
              segments: 
         
     | 
| 
       7 
7 
     | 
    
         
             
              - 0
         
     | 
| 
       8 
8 
     | 
    
         
             
              - 3
         
     | 
| 
       9 
     | 
    
         
            -
              -  
     | 
| 
       10 
     | 
    
         
            -
              version: 0.3. 
     | 
| 
      
 9 
     | 
    
         
            +
              - 2
         
     | 
| 
      
 10 
     | 
    
         
            +
              version: 0.3.2
         
     | 
| 
       11 
11 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       12 
12 
     | 
    
         
             
            authors: 
         
     | 
| 
       13 
13 
     | 
    
         
             
            - Ian White
         
     | 
| 
         @@ -15,7 +15,7 @@ autorequire: 
     | 
|
| 
       15 
15 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       16 
16 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       17 
17 
     | 
    
         | 
| 
       18 
     | 
    
         
            -
            date: 2010- 
     | 
| 
      
 18 
     | 
    
         
            +
            date: 2010-08-05 00:00:00 +01:00
         
     | 
| 
       19 
19 
     | 
    
         
             
            default_executable: 
         
     | 
| 
       20 
20 
     | 
    
         
             
            dependencies: []
         
     | 
| 
       21 
21 
     | 
    
         |