require 'rake'
require 'rake/testtask'
require 'rake/rdoctask'

desc 'Default: run unit tests.'
task :default => :test

desc 'Test the BBCodeizer plugin.'
Rake::TestTask.new(:test) do |t|
  t.libs << 'lib'
  t.pattern = 'test/**/*_test.rb'
  t.verbose = true
end

desc 'Generate documentation for the BBCodeizer plugin.'
Rake::RDocTask.new(:rdoc) do |rdoc|
  rdoc.rdoc_dir = 'rdoc'
  rdoc.title    = 'BBCodeizer'
  rdoc.options << '--line-numbers' << '--inline-source'
  rdoc.rdoc_files.include('README')
  rdoc.rdoc_files.include('lib/**/*.rb')
end

task :benchmark do
  require 'lib/bbcodeizer'
  require 'benchmark'
  
  result = Benchmark.measure do
    10000.times do
      BBCodeizer.bbcodeize("[b]test[/b]\n[code=\"java\"]String a = new String(\"test\")[/code]")
    end
  end
  puts result
end