jmeter_perf 1.0.9 → 1.0.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b40b49f0107640d596b7d74d4237a4c98a9455367574040d210a45c1d45c1354
4
- data.tar.gz: 53d7d951ba04981ed613bb3a81f0b0cadcb2706f576a9580c88c76c465decb89
3
+ metadata.gz: '08f52576a21a7846d4b8c9e9a64a515d41eca60573109bbc6e824e799d666ad2'
4
+ data.tar.gz: bf3ef28bf092d0ebde1dfd073349a8f43677b588b730f0e8d6303ce84975cdfc
5
5
  SHA512:
6
- metadata.gz: 7f1744ab7b9d13c4061e2c55d03f702ece823eef438592dc88b2cbfb584cdba555c3c260d800df66d60bab747a9cde8b47c5894e81afeef31f0fecaf51a6a584
7
- data.tar.gz: 158c4421ee958d284b0153aa530898f67ec6f4794b1792cc63ebc96e445b7bd3409d69fd087be5756c6fab5e57336fbbfb5fb5534c990f10b9e76871b4f6ffec
6
+ metadata.gz: 906d3f98be9a3286557f094a6cb65a6cb0e154e65b8535439ca274435ca654248ac627a46caeb9439b6a336055334bbab62acb7d2c627b9949aeeb8a07929247
7
+ data.tar.gz: 10b89dc579ed6b9cbec7f8e413ce95d95b51cc4622cf779293949cf530b94e84d2580dbd30b126372e1ee01c2de364d6839e2d5feb19feaf5b5a9a958d5e665c
@@ -0,0 +1,57 @@
1
+ # Provides a custom matcher to use with RSpec to test performance tests
2
+ # Usage:
3
+ # require 'jmeter_perf/rspec_matchers'
4
+ # comparator = JmeterPerf::Report::Comparator.new(base_summary, test_summary)
5
+ # expect(comparator).to pass_performance
6
+ # expect(comparator).to pass_performance.with_effect_size(:small)
7
+ # expect(comparator).to pass_performance.with_direction(:positive)
8
+ # expect(comparator).to pass_performance.with_cohen_d_limit(0.2)
9
+ # expect(comparator).to pass_performance.with(effect_size: :small, direction: :positive, cohen_limit: 0.2)
10
+ RSpec::Matchers.define :pass_performance_test do
11
+ description { "Passes performance test" }
12
+ chain :with_effect_size do |effect_size|
13
+ @effect_size = effect_size
14
+ end
15
+
16
+ chain :with_direction do |direction|
17
+ @direction = direction
18
+ end
19
+
20
+ chain :with_cohen_d_limit do |limit|
21
+ @cohen_limit = limit
22
+ end
23
+
24
+ chain :with do |options|
25
+ @effect_size = options[:effect_size]
26
+ @direction = options[:direction]
27
+ @cohen_limit = options[:cohen_limit]
28
+ end
29
+
30
+ match do |comparator|
31
+ if comparator.is_a?(JmeterPerf::Report::Comparator)
32
+ comparator.pass?(
33
+ cohens_d_limit: @cohen_limit || nil,
34
+ effect_size: @effect_size || :vsmall,
35
+ direction: @direction || :both
36
+ )
37
+ else
38
+ false
39
+ end
40
+ end
41
+
42
+ failure_message do |comparator|
43
+ if comparator.is_a?(JmeterPerf::Report::Comparator)
44
+ "#{comparator.name} failed: #{comparator.cohens_d} | #{comparator.human_rating}"
45
+ else
46
+ "#{comparator.class.name} is not a valid comparator"
47
+ end
48
+ end
49
+
50
+ failure_message_when_negated do |comparator|
51
+ if comparator.is_a?(JmeterPerf::Report::Comparator)
52
+ "#{comparator.name} passed: #{comparator.cohens_d} | #{comparator.human_rating}"
53
+ else
54
+ "#{comparator.class.name} is not a valid comparator"
55
+ end
56
+ end
57
+ end
@@ -0,0 +1 @@
1
+ Dir.glob(File.join(__dir__, "rspec_matchers.rb")).each { |f| require_relative f }
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module JmeterPerf
4
- VERSION = "1.0.9"
4
+ VERSION = "1.0.10"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jmeter_perf
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.9
4
+ version: 1.0.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jean Luis Urena
@@ -264,6 +264,8 @@ files:
264
264
  - lib/jmeter_perf/plugins/variable_throughput_timer.rb
265
265
  - lib/jmeter_perf/report/comparator.rb
266
266
  - lib/jmeter_perf/report/summary.rb
267
+ - lib/jmeter_perf/rspec_matchers.rb
268
+ - lib/jmeter_perf/rspec_matchers/pass_performance_test.rb
267
269
  - lib/jmeter_perf/tasks/dsl.rake
268
270
  - lib/jmeter_perf/version.rb
269
271
  - lib/jmeter_perf/views/report_template.html.erb