diff options
Diffstat (limited to 'samples/10_advanced_debugging/03_unit_tests/benchmark_api_tests.rb')
| -rw-r--r-- | samples/10_advanced_debugging/03_unit_tests/benchmark_api_tests.rb | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/samples/10_advanced_debugging/03_unit_tests/benchmark_api_tests.rb b/samples/10_advanced_debugging/03_unit_tests/benchmark_api_tests.rb new file mode 100644 index 0000000..2c06f1a --- /dev/null +++ b/samples/10_advanced_debugging/03_unit_tests/benchmark_api_tests.rb @@ -0,0 +1,43 @@ +def test_benchmark_api args, assert + result = args.gtk.benchmark iterations: 100, + only_one: -> () { + r = 0 + (1..100).each do |i| + r += 1 + end + } + + assert.equal! result.first_place.name, :only_one + + result = args.gtk.benchmark iterations: 100, + iterations_100: -> () { + r = 0 + (1..100).each do |i| + r += 1 + end + }, + iterations_50: -> () { + r = 0 + (1..50).each do |i| + r += 1 + end + } + + assert.equal! result.first_place.name, :iterations_50 + + result = args.gtk.benchmark iterations: 1, + iterations_100: -> () { + r = 0 + (1..100).each do |i| + r += 1 + end + }, + iterations_50: -> () { + r = 0 + (1..50).each do |i| + r += 1 + end + } + + assert.equal! result.too_small_to_measure, true +end |
