Sha256: ee5d7a1bf30ed3aa4ff4d3bc6f65e68e55f648071df64e65a01f47a8c7d2e91d

Contents?: true

Size: 1.58 KB

Versions: 77

Compression:

Stored size: 1.58 KB

Contents

require File.dirname(__FILE__) + '/../spec_helper'

describe Feedzirra::FeedUtilities do
  before(:each) do
    @klass = Class.new do
      include Feedzirra::FeedEntryUtilities
    end
  end
  
  describe "handling dates" do
    it "should parse an ISO 8601 formatted datetime into Time" do
      time = @klass.new.parse_datetime("2008-02-20T8:05:00-010:00")
      time.class.should == Time
      time.to_s.should == "Wed Feb 20 18:05:00 UTC 2008"
    end
  end
  
  describe "sanitizing" do
    before(:each) do
      @feed = Feedzirra::Feed.parse(sample_atom_feed)
      @entry = @feed.entries.first
    end
    
    it "should provide a sanitized title" do
      new_title = "<script>" + @entry.title
      @entry.title = new_title
      @entry.title.sanitize.should == Dryopteris.sanitize(new_title)
    end
    
    it "should sanitize content in place" do
      new_content = "<script>" + @entry.content
      @entry.content = new_content.dup
      @entry.content.sanitize!.should == Dryopteris.sanitize(new_content)
      @entry.content.should == Dryopteris.sanitize(new_content)
    end
    
    it "should sanitize things in place" do
      @entry.title   += "<script>"
      @entry.author  += "<script>"
      @entry.content += "<script>"

      cleaned_title   = Dryopteris.sanitize(@entry.title)
      cleaned_author  = Dryopteris.sanitize(@entry.author)
      cleaned_content = Dryopteris.sanitize(@entry.content)
      
      @entry.sanitize!
      @entry.title.should   == cleaned_title
      @entry.author.should  == cleaned_author
      @entry.content.should == cleaned_content
    end
  end
end

Version data entries

77 entries across 77 versions & 24 rubygems

Version Path
Spectives-feedzirra-0.0.28 spec/feedzirra/feed_entry_utilities_spec.rb
Spectives-feedzirra-0.0.29 spec/feedzirra/feed_entry_utilities_spec.rb
Spectives-feedzirra-0.0.31 spec/feedzirra/feed_entry_utilities_spec.rb
Spectives-logophobia-feedzirra-0.0.31 spec/feedzirra/feed_entry_utilities_spec.rb
UnderpantsGnome-feedzirra-0.0.14 spec/feedzirra/feed_entry_utilities_spec.rb
UnderpantsGnome-feedzirra-0.0.15 spec/feedzirra/feed_entry_utilities_spec.rb
UnderpantsGnome-feedzirra-0.0.16 spec/feedzirra/feed_entry_utilities_spec.rb
astro-feedzirra-0.0.12 spec/feedzirra/feed_entry_utilities_spec.rb
astro-feedzirra-0.0.8.20090419 spec/feedzirra/feed_entry_utilities_spec.rb
dakrone-feedzirra-0.0.16.1 spec/feedzirra/feed_entry_utilities_spec.rb
dinsley-feedzirra-0.0.10 spec/feedzirra/feed_entry_utilities_spec.rb
dinsley-feedzirra-0.0.11 spec/feedzirra/feed_entry_utilities_spec.rb
dinsley-feedzirra-0.0.8 spec/feedzirra/feed_entry_utilities_spec.rb
dinsley-feedzirra-0.0.9 spec/feedzirra/feed_entry_utilities_spec.rb
eric-feedzirra-0.0.8 spec/feedzirra/feed_entry_utilities_spec.rb
jeffrafter-feedzirra-0.0.4 spec/feedzirra/feed_entry_utilities_spec.rb
julien51-feedzirra-0.0.13 spec/feedzirra/feed_entry_utilities_spec.rb
kete-feedzirra-0.0.16.1 spec/feedzirra/feed_entry_utilities_spec.rb
kete-feedzirra-0.0.18.1 spec/feedzirra/feed_entry_utilities_spec.rb
kete-feedzirra-0.0.8.1 spec/feedzirra/feed_entry_utilities_spec.rb