Class: RailsApiBenchmark::BenchmarkTasks

Inherits:
Object
  • Object
show all
Includes:
Rake::DSL
Defined in:
lib/rails_api_benchmark/benchmark_tasks.rb

Instance Method Summary collapse

Instance Method Details

#install_tasksObject



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/rails_api_benchmark/benchmark_tasks.rb', line 5

def install_tasks
  namespace :api do
    desc 'Runs Rails API benchmark'
    task benchmark: :environment do # Gosh, that's dirty !
      puts RailsApiBenchmark.config.all
      RailsApiBenchmark::Server.run
      sleep(3) # Leave time to boot
      RailsApiBenchmark::Core.run

      at_exit { RailsApiBenchmark::Subprocess.kill_all }
    end

    namespace :benchmark do
      desc 'Prints RailsApiBenchmark config'
      task config: :environment do
        require 'json'

        puts JSON.pretty_generate(RailsApiBenchmark.config.all)
      end
    end
  end
end