diff options
author | Johan Sørensen <johan@johansorensen.com> | 2008-02-09 17:35:23 +0100 |
---|---|---|
committer | Johan Sørensen <johan@johansorensen.com> | 2008-02-09 17:35:23 +0100 |
commit | df90d1878bb455a7dbb4309a00675068c9bdbf53 (patch) | |
tree | 188902fb536b687e837a683cfcfeb0a71e2c72df /vendor/diff-display | |
parent | c7d69d31f97de3386a1aab4c87f4b82d3527ce8b (diff) | |
download | gitorious-mainline-outdated-df90d1878bb455a7dbb4309a00675068c9bdbf53.zip gitorious-mainline-outdated-df90d1878bb455a7dbb4309a00675068c9bdbf53.tar.gz gitorious-mainline-outdated-df90d1878bb455a7dbb4309a00675068c9bdbf53.tar.bz2 |
updated Diff::Display lib
Diffstat (limited to 'vendor/diff-display')
-rw-r--r-- | vendor/diff-display/README.txt | 58 | ||||
-rw-r--r-- | vendor/diff-display/lib/diff/display/data_structure.rb | 4 | ||||
-rw-r--r-- | vendor/diff-display/lib/diff/display/unified/generator.rb | 14 | ||||
-rw-r--r-- | vendor/diff-display/spec/fixtures/multiple_rems_then_add.diff | 14 | ||||
-rw-r--r-- | vendor/diff-display/spec/generator_spec.rb | 10 | ||||
-rw-r--r-- | vendor/diff-display/spec/renderer/base_spec.rb | 16 |
6 files changed, 94 insertions, 22 deletions
diff --git a/vendor/diff-display/README.txt b/vendor/diff-display/README.txt index 17b43e3..d56f429 100644 --- a/vendor/diff-display/README.txt +++ b/vendor/diff-display/README.txt @@ -1,2 +1,58 @@ +Diff::Display +============= + +Diff::Display::Unified renders unified diffs into various forms. The output is +based on a callback object that's passed into the renderer + Rewrite of an (unreleased) library by Marcel Molina Jr., who wrote this it -probably back in 2004 or so.
\ No newline at end of file +probably back in 2004 or so. + +Usage +====== + +irb(main):001:0> require 'diff-display' +=> true +irb(main):002:0> diff = <<EOS +irb(main):003:0" diff --git a/History.txt b/History.txt +irb(main):004:0" index 0ed7358..622c384 100644 +irb(main):005:0" --- a/History.txt +irb(main):006:0" +++ b/History.txt +irb(main):007:0" @@ -1,4 +1,5 @@ +irb(main):008:0" == 0.0.1 2008-01-28 +irb(main):009:0" +irb(main):010:0" -* 1 major enhancement: +irb(main):011:0" - * Initial release +irb(main):012:0" +* 2 major enhancements: +irb(main):013:0" + * The Initial release +irb(main):014:0" + * stuff added +irb(main):015:0" EOS +... +irb(main):016:0> diff_display = Diff::Display::Unified.new(diff) +=> #<Diff::Display::Unified:0x331c9c @data=... +# Be boring and render it back out as a diff +irb(main):017:0> puts diff_display.render(Diff::Renderer::Diff.new) +diff --git a/History.txt b/History.txt +index 0ed7358..622c384 100644 +--- a/History.txt ++++ b/History.txt +@@ -1,4 +1,5 @@ + == 0.0.1 2008-01-28 + +-* 1 major enhancement: +- * Initial release ++* 2 major enhancements: ++ * The Initial release ++ * stuff added + +See Diff::Renderer::Base for what methods your callback needs to implement + +Git Repository +=============== + +http://gitorious.org/projects/diff-display/ + + +License +====== + +Please see License.txt diff --git a/vendor/diff-display/lib/diff/display/data_structure.rb b/vendor/diff-display/lib/diff/display/data_structure.rb index 3ef3c90..b8e6a47 100644 --- a/vendor/diff-display/lib/diff/display/data_structure.rb +++ b/vendor/diff-display/lib/diff/display/data_structure.rb @@ -56,6 +56,10 @@ module Diff @number = line_number end attr_reader :number + + def inspect + %Q{#<#{self.class.name} [#{number.inspect}] "#{self}">} + end end class AddLine < Line diff --git a/vendor/diff-display/lib/diff/display/unified/generator.rb b/vendor/diff-display/lib/diff/display/unified/generator.rb index 9300dfb..01af158 100644 --- a/vendor/diff-display/lib/diff/display/unified/generator.rb +++ b/vendor/diff-display/lib/diff/display/unified/generator.rb @@ -79,19 +79,7 @@ module Diff::Display if new_line_type.eql?(@line_type) @buffer.push(line) else - # Side by side inline diff - # - # e.g. - # - # - This line just had to go - # + This line is on the way in - # - if new_line_type.eql?(LINE_TYPES['+']) and @line_type.eql?(LINE_TYPES['-']) - @prev_buffer = @buffer - @prev_line_type = @line_type - else - identify_block - end + identify_block @buffer = [line] @line_type = new_line_type end diff --git a/vendor/diff-display/spec/fixtures/multiple_rems_then_add.diff b/vendor/diff-display/spec/fixtures/multiple_rems_then_add.diff new file mode 100644 index 0000000..f5fd3f8 --- /dev/null +++ b/vendor/diff-display/spec/fixtures/multiple_rems_then_add.diff @@ -0,0 +1,14 @@ +diff --git a/strokedb-ruby/lib/stores/chainable_storage.rb b/strokedb-ruby/lib/stores/chainable_storage.rb +index 5326c92..1e2de8f 100644 +--- a/strokedb-ruby/lib/stores/chainable_storage.rb ++++ b/strokedb-ruby/lib/stores/chainable_storage.rb +@@ -44,9 +44,7 @@ module StrokeDB + def save_with_chained_storages!(chunk,source=nil) + perform_save!(chunk) + (@chained_storages||{}).each_pair do |storage,savings| +- unless storage == chunk +- savings << chunk unless savings.include?(chunk) +- end ++ savings << chunk unless storage == chunk || savings.include?(chunk) + end + end
\ No newline at end of file diff --git a/vendor/diff-display/spec/generator_spec.rb b/vendor/diff-display/spec/generator_spec.rb index e15b92a..850fdc1 100644 --- a/vendor/diff-display/spec/generator_spec.rb +++ b/vendor/diff-display/spec/generator_spec.rb @@ -32,4 +32,14 @@ describe Diff::Display::Unified::Generator do end end + describe "edgecase bugs" do + it "multiple rems and an add is in parity" do + diff_data = load_diff("multiple_rems_then_add") + data = Diff::Display::Unified::Generator.run(diff_data) + #pp data + data.to_diff.should == diff_data.chomp + end + + end + end diff --git a/vendor/diff-display/spec/renderer/base_spec.rb b/vendor/diff-display/spec/renderer/base_spec.rb index 9893d04..f20b32b 100644 --- a/vendor/diff-display/spec/renderer/base_spec.rb +++ b/vendor/diff-display/spec/renderer/base_spec.rb @@ -21,10 +21,10 @@ describe Diff::Renderer::Base do # @base_renderer.render(@data) # end - it "calls the before_modblock" do - @base_renderer.expects(:before_modblock).at_least_once - @base_renderer.render(@data) - end + # it "calls the before_modblock" do + # @base_renderer.expects(:before_modblock).at_least_once + # @base_renderer.render(@data) + # end it "calls the before_unmodblock" do @base_renderer.expects(:before_unmodblock).at_least_once @@ -71,10 +71,10 @@ describe Diff::Renderer::Base do # @base_renderer.render(@data) # end - it "calls the after_modblock" do - @base_renderer.expects(:after_modblock).at_least_once - @base_renderer.render(@data) - end + # it "calls the after_modblock" do + # @base_renderer.expects(:after_modblock).at_least_once + # @base_renderer.render(@data) + # end it "calls the after_unmodblock" do @base_renderer.expects(:after_unmodblock).at_least_once |