spec/reference_spec.rb in prawn-1.0.0.rc2 vs spec/reference_spec.rb in prawn-1.0.0

- old
+ new

@@ -1,94 +1,14 @@ # encoding: utf-8 require File.join(File.expand_path(File.dirname(__FILE__)), "spec_helper") describe "A Reference object" do - it "should produce a PDF reference on #to_s call" do - ref = Prawn::Core::Reference(1,true) - ref.to_s.should == "1 0 R" - end - - it "should allow changing generation number" do - ref = Prawn::Core::Reference(1,true) - ref.gen = 1 - ref.to_s.should == "1 1 R" - end - - it "should generate a valid PDF object for the referenced data" do - ref = Prawn::Core::Reference(2,[1,"foo"]) - ref.object.should == "2 0 obj\n#{Prawn::Core::PdfObject([1,"foo"])}\nendobj\n" - end - - it "should automatically open a stream when #<< is used" do - ref = Prawn::Core::Reference(1, :Length => 41) - ref << "BT\n/F1 12 Tf\n72 712 Td\n( A stream ) Tj\nET" - ref.object.should == "1 0 obj\n<< /Length 41\n>>\nstream"+ - "\nBT\n/F1 12 Tf\n72 712 Td\n( A stream ) Tj\nET" + - "\nendstream\nendobj\n" - end - - it "should compress a stream upon request" do - ref = Prawn::Core::Reference(2,{}) - ref << "Hi There " * 20 - - cref = Prawn::Core::Reference(2,{}) - cref << "Hi There " * 20 - cref.compress_stream - - cref.stream.size.should be < ref.stream.size, - "compressed stream expected to be smaller than source but wasn't" - cref.data[:Filter].should == :FlateDecode - end - - it "should copy the data and stream from another ref on #replace" do - from = Prawn::Core::Reference(3, {:foo => 'bar'}) - from << "has a stream too" - - to = Prawn::Core::Reference(4, {:foo => 'baz'}) - to.replace from - - # should preserve identifier but copy data and stream - to.identifier.should == 4 - to.data.should == from.data - to.stream.should == from.stream - end - - it "should copy a compressed stream from a compressed ref on #replace" do - from = Prawn::Core::Reference(5, {:foo => 'bar'}) - from << "has a stream too " * 20 - from.compress_stream - - to = Prawn::Core::Reference(6, {:foo => 'baz'}) - to.replace from - - to.identifier.should == 6 - to.data.should == from.data - to.stream.should == from.stream - to.compressed?.should == true - end - - it "should have Length if stream present" do - ref = Prawn::Core::Reference(7, {}) - ref << "Hello" - - ref.data[:Length].should == 5 - end - - it "should update Length when stream is updated" do - ref = Prawn::Core::Reference(7, {}) - ref << "Hello" - ref.data[:Length].should == 5 - - ref << " world" - ref.data[:Length].should == 11 - end - describe "generated via Prawn::Document" do it "should return a proper reference on ref!" do pdf = Prawn::Document.new - pdf.ref!({}).is_a?(Prawn::Core::Reference).should == true + pdf.ref!({}).is_a?(PDF::Core::Reference).should == true end it "should return an identifier on ref" do pdf = Prawn::Document.new r = pdf.ref({}) @@ -97,9 +17,9 @@ it "should have :Length of stream if it has one when compression disabled" do pdf = Prawn::Document.new :compress => false ref = pdf.ref!({}) ref << 'Hello' - ref.data[:Length].should == 5 + ref.stream.data[:Length].should == 5 end end end