Commit 88a27663cc9650b208e4f9ffadaba8da0f8d9f8d
1 parent
297813f6
Exists in
elasticsearch_api
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 | ... | ... |