Commit 6c744bdb477a6f1bfc1cffbc5fef03f4f796fea1
Committed by
Macartur Sousa
1 parent
c342cf9e
Exists in
elasticsearch_view
Start tests with rspec for elasticsearch
Signed-off-by: Lucas Moura <lucas.moura128@gmail.com> Signed-off-by: Luciano Prestes <lucianopcbr@gmail.com> Signed-off-by: Macartur Sousa <macartur.sc@gmail.com>
Showing
3 changed files
with
182 additions
and
0 deletions
Show diff stats
| ... | ... | @@ -0,0 +1,38 @@ |
| 1 | +require 'rails_helper' | |
| 2 | +require 'rake' | |
| 3 | +require 'elasticsearch/extensions/test/cluster/tasks' | |
| 4 | + | |
| 5 | +RSpec.configure do |config| | |
| 6 | + config.before :each, elasticsearch: true do | |
| 7 | + puts '='*10, 'before', '='*10 | |
| 8 | + Elasticsearch::Extensions::Test::Cluster.start() unless Elasticsearch::Extensions::Test::Cluster.running? | |
| 9 | + end | |
| 10 | + | |
| 11 | + config.after :suite do | |
| 12 | + puts '='*10, 'after', '='*10 | |
| 13 | + Elasticsearch::Extensions::Test::Cluster.stop() if Elasticsearch::Extensions::Test::Cluster.running? | |
| 14 | + end | |
| 15 | +end | |
| 16 | + | |
| 17 | +RSpec.describe Community, type: :model, elasticsearch: true do | |
| 18 | + before do | |
| 19 | + Environment.create!(:name => 'Noosfero', :contact_email => 'noosfero@localhost.localdomain', :is_default => true) | |
| 20 | + | |
| 21 | + @environment = Environment.default | |
| 22 | + @environment.enabled_plugins = ['ElasticsearchPlugin'] | |
| 23 | + @environment.save! | |
| 24 | + | |
| 25 | + @community = Community.new(name: "Debian") | |
| 26 | + @community.save! | |
| 27 | + | |
| 28 | + sleep 2 | |
| 29 | + end | |
| 30 | + | |
| 31 | + it "assert true" do | |
| 32 | + communities = Community.__elasticsearch__.search({}).records.to_a | |
| 33 | + | |
| 34 | + p communities | |
| 35 | + | |
| 36 | + expect(true).to be true | |
| 37 | + end | |
| 38 | +end | ... | ... |
| ... | ... | @@ -0,0 +1,52 @@ |
| 1 | +# This file is copied to spec/ when you run 'rails generate rspec:install' | |
| 2 | +ENV['RAILS_ENV'] ||= 'test' | |
| 3 | +require File.expand_path('../../config/environment', __FILE__) | |
| 4 | +# Prevent database truncation if the environment is production | |
| 5 | +abort("The Rails environment is running in production mode!") if Rails.env.production? | |
| 6 | +require 'spec_helper' | |
| 7 | +require 'rspec/rails' | |
| 8 | +# Add additional requires below this line. Rails is not loaded until this point! | |
| 9 | + | |
| 10 | +# Requires supporting ruby files with custom matchers and macros, etc, in | |
| 11 | +# spec/support/ and its subdirectories. Files matching `spec/**/*_spec.rb` are | |
| 12 | +# run as spec files by default. This means that files in spec/support that end | |
| 13 | +# in _spec.rb will both be required and run as specs, causing the specs to be | |
| 14 | +# run twice. It is recommended that you do not name files matching this glob to | |
| 15 | +# end with _spec.rb. You can configure this pattern with the --pattern | |
| 16 | +# option on the command line or in ~/.rspec, .rspec or `.rspec-local`. | |
| 17 | +# | |
| 18 | +# The following line is provided for convenience purposes. It has the downside | |
| 19 | +# of increasing the boot-up time by auto-requiring all files in the support | |
| 20 | +# directory. Alternatively, in the individual `*_spec.rb` files, manually | |
| 21 | +# require only the support files necessary. | |
| 22 | +# | |
| 23 | +# Dir[Rails.root.join('spec/support/**/*.rb')].each { |f| require f } | |
| 24 | + | |
| 25 | +# Checks for pending migrations before tests are run. | |
| 26 | +# If you are not using ActiveRecord, you can remove this line. | |
| 27 | +ActiveRecord::Migration.maintain_test_schema! | |
| 28 | + | |
| 29 | +RSpec.configure do |config| | |
| 30 | + # Remove this line if you're not using ActiveRecord or ActiveRecord fixtures | |
| 31 | + config.fixture_path = "#{::Rails.root}/spec/fixtures" | |
| 32 | + | |
| 33 | + # If you're not using ActiveRecord, or you'd prefer not to run each of your | |
| 34 | + # examples within a transaction, remove the following line or assign false | |
| 35 | + # instead of true. | |
| 36 | + config.use_transactional_fixtures = true | |
| 37 | + | |
| 38 | + # RSpec Rails can automatically mix in different behaviours to your tests | |
| 39 | + # based on their file location, for example enabling you to call `get` and | |
| 40 | + # `post` in specs under `spec/controllers`. | |
| 41 | + # | |
| 42 | + # You can disable this behaviour by removing the line below, and instead | |
| 43 | + # explicitly tag your specs with their type, e.g.: | |
| 44 | + # | |
| 45 | + # RSpec.describe UsersController, :type => :controller do | |
| 46 | + # # ... | |
| 47 | + # end | |
| 48 | + # | |
| 49 | + # The different available types are documented in the features, such as in | |
| 50 | + # https://relishapp.com/rspec/rspec-rails/docs | |
| 51 | + config.infer_spec_type_from_file_location! | |
| 52 | +end | ... | ... |
| ... | ... | @@ -0,0 +1,92 @@ |
| 1 | +# This file was generated by the `rails generate rspec:install` command. Conventionally, all | |
| 2 | +# specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`. | |
| 3 | +# The generated `.rspec` file contains `--require spec_helper` which will cause | |
| 4 | +# this file to always be loaded, without a need to explicitly require it in any | |
| 5 | +# files. | |
| 6 | +# | |
| 7 | +# Given that it is always loaded, you are encouraged to keep this file as | |
| 8 | +# light-weight as possible. Requiring heavyweight dependencies from this file | |
| 9 | +# will add to the boot time of your test suite on EVERY test run, even for an | |
| 10 | +# individual file that may not need all of that loaded. Instead, consider making | |
| 11 | +# a separate helper file that requires the additional dependencies and performs | |
| 12 | +# the additional setup, and require it from the spec files that actually need | |
| 13 | +# it. | |
| 14 | +# | |
| 15 | +# The `.rspec` file also contains a few flags that are not defaults but that | |
| 16 | +# users commonly want. | |
| 17 | +# | |
| 18 | +# See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration | |
| 19 | +RSpec.configure do |config| | |
| 20 | + # rspec-expectations config goes here. You can use an alternate | |
| 21 | + # assertion/expectation library such as wrong or the stdlib/minitest | |
| 22 | + # assertions if you prefer. | |
| 23 | + config.expect_with :rspec do |expectations| | |
| 24 | + # This option will default to `true` in RSpec 4. It makes the `description` | |
| 25 | + # and `failure_message` of custom matchers include text for helper methods | |
| 26 | + # defined using `chain`, e.g.: | |
| 27 | + # be_bigger_than(2).and_smaller_than(4).description | |
| 28 | + # # => "be bigger than 2 and smaller than 4" | |
| 29 | + # ...rather than: | |
| 30 | + # # => "be bigger than 2" | |
| 31 | + expectations.include_chain_clauses_in_custom_matcher_descriptions = true | |
| 32 | + end | |
| 33 | + | |
| 34 | + # rspec-mocks config goes here. You can use an alternate test double | |
| 35 | + # library (such as bogus or mocha) by changing the `mock_with` option here. | |
| 36 | + config.mock_with :rspec do |mocks| | |
| 37 | + # Prevents you from mocking or stubbing a method that does not exist on | |
| 38 | + # a real object. This is generally recommended, and will default to | |
| 39 | + # `true` in RSpec 4. | |
| 40 | + mocks.verify_partial_doubles = true | |
| 41 | + end | |
| 42 | + | |
| 43 | +# The settings below are suggested to provide a good initial experience | |
| 44 | +# with RSpec, but feel free to customize to your heart's content. | |
| 45 | +=begin | |
| 46 | + # These two settings work together to allow you to limit a spec run | |
| 47 | + # to individual examples or groups you care about by tagging them with | |
| 48 | + # `:focus` metadata. When nothing is tagged with `:focus`, all examples | |
| 49 | + # get run. | |
| 50 | + config.filter_run :focus | |
| 51 | + config.run_all_when_everything_filtered = true | |
| 52 | + | |
| 53 | + # Allows RSpec to persist some state between runs in order to support | |
| 54 | + # the `--only-failures` and `--next-failure` CLI options. We recommend | |
| 55 | + # you configure your source control system to ignore this file. | |
| 56 | + config.example_status_persistence_file_path = "spec/examples.txt" | |
| 57 | + | |
| 58 | + # Limits the available syntax to the non-monkey patched syntax that is | |
| 59 | + # recommended. For more details, see: | |
| 60 | + # - http://myronmars.to/n/dev-blog/2012/06/rspecs-new-expectation-syntax | |
| 61 | + # - http://www.teaisaweso.me/blog/2013/05/27/rspecs-new-message-expectation-syntax/ | |
| 62 | + # - http://myronmars.to/n/dev-blog/2014/05/notable-changes-in-rspec-3#new__config_option_to_disable_rspeccore_monkey_patching | |
| 63 | + config.disable_monkey_patching! | |
| 64 | + | |
| 65 | + # Many RSpec users commonly either run the entire suite or an individual | |
| 66 | + # file, and it's useful to allow more verbose output when running an | |
| 67 | + # individual spec file. | |
| 68 | + if config.files_to_run.one? | |
| 69 | + # Use the documentation formatter for detailed output, | |
| 70 | + # unless a formatter has already been configured | |
| 71 | + # (e.g. via a command-line flag). | |
| 72 | + config.default_formatter = 'doc' | |
| 73 | + end | |
| 74 | + | |
| 75 | + # Print the 10 slowest examples and example groups at the | |
| 76 | + # end of the spec run, to help surface which specs are running | |
| 77 | + # particularly slow. | |
| 78 | + config.profile_examples = 10 | |
| 79 | + | |
| 80 | + # Run specs in random order to surface order dependencies. If you find an | |
| 81 | + # order dependency and want to debug it, you can fix the order by providing | |
| 82 | + # the seed, which is printed after each run. | |
| 83 | + # --seed 1234 | |
| 84 | + config.order = :random | |
| 85 | + | |
| 86 | + # Seed global randomization in this process using the `--seed` CLI option. | |
| 87 | + # Setting this allows you to use `--seed` to deterministically reproduce | |
| 88 | + # test failures related to randomization by passing the same `--seed` value | |
| 89 | + # as the one that triggered the failure. | |
| 90 | + Kernel.srand config.seed | |
| 91 | +=end | |
| 92 | +end | ... | ... |