Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

111 lines (88 sloc) 2.68 kb
require "rake/testtask"
REDIS_DIR = File.expand_path(File.join("..", "test"), __FILE__)
REDIS_CNF = File.join(REDIS_DIR, "test.conf")
REDIS_PID = File.join(REDIS_DIR, "db", "redis.pid")
task :default => :run
desc "Run tests and manage server start/stop"
task :run => [:start, :test, :stop]
desc "Start the Redis server"
task :start do
unless File.exists?(REDIS_PID)
system "redis-server #{REDIS_CNF}"
end
end
desc "Stop the Redis server"
task :stop do
if File.exists?(REDIS_PID)
system "kill #{File.read(REDIS_PID)}"
File.delete(REDIS_PID)
end
end
task :test do
require File.expand_path("./test/helper", File.dirname(__FILE__))
Cutest.run(Dir["test/*.rb"])
end
desc "Generate documentation"
task :doc => [:yard, :rocco]
desc "Generated YARD documentation"
task :yard do
require "yard"
opts = []
opts.push("--protected")
opts.push("--no-private")
opts.push("--private")
opts.push("--title", "Ohm — Object-hash mapping library for Redis")
YARD::CLI::Yardoc.run(*opts)
Dir["doc/**/*.html"].each do |file|
contents = File.read(file)
contents.sub! %r{</body>}, <<-EOS
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-11356145-1");
pageTracker._trackPageview();
} catch(err) {}</script>
</body>
EOS
File.open(file, "w") { |f| f.write(contents) }
end
end
desc "Generate ROCCO documentation"
task :rocco do
`mkdir doc/examples` unless Dir.exists?("doc/examples")
`rocco examples/*.*`
`mv examples/*.html doc/examples`
end
desc "Deploy documentation"
task :deploy do
system "rsync --del -avz doc/* ohm.keyvalue.org:deploys/ohm.keyvalue.org/"
end
namespace :examples do
desc "Run all the examples"
task :run do
begin
require "cutest"
rescue LoadError
raise "!! Missing gem `cutest`. Try `gem install cutest`."
end
Cutest.run(Dir["examples/*.rb"])
end
end
task :paste_lua_inline do
def wrap(const, data)
ret = "#{const} = (<<-EOT).gsub(/^ {4}/, "")\n"
ret << data.gsub(/^/, " ")
ret << " EOT\n"
end
save = File.read("./lua/save.lua")
del = File.read("./lua/delete.lua")
# save = "foo"
# del = "bar"
ohm = File.read("./lib/ohm.rb", encoding: "utf-8")
ohm.gsub!(/SAVE =(.*?)$(.*?)EOT/m, wrap("SAVE", save))
ohm.gsub!(/DELETE =(.*?)$(.*?)EOT/m, wrap("DELETE", del))
puts ohm
end
Jump to Line
Something went wrong with that request. Please try again.