Alien-SVN
view release on metacpan or search on metacpan
src/subversion/subversion/bindings/swig/ruby/test/test_core.rb view on Meta::CPAN
d
e
EOS
original.open
original.print(original_src)
original.close
modified.open
modified.print(modified_src)
modified.close
latest.open
latest.print(latest_src)
latest.close
expected = <<-EOD
b
d
e
EOD
diff = Svn::Core::Diff.file_diff3(original.path,
modified.path,
latest.path)
assert_equal(normalize_line_break(expected), diff.merge)
options = Svn::Core::DiffFileOptions.parse("--ignore-space-change")
expected = <<-EOD
b
d
e
EOD
diff = Svn::Core::Diff.file_diff3(original.path,
modified.path,
latest.path,
options)
assert_equal(normalize_line_break(expected), diff.merge)
options = Svn::Core::DiffFileOptions.parse("--ignore-all-space")
expected = <<-EOD
b
d
e
EOD
diff = Svn::Core::Diff.file_diff3(original.path,
modified.path,
latest.path,
options)
assert_equal(normalize_line_break(expected), diff.merge)
end
def test_diff_file_options
args = ["--ignore-all-space"]
options = Svn::Core::DiffFileOptions.parse(*args)
assert_equal(Svn::Core::DIFF_FILE_IGNORE_SPACE_ALL,
options.ignore_space)
assert_false(options.ignore_eol_style)
args = ["--ignore-space-change"]
options = Svn::Core::DiffFileOptions.parse(*args)
assert_equal(Svn::Core::DIFF_FILE_IGNORE_SPACE_CHANGE,
options.ignore_space)
assert_false(options.ignore_eol_style)
args = ["--ignore-space-change", "--ignore-eol-style"]
options = Svn::Core::DiffFileOptions.parse(*args)
assert_equal(Svn::Core::DIFF_FILE_IGNORE_SPACE_CHANGE,
options.ignore_space)
assert_true(options.ignore_eol_style)
options = Svn::Core::DiffFileOptions.parse(args)
assert_equal(Svn::Core::DIFF_FILE_IGNORE_SPACE_CHANGE,
options.ignore_space)
assert_true(options.ignore_eol_style)
end
def test_create_commit_info
info = Svn::Core::CommitInfo.new
now = Time.now.gmtime
date_str = now.strftime("%Y-%m-%dT%H:%M:%S")
date_str << ".#{now.usec}Z"
info.date = date_str
if RUBY_VERSION > '1.9'
# ruby 1.9 Time comparison gets into the nano-seconds, strftime
# shaves these off. So we can compare epoch time instead
assert_equal(now.to_i, info.date.gmtime.to_i)
else
assert_equal(now, info.date.gmtime)
end
end
def test_svn_prop
assert(Svn::Core::Property.svn_prop?("svn:mime-type"))
assert(!Svn::Core::Property.svn_prop?("my-mime-type"))
assert(Svn::Core::Property.has_svn_prop?({"svn:mime-type" => "text/plain"}))
assert(!Svn::Core::Property.has_svn_prop?({"my-mime-type" => "text/plain"}))
assert(Svn::Core::Property.have_svn_prop?({"svn:mime-type" => "text/plain"}))
assert(!Svn::Core::Property.have_svn_prop?({"my-mime-type" => "text/plain"}))
end
def test_valid_prop_name
assert(Svn::Core::Property.valid_name?("svn:mime-type"))
assert(Svn::Core::Property.valid_name?("my-mime-type"))
assert(!Svn::Core::Property.valid_name?("ããããã£"))
end
def test_depth_conversion
%w(unknown empty files immediates infinity).each do |depth|
depth_value = Svn::Core.const_get("DEPTH_#{depth.upcase}")
assert_equal(depth_value, Svn::Core::Depth.from_string(depth))
assert_equal(depth, Svn::Core::Depth.to_string(depth_value))
end
end
def test_depth_input
depth_infinity = Svn::Core::DEPTH_INFINITY
assert_equal("infinity", Svn::Core::Depth.to_string(depth_infinity))
assert_equal("infinity", Svn::Core::Depth.to_string("infinity"))
assert_equal("infinity", Svn::Core::Depth.to_string(:infinity))
assert_equal("unknown", Svn::Core::Depth.to_string("XXX"))
assert_raises(ArgumentError) do
Svn::Core::Depth.to_string([])
end
end
def test_stream_copy
source = "content"
original = StringIO.new(source)
copied = StringIO.new("")
original_stream = Svn::Core::Stream.new(original)
copied_stream = Svn::Core::Stream.new(copied)
( run in 0.815 second using v1.01-cache-2.11-cpan-98e64b0badf )