summaryrefslogtreecommitdiff
path: root/etc/check-diffs.rb
diff options
context:
space:
mode:
authormurphy <murphy@rubychan.de>2008-01-07 14:17:43 +0000
committermurphy <murphy@rubychan.de>2008-01-07 14:17:43 +0000
commitbbbbc70a0b2efcd03bbcaf4e08ac139e7969e608 (patch)
tree8eb543ee3633ebedd3746b5557c77df0e8612a2a /etc/check-diffs.rb
parenta08d41bb16104ad52ecf612c81f75f531af87d25 (diff)
downloadcoderay-bbbbc70a0b2efcd03bbcaf4e08ac139e7969e608.tar.gz
Added etc/todo (scanner drafts) and two TextMate project files.
Diffstat (limited to 'etc/check-diffs.rb')
-rw-r--r--etc/check-diffs.rb27
1 files changed, 27 insertions, 0 deletions
diff --git a/etc/check-diffs.rb b/etc/check-diffs.rb
new file mode 100644
index 0000000..8bc66ca
--- /dev/null
+++ b/etc/check-diffs.rb
@@ -0,0 +1,27 @@
+DIFF_PART = /
+^ ([\d,]+c[\d,]+) \n # change
+( (?: < .* \n )+ ) # old
+---\n
+( (?: > .* \n )+ ) # new
+/x
+
+class String
+ def undiff!
+ gsub!(/^./, '')
+ end
+end
+
+for diff in Dir['*.debug.diff']
+ puts diff
+ diff = File.read diff
+ diff.scan(/#{DIFF_PART}|(.+)/o) do |change, old, new, error|
+ raise error if error
+ old.undiff!
+ new.undiff!
+
+ new.gsub!('inline_delimiter', 'delimiter')
+ unless new == old
+ raise "\n>>>\n#{new}\n<<<#{old}\n"
+ end
+ end
+end \ No newline at end of file