require 'spec_helper'
describe SvnUpdater do
before :each do
@svn_updater = SvnUpdater.new
end
describe "#is_installed?" do
after :each do
stub_system_command(@svn_updater, /^svn info/, @stub_value)
@svn_updater.is_installed?.should === @expected
end
it "should return false if the svn command is not found" do
@stub_value = "svn: command not found"
@expected = false
end
it "should return false if the repository is not manage by svn" do
@stub_value = "svn: '.' is not a working copy"
@expected = false
end
it "should return true" do
@stub_value = '
https://wpscan.googlecode.com/svn/trunk
https://wpscan.googlecode.com/svn
0b0242d5-46e6-2201-410d-bc09fd35266c
normal
infinity
author@mail.tld
2012-06-02T06:26:25.309806Z
'
@expected = true
end
end
describe "#local_revision_number" do
after :each do
stub_system_command(@svn_updater, /^svn info/, @stub_value)
@svn_updater.local_revision_number.should === @expected
end
it "should return 399" do
@stub_value = '
https://wpscan.googlecode.com/svn/trunk
https://wpscan.googlecode.com/svn
0b0242d5-46e6-2201-410d-bc09fd35266c
normal
infinity
author@mail.tld
2012-06-02T06:26:25.309806Z
'
@expected = "362"
end
end
describe "#update" do
it "should do nothing xD" do
stub_system_command(@svn_updater, /^svn up/, "At revision 425.")
@svn_updater.update().should === "At revision 425."
end
end
end