From 4bd16f053847f2efe347ebda9136ef2233ee0d2c Mon Sep 17 00:00:00 2001 From: hukl Date: Tue, 28 Apr 2009 00:15:53 +0200 Subject: added thinking_sphinx plugin for fulltext search on nodes and heads --- .../plugins/thinking-sphinx/tasks/distribution.rb | 48 ++++++++++++ vendor/plugins/thinking-sphinx/tasks/rails.rake | 1 + vendor/plugins/thinking-sphinx/tasks/testing.rb | 86 ++++++++++++++++++++++ 3 files changed, 135 insertions(+) create mode 100644 vendor/plugins/thinking-sphinx/tasks/distribution.rb create mode 100644 vendor/plugins/thinking-sphinx/tasks/rails.rake create mode 100644 vendor/plugins/thinking-sphinx/tasks/testing.rb (limited to 'vendor/plugins/thinking-sphinx/tasks') diff --git a/vendor/plugins/thinking-sphinx/tasks/distribution.rb b/vendor/plugins/thinking-sphinx/tasks/distribution.rb new file mode 100644 index 0000000..54ea964 --- /dev/null +++ b/vendor/plugins/thinking-sphinx/tasks/distribution.rb @@ -0,0 +1,48 @@ +require 'rake/rdoctask' +require 'rake/gempackagetask' + +$LOAD_PATH.unshift File.dirname(__FILE__) + '/../lib' +require 'thinking_sphinx' + +desc 'Generate documentation' +Rake::RDocTask.new(:rdoc) do |rdoc| + rdoc.rdoc_dir = 'rdoc' + rdoc.title = 'Thinking Sphinx - ActiveRecord Sphinx Plugin' + rdoc.options << '--line-numbers' << '--inline-source' + rdoc.rdoc_files.include('README') + rdoc.rdoc_files.include('lib/**/*.rb') +end + +spec = Gem::Specification.new do |s| + s.name = "thinking-sphinx" + s.version = ThinkingSphinx::Version::String + s.summary = "A concise and easy-to-use Ruby library that connects ActiveRecord to the Sphinx search daemon, managing configuration, indexing and searching." + s.description = "A concise and easy-to-use Ruby library that connects ActiveRecord to the Sphinx search daemon, managing configuration, indexing and searching." + s.author = "Pat Allan" + s.email = "pat@freelancing-gods.com" + s.homepage = "http://ts.freelancing-gods.com" + s.has_rdoc = true + s.rdoc_options << "--title" << "Thinking Sphinx -- Rails/Merb Sphinx Plugin" << + "--line-numbers" + s.rubyforge_project = "thinking-sphinx" + s.test_files = FileList["spec/**/*_spec.rb"] + s.files = FileList[ + "lib/**/*.rb", + "LICENCE", + "README", + "tasks/**/*.rb", + "tasks/**/*.rake", + "vendor/**/*" + ] +end + +Rake::GemPackageTask.new(spec) do |p| + p.gem_spec = spec + p.need_tar = true + p.need_zip = true +end + +desc "Build gemspec file" +task :build do + File.open('thinking-sphinx.gemspec', 'w') { |f| f.write spec.to_ruby } +end diff --git a/vendor/plugins/thinking-sphinx/tasks/rails.rake b/vendor/plugins/thinking-sphinx/tasks/rails.rake new file mode 100644 index 0000000..47fa76c --- /dev/null +++ b/vendor/plugins/thinking-sphinx/tasks/rails.rake @@ -0,0 +1 @@ +require File.join(File.dirname(__FILE__), '/../lib/thinking_sphinx/tasks') \ No newline at end of file diff --git a/vendor/plugins/thinking-sphinx/tasks/testing.rb b/vendor/plugins/thinking-sphinx/tasks/testing.rb new file mode 100644 index 0000000..9cb83ba --- /dev/null +++ b/vendor/plugins/thinking-sphinx/tasks/testing.rb @@ -0,0 +1,86 @@ +require 'rubygems' +require 'spec/rake/spectask' +require 'cucumber/rake/task' + +desc "Run the specs under spec" +Spec::Rake::SpecTask.new do |t| + t.spec_files = FileList['spec/**/*_spec.rb'] + t.spec_opts << "-c" +end + +desc "Run all feature-set configurations" +task :features do |t| + puts "rake features:mysql" + system "rake features:mysql" + puts "rake features:postgresql" + system "rake features:postgresql" +end + +namespace :features do + def add_task(name, description) + Cucumber::Rake::Task.new(name, description) do |t| + t.cucumber_opts = "--format pretty" + t.step_pattern = [ + "features/support/env", + "features/support/db/#{name}", + "features/support/db/active_record", + "features/support/post_database", + "features/step_definitions/**.rb" + ] + end + end + + add_task :mysql, "Run feature-set against MySQL" + add_task :postgresql, "Run feature-set against PostgreSQL" +end + +desc "Generate RCov reports" +Spec::Rake::SpecTask.new(:rcov) do |t| + t.libs << 'lib' + t.spec_files = FileList['spec/**/*_spec.rb'] + t.rcov = true + t.rcov_opts = ['--exclude', 'spec', '--exclude', 'gems', '--exclude', 'riddle'] +end + +namespace :rcov do + def add_task(name, description) + Cucumber::Rake::Task.new(name, description) do |t| + t.cucumber_opts = "--format pretty" + t.step_pattern = [ + "features/support/env", + "features/support/db/#{name}", + "features/support/db/active_record", + "features/support/post_database", + "features/step_definitions/**.rb" + ] + t.rcov = true + t.rcov_opts = [ + '--exclude', 'spec', + '--exclude', 'gems', + '--exclude', 'riddle', + '--exclude', 'features' + ] + end + end + + add_task :mysql, "Run feature-set against MySQL with rcov" + add_task :postgresql, "Run feature-set against PostgreSQL with rcov" +end + +desc "Build cucumber.yml file" +task :cucumber_defaults do + default_requires = %w( + --require features/support/env.rb + --require features/support/db/mysql.rb + --require features/support/db/active_record.rb + --require features/support/post_database.rb + ).join(" ") + + step_definitions = FileList["features/step_definitions/**.rb"].collect { |path| + "--require #{path}" + }.join(" ") + + File.open('cucumber.yml', 'w') { |f| + f.write "default: \"#{default_requires} #{step_definitions}\"" + } +end -- cgit v1.3