ruby-prof 1.4.3 → 1.4.5

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.
@@ -4,7 +4,7 @@
4
4
  require File.expand_path('../test_helper', __FILE__)
5
5
  require_relative './measure_allocations'
6
6
 
7
- class MeasureMemoryTraceTest < TestCase
7
+ class MeasureMemoryTest < TestCase
8
8
  def setup
9
9
  RubyProf::measure_mode = RubyProf::MEMORY
10
10
  end
@@ -14,7 +14,7 @@ class MeasureMemoryTraceTest < TestCase
14
14
  assert_equal(RubyProf::MEMORY, RubyProf::measure_mode)
15
15
  end
16
16
 
17
- if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.6')
17
+ if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('3.0')
18
18
  def test_memory
19
19
  result = RubyProf.profile do
20
20
  allocator = Allocator.new
@@ -22,19 +22,19 @@ class MeasureMemoryTraceTest < TestCase
22
22
  end
23
23
 
24
24
  thread = result.threads.first
25
- assert_in_delta(800, thread.total_time, 1)
26
25
 
26
+ assert_in_delta(800, thread.total_time, 1)
27
27
  methods = result.threads.first.methods.sort.reverse
28
- assert_equal(13, methods.length)
28
+ assert_equal(12, methods.length)
29
29
 
30
30
  # Method 0
31
31
  method = methods[0]
32
- assert_equal('MeasureMemoryTraceTest#test_memory', method.full_name)
32
+ assert_equal('MeasureMemoryTest#test_memory', method.full_name)
33
33
  assert_in_delta(800, method.total_time, 1)
34
+
34
35
  assert_equal(0.0, method.wait_time)
35
36
  assert_equal(0.0, method.self_time)
36
37
  assert_in_delta(800, method.children_time, 1)
37
-
38
38
  assert_equal(0, method.call_trees.callers.length)
39
39
 
40
40
  assert_equal(2, method.call_trees.callees.length)
@@ -62,31 +62,7 @@ class MeasureMemoryTraceTest < TestCase
62
62
 
63
63
  assert_equal(1, method.call_trees.callers.length)
64
64
  call_tree = method.call_trees.callers[0]
65
- assert_equal('MeasureMemoryTraceTest#test_memory', call_tree.parent.target.full_name)
66
- assert_equal(760.0, call_tree.total_time)
67
- assert_equal(0.0, call_tree.wait_time)
68
- assert_equal(0.0, call_tree.self_time)
69
- assert_equal(760.0, call_tree.children_time)
70
-
71
- assert_equal(1, method.call_trees.callees.length)
72
- call_tree = method.call_trees.callees[0]
73
- assert_equal('Allocator#internal_run', call_tree.target.full_name)
74
- assert_equal(760.0, call_tree.total_time)
75
- assert_equal(0.0, call_tree.wait_time)
76
- assert_equal(0.0, call_tree.self_time)
77
- assert_equal(760.0, call_tree.children_time)
78
-
79
- # Method 2
80
- method = methods[2]
81
- assert_equal('Allocator#internal_run', method.full_name)
82
- assert_equal(760.0, method.total_time)
83
- assert_equal(0.0, method.wait_time)
84
- assert_equal(0.0, method.self_time)
85
- assert_equal(760.0, method.children_time)
86
-
87
- assert_equal(1, method.call_trees.callers.length)
88
- call_tree = method.call_trees.callers[0]
89
- assert_equal('Allocator#run', call_tree.parent.target.full_name)
65
+ assert_equal('MeasureMemoryTest#test_memory', call_tree.parent.target.full_name)
90
66
  assert_equal(760.0, call_tree.total_time)
91
67
  assert_equal(0.0, call_tree.wait_time)
92
68
  assert_equal(0.0, call_tree.self_time)
@@ -114,8 +90,8 @@ class MeasureMemoryTraceTest < TestCase
114
90
  assert_equal(40, call_tree.self_time)
115
91
  assert_equal(120.0, call_tree.children_time)
116
92
 
117
- # Method 3
118
- method = methods[3]
93
+ # Method 2
94
+ method = methods[2]
119
95
  assert_equal('Class#new', method.full_name)
120
96
  assert_equal(720.0, method.total_time)
121
97
  assert_equal(0.0, method.wait_time)
@@ -124,7 +100,7 @@ class MeasureMemoryTraceTest < TestCase
124
100
 
125
101
  assert_equal(4, method.call_trees.callers.length)
126
102
  call_tree = method.call_trees.callers[0]
127
- assert_equal('MeasureMemoryTraceTest#test_memory', call_tree.parent.target.full_name)
103
+ assert_equal('MeasureMemoryTest#test_memory', call_tree.parent.target.full_name)
128
104
  assert_equal(40.0, call_tree.total_time)
129
105
  assert_equal(0.0, call_tree.wait_time)
130
106
  assert_equal(40.0, call_tree.self_time)
@@ -180,8 +156,8 @@ class MeasureMemoryTraceTest < TestCase
180
156
  assert_equal(40.0, call_tree.self_time)
181
157
  assert_equal(0.0, call_tree.children_time)
182
158
 
183
- # Method 4
184
- method = methods[4]
159
+ # Method 3
160
+ method = methods[3]
185
161
  assert_equal('Allocator#make_arrays', method.full_name)
186
162
  assert_equal(400.0, method.total_time)
187
163
  assert_equal(0.0, method.wait_time)
@@ -190,7 +166,7 @@ class MeasureMemoryTraceTest < TestCase
190
166
 
191
167
  assert_equal(1, method.call_trees.callers.length)
192
168
  call_tree = method.call_trees.callers[0]
193
- assert_equal('Allocator#internal_run', call_tree.parent.target.full_name)
169
+ assert_equal('Allocator#run', call_tree.parent.target.full_name)
194
170
  assert_equal(400.0, call_tree.total_time)
195
171
  assert_equal(0.0, call_tree.wait_time)
196
172
  assert_equal(0.0, call_tree.self_time)
@@ -204,8 +180,8 @@ class MeasureMemoryTraceTest < TestCase
204
180
  assert_equal(0.0, call_tree.self_time)
205
181
  assert_equal(400.0, call_tree.children_time)
206
182
 
207
- # Method 5
208
- method = methods[5]
183
+ # Method 4
184
+ method = methods[4]
209
185
  assert_equal('Integer#times', method.full_name)
210
186
  assert_equal(400.0, method.total_time)
211
187
  assert_equal(0.0, method.wait_time)
@@ -228,8 +204,8 @@ class MeasureMemoryTraceTest < TestCase
228
204
  assert_equal(400.0, call_tree.self_time)
229
205
  assert_equal(0.0, call_tree.children_time)
230
206
 
231
- # Method 6
232
- method = methods[6]
207
+ # Method 5
208
+ method = methods[5]
233
209
  assert_equal('Allocator#make_hashes', method.full_name)
234
210
  assert_equal(200.0, method.total_time)
235
211
  assert_equal(0.0, method.wait_time)
@@ -238,7 +214,7 @@ class MeasureMemoryTraceTest < TestCase
238
214
 
239
215
  assert_equal(1, method.call_trees.callers.length)
240
216
  call_tree = method.call_trees.callers[0]
241
- assert_equal('Allocator#internal_run', call_tree.parent.target.full_name)
217
+ assert_equal('Allocator#run', call_tree.parent.target.full_name)
242
218
  assert_equal(200.0, call_tree.total_time)
243
219
  assert_equal(0.0, call_tree.wait_time)
244
220
  assert_equal(0.0, call_tree.self_time)
@@ -252,8 +228,8 @@ class MeasureMemoryTraceTest < TestCase
252
228
  assert_equal(200.0, call_tree.self_time)
253
229
  assert_equal(0.0, call_tree.children_time)
254
230
 
255
- # Method 7
256
- method = methods[7]
231
+ # Method 6
232
+ method = methods[6]
257
233
  assert_equal('Allocator#make_strings', method.full_name)
258
234
  assert_equal(160.0, method.total_time)
259
235
  assert_equal(0.0, method.wait_time)
@@ -262,7 +238,7 @@ class MeasureMemoryTraceTest < TestCase
262
238
 
263
239
  assert_equal(1, method.call_trees.callers.length)
264
240
  call_tree = method.call_trees.callers[0]
265
- assert_equal('Allocator#internal_run', call_tree.parent.target.full_name)
241
+ assert_equal('Allocator#run', call_tree.parent.target.full_name)
266
242
  assert_equal(160.0, call_tree.total_time)
267
243
  assert_equal(0.0, call_tree.wait_time)
268
244
  assert_equal(40.0, call_tree.self_time)
@@ -283,8 +259,8 @@ class MeasureMemoryTraceTest < TestCase
283
259
  assert_equal(40.0, call_tree.self_time)
284
260
  assert_equal(40.0, call_tree.children_time)
285
261
 
286
- # Method 8
287
- method = methods[8]
262
+ # Method 7
263
+ method = methods[7]
288
264
  assert_equal('String#*', method.full_name)
289
265
  assert_equal(40.0, method.total_time)
290
266
  assert_equal(0.0, method.wait_time)
@@ -301,8 +277,8 @@ class MeasureMemoryTraceTest < TestCase
301
277
 
302
278
  assert_equal(0.0, method.call_trees.callees.length)
303
279
 
304
- # Method 9
305
- method = methods[9]
280
+ # Method 8
281
+ method = methods[8]
306
282
  assert_equal('String#initialize', method.full_name)
307
283
  assert_equal(40.0, method.total_time)
308
284
  assert_equal(0.0, method.wait_time)
@@ -319,8 +295,8 @@ class MeasureMemoryTraceTest < TestCase
319
295
 
320
296
  assert_equal(0.0, method.call_trees.callees.length)
321
297
 
322
- # Method 10
323
- method = methods[10]
298
+ # Method 9
299
+ method = methods[9]
324
300
  assert_equal('BasicObject#initialize', method.full_name)
325
301
  assert_equal(0.0, method.total_time)
326
302
  assert_equal(0.0, method.wait_time)
@@ -337,8 +313,8 @@ class MeasureMemoryTraceTest < TestCase
337
313
 
338
314
  assert_equal(0.0, method.call_trees.callees.length)
339
315
 
340
- # Method 11
341
- method = methods[11]
316
+ # Method 10
317
+ method = methods[10]
342
318
  assert_equal('Hash#initialize', method.full_name)
343
319
  assert_equal(0.0, method.total_time)
344
320
  assert_equal(0.0, method.wait_time)
@@ -355,8 +331,8 @@ class MeasureMemoryTraceTest < TestCase
355
331
 
356
332
  assert_equal(0.0, method.call_trees.callees.length)
357
333
 
358
- # Method 12
359
- method = methods[12]
334
+ # Method 11
335
+ method = methods[11]
360
336
  assert_equal('Array#initialize', method.full_name)
361
337
  assert_equal(0.0, method.total_time)
362
338
  assert_equal(0.0, method.wait_time)
@@ -373,7 +349,7 @@ class MeasureMemoryTraceTest < TestCase
373
349
 
374
350
  assert_equal(0.0, method.call_trees.callees.length)
375
351
  end
376
- elsif Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.7')
352
+ elsif Gem::Version.new(RUBY_VERSION) < Gem::Version.new('3.2')
377
353
  def test_memory
378
354
  result = RubyProf.profile do
379
355
  allocator = Allocator.new
@@ -382,24 +358,18 @@ class MeasureMemoryTraceTest < TestCase
382
358
 
383
359
  thread = result.threads.first
384
360
 
385
- if Gem::Version.new(RUBY_VERSION) >= Gem::Version.new('2.7.0')
386
- assert_in_delta(800, thread.total_time, 1)
387
- else
388
- assert_in_delta(1760, thread.total_time, 1)
389
- end
390
-
361
+ assert_in_delta(800, thread.total_time, 1)
391
362
  methods = result.threads.first.methods.sort.reverse
392
- assert_equal(13, methods.length)
363
+ assert_equal(12, methods.length)
393
364
 
394
365
  # Method 0
395
366
  method = methods[0]
396
- assert_equal('MeasureMemoryTraceTest#test_memory', method.full_name)
397
- assert_in_delta(1760, method.total_time, 1)
367
+ assert_equal('MeasureMemoryTest#test_memory', method.full_name)
368
+ assert_in_delta(800, method.total_time, 1)
398
369
 
399
370
  assert_equal(0.0, method.wait_time)
400
371
  assert_equal(0.0, method.self_time)
401
- assert_in_delta(1760, method.children_time, 1)
402
-
372
+ assert_in_delta(800, method.children_time, 1)
403
373
  assert_equal(0, method.call_trees.callers.length)
404
374
 
405
375
  assert_equal(2, method.call_trees.callees.length)
@@ -412,50 +382,26 @@ class MeasureMemoryTraceTest < TestCase
412
382
 
413
383
  call_tree = method.call_trees.callees[1]
414
384
  assert_equal('Allocator#run', call_tree.target.full_name)
415
- assert_equal(1720.0, call_tree.total_time)
385
+ assert_equal(760.0, call_tree.total_time)
416
386
  assert_equal(0.0, call_tree.wait_time)
417
387
  assert_equal(0.0, call_tree.self_time)
418
- assert_equal(1720.0, call_tree.children_time)
388
+ assert_equal(760.0, call_tree.children_time)
419
389
 
420
390
  # Method 1
421
391
  method = methods[1]
422
392
  assert_equal('Allocator#run',method.full_name)
423
- assert_equal(1720.0, method.total_time)
424
- assert_equal(0.0, method.wait_time)
425
- assert_equal(0.0, method.self_time)
426
- assert_equal(1720.0, method.children_time)
427
-
428
- assert_equal(1, method.call_trees.callers.length)
429
- call_tree = method.call_trees.callers[0]
430
- assert_equal('MeasureMemoryTraceTest#test_memory', call_tree.parent.target.full_name)
431
- assert_equal(1720.0, call_tree.total_time)
432
- assert_equal(0.0, call_tree.wait_time)
433
- assert_equal(0.0, call_tree.self_time)
434
- assert_equal(1720.0, call_tree.children_time)
435
-
436
- assert_equal(1, method.call_trees.callees.length)
437
- call_tree = method.call_trees.callees[0]
438
- assert_equal('Allocator#internal_run', call_tree.target.full_name)
439
- assert_equal(1720.0, call_tree.total_time)
440
- assert_equal(0.0, call_tree.wait_time)
441
- assert_equal(0.0, call_tree.self_time)
442
- assert_equal(1720.0, call_tree.children_time)
443
-
444
- # Method 2
445
- method = methods[2]
446
- assert_equal('Allocator#internal_run', method.full_name)
447
- assert_equal(1720.0, method.total_time)
393
+ assert_equal(760.0, method.total_time)
448
394
  assert_equal(0.0, method.wait_time)
449
395
  assert_equal(0.0, method.self_time)
450
- assert_equal(1720.0, method.children_time)
396
+ assert_equal(760.0, method.children_time)
451
397
 
452
398
  assert_equal(1, method.call_trees.callers.length)
453
399
  call_tree = method.call_trees.callers[0]
454
- assert_equal('Allocator#run', call_tree.parent.target.full_name)
455
- assert_equal(1720.0, call_tree.total_time)
400
+ assert_equal('MeasureMemoryTest#test_memory', call_tree.parent.target.full_name)
401
+ assert_equal(760.0, call_tree.total_time)
456
402
  assert_equal(0.0, call_tree.wait_time)
457
403
  assert_equal(0.0, call_tree.self_time)
458
- assert_equal(1720.0, call_tree.children_time)
404
+ assert_equal(760.0, call_tree.children_time)
459
405
 
460
406
  assert_equal(3, method.call_trees.callees.length)
461
407
  call_tree = method.call_trees.callees[0]
@@ -467,29 +413,29 @@ class MeasureMemoryTraceTest < TestCase
467
413
 
468
414
  call_tree = method.call_trees.callees[1]
469
415
  assert_equal('Allocator#make_hashes', call_tree.target.full_name)
470
- assert_equal(1160.0, call_tree.total_time)
416
+ assert_equal(200.0, call_tree.total_time)
471
417
  assert_equal(0.0, call_tree.wait_time)
472
418
  assert_equal(0.0, call_tree.self_time)
473
- assert_equal(1160.0, call_tree.children_time)
419
+ assert_equal(200.0, call_tree.children_time)
474
420
 
475
421
  call_tree = method.call_trees.callees[2]
476
422
  assert_equal('Allocator#make_strings', call_tree.target.full_name)
477
423
  assert_equal(160.0, call_tree.total_time)
478
424
  assert_equal(0.0, call_tree.wait_time)
479
- assert_equal(40, call_tree.self_time)
425
+ assert_equal(40.0, call_tree.self_time)
480
426
  assert_equal(120.0, call_tree.children_time)
481
427
 
482
- # Method 3
483
- method = methods[3]
428
+ # Method 2
429
+ method = methods[2]
484
430
  assert_equal('Class#new', method.full_name)
485
- assert_equal(1680.0, method.total_time)
431
+ assert_equal(720.0, method.total_time)
486
432
  assert_equal(0.0, method.wait_time)
487
- assert_equal(1640.0, method.self_time)
433
+ assert_equal(680.0, method.self_time)
488
434
  assert_equal(40.0, method.children_time)
489
435
 
490
436
  assert_equal(4, method.call_trees.callers.length)
491
437
  call_tree = method.call_trees.callers[0]
492
- assert_equal('MeasureMemoryTraceTest#test_memory', call_tree.parent.target.full_name)
438
+ assert_equal('MeasureMemoryTest#test_memory', call_tree.parent.target.full_name)
493
439
  assert_equal(40.0, call_tree.total_time)
494
440
  assert_equal(0.0, call_tree.wait_time)
495
441
  assert_equal(40.0, call_tree.self_time)
@@ -504,9 +450,9 @@ class MeasureMemoryTraceTest < TestCase
504
450
 
505
451
  call_tree = method.call_trees.callers[2]
506
452
  assert_equal('Allocator#make_hashes', call_tree.parent.target.full_name)
507
- assert_equal(1160.0, call_tree.total_time)
453
+ assert_equal(200.0, call_tree.total_time)
508
454
  assert_equal(0.0, call_tree.wait_time)
509
- assert_equal(1160.0, call_tree.self_time)
455
+ assert_equal(200.0, call_tree.self_time)
510
456
  assert_equal(0.0, call_tree.children_time)
511
457
 
512
458
  call_tree = method.call_trees.callers[3]
@@ -545,32 +491,8 @@ class MeasureMemoryTraceTest < TestCase
545
491
  assert_equal(40.0, call_tree.self_time)
546
492
  assert_equal(0.0, call_tree.children_time)
547
493
 
548
- # Method 4
549
- method = methods[4]
550
- assert_equal('Allocator#make_hashes', method.full_name)
551
- assert_equal(1160.0, method.total_time)
552
- assert_equal(0.0, method.wait_time)
553
- assert_equal(0.0, method.self_time)
554
- assert_equal(1160.0, method.children_time)
555
-
556
- assert_equal(1, method.call_trees.callers.length)
557
- call_tree = method.call_trees.callers[0]
558
- assert_equal('Allocator#internal_run', call_tree.parent.target.full_name)
559
- assert_equal(1160.0, call_tree.total_time)
560
- assert_equal(0.0, call_tree.wait_time)
561
- assert_equal(0.0, call_tree.self_time)
562
- assert_equal(1160.0, call_tree.children_time)
563
-
564
- assert_equal(1, method.call_trees.callees.length)
565
- call_tree = method.call_trees.callees[0]
566
- assert_equal('Class#new', call_tree.target.full_name)
567
- assert_equal(1160.0, call_tree.total_time)
568
- assert_equal(0.0, call_tree.wait_time)
569
- assert_equal(1160.0, call_tree.self_time)
570
- assert_equal(0.0, call_tree.children_time)
571
-
572
- # Method 5
573
- method = methods[5]
494
+ # Method 3
495
+ method = methods[3]
574
496
  assert_equal('Allocator#make_arrays', method.full_name)
575
497
  assert_equal(400.0, method.total_time)
576
498
  assert_equal(0.0, method.wait_time)
@@ -579,7 +501,7 @@ class MeasureMemoryTraceTest < TestCase
579
501
 
580
502
  assert_equal(1, method.call_trees.callers.length)
581
503
  call_tree = method.call_trees.callers[0]
582
- assert_equal('Allocator#internal_run', call_tree.parent.target.full_name)
504
+ assert_equal('Allocator#run', call_tree.parent.target.full_name)
583
505
  assert_equal(400.0, call_tree.total_time)
584
506
  assert_equal(0.0, call_tree.wait_time)
585
507
  assert_equal(0.0, call_tree.self_time)
@@ -593,8 +515,8 @@ class MeasureMemoryTraceTest < TestCase
593
515
  assert_equal(0.0, call_tree.self_time)
594
516
  assert_equal(400.0, call_tree.children_time)
595
517
 
596
- # Method 6
597
- method = methods[6]
518
+ # Method 4
519
+ method = methods[4]
598
520
  assert_equal('Integer#times', method.full_name)
599
521
  assert_equal(400.0, method.total_time)
600
522
  assert_equal(0.0, method.wait_time)
@@ -617,8 +539,32 @@ class MeasureMemoryTraceTest < TestCase
617
539
  assert_equal(400.0, call_tree.self_time)
618
540
  assert_equal(0.0, call_tree.children_time)
619
541
 
620
- # Method 7
621
- method = methods[7]
542
+ # Method 5
543
+ method = methods[5]
544
+ assert_equal('Allocator#make_hashes', method.full_name)
545
+ assert_equal(200.0, method.total_time)
546
+ assert_equal(0.0, method.wait_time)
547
+ assert_equal(0.0, method.self_time)
548
+ assert_equal(200.0, method.children_time)
549
+
550
+ assert_equal(1, method.call_trees.callers.length)
551
+ call_tree = method.call_trees.callers[0]
552
+ assert_equal('Allocator#run', call_tree.parent.target.full_name)
553
+ assert_equal(200.0, call_tree.total_time)
554
+ assert_equal(0.0, call_tree.wait_time)
555
+ assert_equal(0.0, call_tree.self_time)
556
+ assert_equal(200.0, call_tree.children_time)
557
+
558
+ assert_equal(1, method.call_trees.callees.length)
559
+ call_tree = method.call_trees.callees[0]
560
+ assert_equal('Class#new', call_tree.target.full_name)
561
+ assert_equal(200.0, call_tree.total_time)
562
+ assert_equal(0.0, call_tree.wait_time)
563
+ assert_equal(200.0, call_tree.self_time)
564
+ assert_equal(0.0, call_tree.children_time)
565
+
566
+ # Method 6
567
+ method = methods[6]
622
568
  assert_equal('Allocator#make_strings', method.full_name)
623
569
  assert_equal(160.0, method.total_time)
624
570
  assert_equal(0.0, method.wait_time)
@@ -627,7 +573,7 @@ class MeasureMemoryTraceTest < TestCase
627
573
 
628
574
  assert_equal(1, method.call_trees.callers.length)
629
575
  call_tree = method.call_trees.callers[0]
630
- assert_equal('Allocator#internal_run', call_tree.parent.target.full_name)
576
+ assert_equal('Allocator#run', call_tree.parent.target.full_name)
631
577
  assert_equal(160.0, call_tree.total_time)
632
578
  assert_equal(0.0, call_tree.wait_time)
633
579
  assert_equal(40.0, call_tree.self_time)
@@ -648,8 +594,8 @@ class MeasureMemoryTraceTest < TestCase
648
594
  assert_equal(40.0, call_tree.self_time)
649
595
  assert_equal(40.0, call_tree.children_time)
650
596
 
651
- # Method 8
652
- method = methods[8]
597
+ # Method 7
598
+ method = methods[7]
653
599
  assert_equal('String#*', method.full_name)
654
600
  assert_equal(40.0, method.total_time)
655
601
  assert_equal(0.0, method.wait_time)
@@ -666,8 +612,8 @@ class MeasureMemoryTraceTest < TestCase
666
612
 
667
613
  assert_equal(0.0, method.call_trees.callees.length)
668
614
 
669
- # Method 9
670
- method = methods[9]
615
+ # Method 8
616
+ method = methods[8]
671
617
  assert_equal('String#initialize', method.full_name)
672
618
  assert_equal(40.0, method.total_time)
673
619
  assert_equal(0.0, method.wait_time)
@@ -684,8 +630,8 @@ class MeasureMemoryTraceTest < TestCase
684
630
 
685
631
  assert_equal(0.0, method.call_trees.callees.length)
686
632
 
687
- # Method 10
688
- method = methods[10]
633
+ # Method 9
634
+ method = methods[9]
689
635
  assert_equal('BasicObject#initialize', method.full_name)
690
636
  assert_equal(0.0, method.total_time)
691
637
  assert_equal(0.0, method.wait_time)
@@ -702,8 +648,8 @@ class MeasureMemoryTraceTest < TestCase
702
648
 
703
649
  assert_equal(0.0, method.call_trees.callees.length)
704
650
 
705
- # Method 11
706
- method = methods[11]
651
+ # Method 10
652
+ method = methods[10]
707
653
  assert_equal('Hash#initialize', method.full_name)
708
654
  assert_equal(0.0, method.total_time)
709
655
  assert_equal(0.0, method.wait_time)
@@ -720,8 +666,8 @@ class MeasureMemoryTraceTest < TestCase
720
666
 
721
667
  assert_equal(0.0, method.call_trees.callees.length)
722
668
 
723
- # Method 12
724
- method = methods[12]
669
+ # Method 11
670
+ method = methods[11]
725
671
  assert_equal('Array#initialize', method.full_name)
726
672
  assert_equal(0.0, method.total_time)
727
673
  assert_equal(0.0, method.wait_time)
@@ -738,7 +684,7 @@ class MeasureMemoryTraceTest < TestCase
738
684
 
739
685
  assert_equal(0.0, method.call_trees.callees.length)
740
686
  end
741
- elsif Gem::Version.new(RUBY_VERSION) < Gem::Version.new('3.0')
687
+ else
742
688
  def test_memory
743
689
  result = RubyProf.profile do
744
690
  allocator = Allocator.new
@@ -747,18 +693,18 @@ class MeasureMemoryTraceTest < TestCase
747
693
 
748
694
  thread = result.threads.first
749
695
 
750
- assert_in_delta(800, thread.total_time, 1)
696
+ assert_in_delta(1040, thread.total_time, 1)
751
697
  methods = result.threads.first.methods.sort.reverse
752
698
  assert_equal(13, methods.length)
753
699
 
754
700
  # Method 0
755
701
  method = methods[0]
756
- assert_equal('MeasureMemoryTraceTest#test_memory', method.full_name)
757
- assert_in_delta(800, method.total_time, 1)
702
+ assert_equal('MeasureMemoryTest#test_memory', method.full_name)
703
+ assert_in_delta(1040, method.total_time, 1)
758
704
 
759
705
  assert_equal(0.0, method.wait_time)
760
706
  assert_equal(0.0, method.self_time)
761
- assert_in_delta(800, method.children_time, 1)
707
+ assert_in_delta(1040, method.children_time, 1)
762
708
  assert_equal(0, method.call_trees.callers.length)
763
709
 
764
710
  assert_equal(2, method.call_trees.callees.length)
@@ -771,50 +717,26 @@ class MeasureMemoryTraceTest < TestCase
771
717
 
772
718
  call_tree = method.call_trees.callees[1]
773
719
  assert_equal('Allocator#run', call_tree.target.full_name)
774
- assert_equal(760.0, call_tree.total_time)
720
+ assert_equal(1000.0, call_tree.total_time)
775
721
  assert_equal(0.0, call_tree.wait_time)
776
722
  assert_equal(0.0, call_tree.self_time)
777
- assert_equal(760.0, call_tree.children_time)
723
+ assert_equal(1000.0, call_tree.children_time)
778
724
 
779
725
  # Method 1
780
726
  method = methods[1]
781
727
  assert_equal('Allocator#run',method.full_name)
782
- assert_equal(760.0, method.total_time)
783
- assert_equal(0.0, method.wait_time)
784
- assert_equal(0.0, method.self_time)
785
- assert_equal(760.0, method.children_time)
786
-
787
- assert_equal(1, method.call_trees.callers.length)
788
- call_tree = method.call_trees.callers[0]
789
- assert_equal('MeasureMemoryTraceTest#test_memory', call_tree.parent.target.full_name)
790
- assert_equal(760.0, call_tree.total_time)
791
- assert_equal(0.0, call_tree.wait_time)
792
- assert_equal(0.0, call_tree.self_time)
793
- assert_equal(760.0, call_tree.children_time)
794
-
795
- assert_equal(1, method.call_trees.callees.length)
796
- call_tree = method.call_trees.callees[0]
797
- assert_equal('Allocator#internal_run', call_tree.target.full_name)
798
- assert_equal(760.0, call_tree.total_time)
799
- assert_equal(0.0, call_tree.wait_time)
800
- assert_equal(0.0, call_tree.self_time)
801
- assert_equal(760.0, call_tree.children_time)
802
-
803
- # Method 2
804
- method = methods[2]
805
- assert_equal('Allocator#internal_run', method.full_name)
806
- assert_equal(760.0, method.total_time)
728
+ assert_equal(1000.0, method.total_time)
807
729
  assert_equal(0.0, method.wait_time)
808
730
  assert_equal(0.0, method.self_time)
809
- assert_equal(760.0, method.children_time)
731
+ assert_equal(1000.0, method.children_time)
810
732
 
811
733
  assert_equal(1, method.call_trees.callers.length)
812
734
  call_tree = method.call_trees.callers[0]
813
- assert_equal('Allocator#run', call_tree.parent.target.full_name)
814
- assert_equal(760.0, call_tree.total_time)
735
+ assert_equal('MeasureMemoryTest#test_memory', call_tree.parent.target.full_name)
736
+ assert_equal(1000.0, call_tree.total_time)
815
737
  assert_equal(0.0, call_tree.wait_time)
816
738
  assert_equal(0.0, call_tree.self_time)
817
- assert_equal(760.0, call_tree.children_time)
739
+ assert_equal(1000.0, call_tree.children_time)
818
740
 
819
741
  assert_equal(3, method.call_trees.callees.length)
820
742
  call_tree = method.call_trees.callees[0]
@@ -833,49 +755,42 @@ class MeasureMemoryTraceTest < TestCase
833
755
 
834
756
  call_tree = method.call_trees.callees[2]
835
757
  assert_equal('Allocator#make_strings', call_tree.target.full_name)
836
- assert_equal(160.0, call_tree.total_time)
758
+ assert_equal(400.0, call_tree.total_time)
837
759
  assert_equal(0.0, call_tree.wait_time)
838
- assert_equal(40, call_tree.self_time)
839
- assert_equal(120.0, call_tree.children_time)
760
+ assert_equal(40.0, call_tree.self_time)
761
+ assert_equal(360.0, call_tree.children_time)
840
762
 
841
- # Method 3
842
- method = methods[3]
763
+ # Method 2
764
+ method = methods[2]
843
765
  assert_equal('Class#new', method.full_name)
844
- assert_equal(720.0, method.total_time)
766
+ assert_equal(440.0, method.total_time)
845
767
  assert_equal(0.0, method.wait_time)
846
- assert_equal(680.0, method.self_time)
847
- assert_equal(40.0, method.children_time)
768
+ assert_equal(280.0, method.self_time)
769
+ assert_equal(160.0, method.children_time)
848
770
 
849
- assert_equal(4, method.call_trees.callers.length)
771
+ assert_equal(3, method.call_trees.callers.length)
850
772
  call_tree = method.call_trees.callers[0]
851
- assert_equal('MeasureMemoryTraceTest#test_memory', call_tree.parent.target.full_name)
773
+ assert_equal('MeasureMemoryTest#test_memory', call_tree.parent.target.full_name)
852
774
  assert_equal(40.0, call_tree.total_time)
853
775
  assert_equal(0.0, call_tree.wait_time)
854
776
  assert_equal(40.0, call_tree.self_time)
855
777
  assert_equal(0.0, call_tree.children_time)
856
778
 
857
779
  call_tree = method.call_trees.callers[1]
858
- assert_equal('Integer#times', call_tree.parent.target.full_name)
859
- assert_equal(400.0, call_tree.total_time)
860
- assert_equal(0.0, call_tree.wait_time)
861
- assert_equal(400.0, call_tree.self_time)
862
- assert_equal(0.0, call_tree.children_time)
863
-
864
- call_tree = method.call_trees.callers[2]
865
780
  assert_equal('Allocator#make_hashes', call_tree.parent.target.full_name)
866
781
  assert_equal(200.0, call_tree.total_time)
867
782
  assert_equal(0.0, call_tree.wait_time)
868
783
  assert_equal(200.0, call_tree.self_time)
869
784
  assert_equal(0.0, call_tree.children_time)
870
785
 
871
- call_tree = method.call_trees.callers[3]
786
+ call_tree = method.call_trees.callers[2]
872
787
  assert_equal('Allocator#make_strings', call_tree.parent.target.full_name)
873
- assert_equal(80.0, call_tree.total_time)
788
+ assert_equal(200.0, call_tree.total_time)
874
789
  assert_equal(0.0, call_tree.wait_time)
875
790
  assert_equal(40.0, call_tree.self_time)
876
- assert_equal(40.0, call_tree.children_time)
791
+ assert_equal(160.0, call_tree.children_time)
877
792
 
878
- assert_equal(4, method.call_trees.callees.length)
793
+ assert_equal(3, method.call_trees.callees.length)
879
794
  call_tree = method.call_trees.callees[0]
880
795
  assert_equal('BasicObject#initialize', call_tree.target.full_name)
881
796
  assert_equal(0.0, call_tree.total_time)
@@ -884,26 +799,50 @@ class MeasureMemoryTraceTest < TestCase
884
799
  assert_equal(0.0, call_tree.children_time)
885
800
 
886
801
  call_tree = method.call_trees.callees[1]
887
- assert_equal('Array#initialize', call_tree.target.full_name)
802
+ assert_equal('Hash#initialize', call_tree.target.full_name)
888
803
  assert_equal(0.0, call_tree.total_time)
889
804
  assert_equal(0.0, call_tree.wait_time)
890
805
  assert_equal(0.0, call_tree.self_time)
891
806
  assert_equal(0.0, call_tree.children_time)
892
807
 
893
808
  call_tree = method.call_trees.callees[2]
894
- assert_equal('Hash#initialize', call_tree.target.full_name)
895
- assert_equal(0.0, call_tree.total_time)
809
+ assert_equal('String#initialize', call_tree.target.full_name)
810
+ assert_equal(160.0, call_tree.total_time)
896
811
  assert_equal(0.0, call_tree.wait_time)
897
- assert_equal(0.0, call_tree.self_time)
812
+ assert_equal(160.0, call_tree.self_time)
898
813
  assert_equal(0.0, call_tree.children_time)
899
814
 
900
- call_tree = method.call_trees.callees[3]
901
- assert_equal('String#initialize', call_tree.target.full_name)
902
- assert_equal(40.0, call_tree.total_time)
903
- assert_equal(0.0, call_tree.wait_time)
815
+ # Method 3
816
+ method = methods[3]
817
+ assert_equal('Allocator#make_strings', method.full_name)
818
+ assert_equal(400.0, method.total_time)
819
+ assert_equal(0.0, method.wait_time)
820
+ assert_equal(40.0, method.self_time)
821
+ assert_equal(360.0, method.children_time)
822
+
823
+ assert_equal(1, method.call_trees.callers.length)
824
+ call_tree = method.call_trees.callers[0]
825
+ assert_equal('Allocator#run', call_tree.parent.target.full_name)
826
+ assert_equal(400.0, call_tree.total_time)
827
+ assert_equal(0.0, call_tree.wait_time)
904
828
  assert_equal(40.0, call_tree.self_time)
829
+ assert_equal(360.0, call_tree.children_time)
830
+
831
+ assert_equal(2, method.call_trees.callees.length)
832
+ call_tree = method.call_trees.callees[0]
833
+ assert_equal('String#*', call_tree.target.full_name)
834
+ assert_equal(160.0, call_tree.total_time)
835
+ assert_equal(0.0, call_tree.wait_time)
836
+ assert_equal(160.0, call_tree.self_time)
905
837
  assert_equal(0.0, call_tree.children_time)
906
838
 
839
+ call_tree = method.call_trees.callees[1]
840
+ assert_equal('Class#new', call_tree.target.full_name)
841
+ assert_equal(200.0, call_tree.total_time)
842
+ assert_equal(0.0, call_tree.wait_time)
843
+ assert_equal(40.0, call_tree.self_time)
844
+ assert_equal(160.0, call_tree.children_time)
845
+
907
846
  # Method 4
908
847
  method = methods[4]
909
848
  assert_equal('Allocator#make_arrays', method.full_name)
@@ -914,7 +853,7 @@ class MeasureMemoryTraceTest < TestCase
914
853
 
915
854
  assert_equal(1, method.call_trees.callers.length)
916
855
  call_tree = method.call_trees.callers[0]
917
- assert_equal('Allocator#internal_run', call_tree.parent.target.full_name)
856
+ assert_equal('Allocator#run', call_tree.parent.target.full_name)
918
857
  assert_equal(400.0, call_tree.total_time)
919
858
  assert_equal(0.0, call_tree.wait_time)
920
859
  assert_equal(0.0, call_tree.self_time)
@@ -946,7 +885,7 @@ class MeasureMemoryTraceTest < TestCase
946
885
 
947
886
  assert_equal(1, method.call_trees.callees.length)
948
887
  call_tree = method.call_trees.callees[0]
949
- assert_equal('Class#new', call_tree.target.full_name)
888
+ assert_equal('<Class::Array>#new', call_tree.target.full_name)
950
889
  assert_equal(400.0, call_tree.total_time)
951
890
  assert_equal(0.0, call_tree.wait_time)
952
891
  assert_equal(400.0, call_tree.self_time)
@@ -954,432 +893,66 @@ class MeasureMemoryTraceTest < TestCase
954
893
 
955
894
  # Method 6
956
895
  method = methods[6]
957
- assert_equal('Allocator#make_hashes', method.full_name)
958
- assert_equal(200.0, method.total_time)
959
- assert_equal(0.0, method.wait_time)
960
- assert_equal(0.0, method.self_time)
961
- assert_equal(200.0, method.children_time)
962
-
963
- assert_equal(1, method.call_trees.callers.length)
964
- call_tree = method.call_trees.callers[0]
965
- assert_equal('Allocator#internal_run', call_tree.parent.target.full_name)
966
- assert_equal(200.0, call_tree.total_time)
967
- assert_equal(0.0, call_tree.wait_time)
968
- assert_equal(0.0, call_tree.self_time)
969
- assert_equal(200.0, call_tree.children_time)
970
-
971
- assert_equal(1, method.call_trees.callees.length)
972
- call_tree = method.call_trees.callees[0]
973
- assert_equal('Class#new', call_tree.target.full_name)
974
- assert_equal(200.0, call_tree.total_time)
975
- assert_equal(0.0, call_tree.wait_time)
976
- assert_equal(200.0, call_tree.self_time)
977
- assert_equal(0.0, call_tree.children_time)
978
-
979
- # Method 7
980
- method = methods[7]
981
- assert_equal('Allocator#make_strings', method.full_name)
982
- assert_equal(160.0, method.total_time)
983
- assert_equal(0.0, method.wait_time)
984
- assert_equal(40.0, method.self_time)
985
- assert_equal(120.0, method.children_time)
986
-
987
- assert_equal(1, method.call_trees.callers.length)
988
- call_tree = method.call_trees.callers[0]
989
- assert_equal('Allocator#internal_run', call_tree.parent.target.full_name)
990
- assert_equal(160.0, call_tree.total_time)
991
- assert_equal(0.0, call_tree.wait_time)
992
- assert_equal(40.0, call_tree.self_time)
993
- assert_equal(120.0, call_tree.children_time)
994
-
995
- assert_equal(2, method.call_trees.callees.length)
996
- call_tree = method.call_trees.callees[0]
997
- assert_equal('String#*', call_tree.target.full_name)
998
- assert_equal(40.0, call_tree.total_time)
999
- assert_equal(0.0, call_tree.wait_time)
1000
- assert_equal(40.0, call_tree.self_time)
1001
- assert_equal(0.0, call_tree.children_time)
1002
-
1003
- call_tree = method.call_trees.callees[1]
1004
- assert_equal('Class#new', call_tree.target.full_name)
1005
- assert_equal(80.0, call_tree.total_time)
1006
- assert_equal(0.0, call_tree.wait_time)
1007
- assert_equal(40.0, call_tree.self_time)
1008
- assert_equal(40.0, call_tree.children_time)
1009
-
1010
- # Method 8
1011
- method = methods[8]
1012
- assert_equal('String#*', method.full_name)
1013
- assert_equal(40.0, method.total_time)
1014
- assert_equal(0.0, method.wait_time)
1015
- assert_equal(40.0, method.self_time)
1016
- assert_equal(0.0, method.children_time)
1017
-
1018
- assert_equal(1, method.call_trees.callers.length)
1019
- call_tree = method.call_trees.callers[0]
1020
- assert_equal('Allocator#make_strings', call_tree.parent.target.full_name)
1021
- assert_equal(40.0, call_tree.total_time)
1022
- assert_equal(0.0, call_tree.wait_time)
1023
- assert_equal(40.0, call_tree.self_time)
1024
- assert_equal(0.0, call_tree.children_time)
1025
-
1026
- assert_equal(0.0, method.call_trees.callees.length)
1027
-
1028
- # Method 9
1029
- method = methods[9]
1030
- assert_equal('String#initialize', method.full_name)
1031
- assert_equal(40.0, method.total_time)
1032
- assert_equal(0.0, method.wait_time)
1033
- assert_equal(40.0, method.self_time)
1034
- assert_equal(0.0, method.children_time)
1035
-
1036
- assert_equal(1, method.call_trees.callers.length)
1037
- call_tree = method.call_trees.callers[0]
1038
- assert_equal('Class#new', call_tree.parent.target.full_name)
1039
- assert_equal(40.0, call_tree.total_time)
1040
- assert_equal(0.0, call_tree.wait_time)
1041
- assert_equal(40.0, call_tree.self_time)
1042
- assert_equal(0.0, call_tree.children_time)
1043
-
1044
- assert_equal(0.0, method.call_trees.callees.length)
1045
-
1046
- # Method 10
1047
- method = methods[10]
1048
- assert_equal('BasicObject#initialize', method.full_name)
1049
- assert_equal(0.0, method.total_time)
1050
- assert_equal(0.0, method.wait_time)
1051
- assert_equal(0.0, method.self_time)
1052
- assert_equal(0.0, method.children_time)
1053
-
1054
- assert_equal(1, method.call_trees.callers.length)
1055
- call_tree = method.call_trees.callers[0]
1056
- assert_equal('Class#new', call_tree.parent.target.full_name)
1057
- assert_equal(0.0, call_tree.total_time)
1058
- assert_equal(0.0, call_tree.wait_time)
1059
- assert_equal(0.0, call_tree.self_time)
1060
- assert_equal(0.0, call_tree.children_time)
1061
-
1062
- assert_equal(0.0, method.call_trees.callees.length)
1063
-
1064
- # Method 11
1065
- method = methods[11]
1066
- assert_equal('Hash#initialize', method.full_name)
1067
- assert_equal(0.0, method.total_time)
1068
- assert_equal(0.0, method.wait_time)
1069
- assert_equal(0.0, method.self_time)
1070
- assert_equal(0.0, method.children_time)
1071
-
1072
- assert_equal(1, method.call_trees.callers.length)
1073
- call_tree = method.call_trees.callers[0]
1074
- assert_equal('Class#new', call_tree.parent.target.full_name)
1075
- assert_equal(0.0, call_tree.total_time)
1076
- assert_equal(0.0, call_tree.wait_time)
1077
- assert_equal(0.0, call_tree.self_time)
1078
- assert_equal(0.0, call_tree.children_time)
1079
-
1080
- assert_equal(0.0, method.call_trees.callees.length)
1081
-
1082
- # Method 12
1083
- method = methods[12]
1084
- assert_equal('Array#initialize', method.full_name)
1085
- assert_equal(0.0, method.total_time)
896
+ assert_equal('<Class::Array>#new', method.full_name)
897
+ assert_equal(400.0, method.total_time)
1086
898
  assert_equal(0.0, method.wait_time)
1087
- assert_equal(0.0, method.self_time)
899
+ assert_equal(400.0, method.self_time)
1088
900
  assert_equal(0.0, method.children_time)
1089
901
 
1090
902
  assert_equal(1, method.call_trees.callers.length)
1091
903
  call_tree = method.call_trees.callers[0]
1092
- assert_equal('Class#new', call_tree.parent.target.full_name)
1093
- assert_equal(0.0, call_tree.total_time)
1094
- assert_equal(0.0, call_tree.wait_time)
1095
- assert_equal(0.0, call_tree.self_time)
1096
- assert_equal(0.0, call_tree.children_time)
1097
-
1098
- assert_equal(0.0, method.call_trees.callees.length)
1099
- end
1100
- else
1101
- def test_memory
1102
- result = RubyProf.profile do
1103
- allocator = Allocator.new
1104
- allocator.run
1105
- end
1106
-
1107
- thread = result.threads.first
1108
-
1109
- assert_in_delta(1680, thread.total_time, 1)
1110
- methods = result.threads.first.methods.sort.reverse
1111
- assert_equal(13, methods.length)
1112
-
1113
- # Method 0
1114
- method = methods[0]
1115
- assert_equal('MeasureMemoryTraceTest#test_memory', method.full_name)
1116
- assert_in_delta(1680, method.total_time, 1)
1117
-
1118
- assert_equal(0.0, method.wait_time)
1119
- assert_equal(80.0, method.self_time)
1120
- assert_in_delta(1600, method.children_time, 1)
1121
- assert_equal(0, method.call_trees.callers.length)
1122
-
1123
- assert_equal(2, method.call_trees.callees.length)
1124
- call_tree = method.call_trees.callees[0]
1125
- assert_equal('Class#new', call_tree.target.full_name)
1126
- assert_equal(40.0, call_tree.total_time)
1127
- assert_equal(0.0, call_tree.wait_time)
1128
- assert_equal(40.0, call_tree.self_time)
1129
- assert_equal(0.0, call_tree.children_time)
1130
-
1131
- call_tree = method.call_trees.callees[1]
1132
- assert_equal('Allocator#run', call_tree.target.full_name)
1133
- assert_equal(1560.0, call_tree.total_time)
1134
- assert_equal(0.0, call_tree.wait_time)
1135
- assert_equal(40.0, call_tree.self_time)
1136
- assert_equal(1520.0, call_tree.children_time)
1137
-
1138
- # Method 1
1139
- method = methods[1]
1140
- assert_equal('Allocator#run',method.full_name)
1141
- assert_equal(1560.0, method.total_time)
1142
- assert_equal(0.0, method.wait_time)
1143
- assert_equal(40.0, method.self_time)
1144
- assert_equal(1520.0, method.children_time)
1145
-
1146
- assert_equal(1, method.call_trees.callers.length)
1147
- call_tree = method.call_trees.callers[0]
1148
- assert_equal('MeasureMemoryTraceTest#test_memory', call_tree.parent.target.full_name)
1149
- assert_equal(1560.0, call_tree.total_time)
1150
- assert_equal(0.0, call_tree.wait_time)
1151
- assert_equal(40.0, call_tree.self_time)
1152
- assert_equal(1520.0, call_tree.children_time)
1153
-
1154
- assert_equal(1, method.call_trees.callees.length)
1155
- call_tree = method.call_trees.callees[0]
1156
- assert_equal('Allocator#internal_run', call_tree.target.full_name)
1157
- assert_equal(1520.0, call_tree.total_time)
1158
- assert_equal(0.0, call_tree.wait_time)
1159
- assert_equal(120.0, call_tree.self_time)
1160
- assert_equal(1400.0, call_tree.children_time)
1161
-
1162
- # Method 2
1163
- method = methods[2]
1164
- assert_equal('Allocator#internal_run', method.full_name)
1165
- assert_equal(1520.0, method.total_time)
1166
- assert_equal(0.0, method.wait_time)
1167
- assert_equal(120.0, method.self_time)
1168
- assert_equal(1400.0, method.children_time)
1169
-
1170
- assert_equal(1, method.call_trees.callers.length)
1171
- call_tree = method.call_trees.callers[0]
1172
- assert_equal('Allocator#run', call_tree.parent.target.full_name)
1173
- assert_equal(1520.0, call_tree.total_time)
1174
- assert_equal(0.0, call_tree.wait_time)
1175
- assert_equal(120.0, call_tree.self_time)
1176
- assert_equal(1400.0, call_tree.children_time)
1177
-
1178
- assert_equal(3, method.call_trees.callees.length)
1179
- call_tree = method.call_trees.callees[0]
1180
- assert_equal('Allocator#make_arrays', call_tree.target.full_name)
1181
- assert_equal(400.0, call_tree.total_time)
1182
- assert_equal(0.0, call_tree.wait_time)
1183
- assert_equal(0.0, call_tree.self_time)
1184
- assert_equal(400.0, call_tree.children_time)
1185
-
1186
- call_tree = method.call_trees.callees[1]
1187
- assert_equal('Allocator#make_hashes', call_tree.target.full_name)
1188
- assert_equal(840.0, call_tree.total_time)
1189
- assert_equal(0.0, call_tree.wait_time)
1190
- assert_equal(0.0, call_tree.self_time)
1191
- assert_equal(840.0, call_tree.children_time)
1192
-
1193
- call_tree = method.call_trees.callees[2]
1194
- assert_equal('Allocator#make_strings', call_tree.target.full_name)
1195
- assert_equal(160.0, call_tree.total_time)
1196
- assert_equal(0.0, call_tree.wait_time)
1197
- assert_equal(40, call_tree.self_time)
1198
- assert_equal(120.0, call_tree.children_time)
1199
-
1200
- # Method 3
1201
- method = methods[3]
1202
- assert_equal('Class#new', method.full_name)
1203
- assert_equal(1360.0, method.total_time)
1204
- assert_equal(0.0, method.wait_time)
1205
- assert_equal(1320.0, method.self_time)
1206
- assert_equal(40.0, method.children_time)
1207
-
1208
- assert_equal(4, method.call_trees.callers.length)
1209
- call_tree = method.call_trees.callers[0]
1210
- assert_equal('MeasureMemoryTraceTest#test_memory', call_tree.parent.target.full_name)
1211
- assert_equal(40.0, call_tree.total_time)
1212
- assert_equal(0.0, call_tree.wait_time)
1213
- assert_equal(40.0, call_tree.self_time)
1214
- assert_equal(0.0, call_tree.children_time)
1215
-
1216
- call_tree = method.call_trees.callers[1]
1217
904
  assert_equal('Integer#times', call_tree.parent.target.full_name)
1218
905
  assert_equal(400.0, call_tree.total_time)
1219
906
  assert_equal(0.0, call_tree.wait_time)
1220
907
  assert_equal(400.0, call_tree.self_time)
1221
908
  assert_equal(0.0, call_tree.children_time)
1222
909
 
1223
- call_tree = method.call_trees.callers[2]
1224
- assert_equal('Allocator#make_hashes', call_tree.parent.target.full_name)
1225
- assert_equal(840.0, call_tree.total_time)
1226
- assert_equal(0.0, call_tree.wait_time)
1227
- assert_equal(840.0, call_tree.self_time)
1228
- assert_equal(0.0, call_tree.children_time)
1229
-
1230
- call_tree = method.call_trees.callers[3]
1231
- assert_equal('Allocator#make_strings', call_tree.parent.target.full_name)
1232
- assert_equal(80.0, call_tree.total_time)
1233
- assert_equal(0.0, call_tree.wait_time)
1234
- assert_equal(40.0, call_tree.self_time)
1235
- assert_equal(40.0, call_tree.children_time)
1236
-
1237
- assert_equal(4, method.call_trees.callees.length)
910
+ assert_equal(1, method.call_trees.callees.length)
1238
911
  call_tree = method.call_trees.callees[0]
1239
- assert_equal('BasicObject#initialize', call_tree.target.full_name)
1240
- assert_equal(0.0, call_tree.total_time)
1241
- assert_equal(0.0, call_tree.wait_time)
1242
- assert_equal(0.0, call_tree.self_time)
1243
- assert_equal(0.0, call_tree.children_time)
1244
-
1245
- call_tree = method.call_trees.callees[1]
1246
912
  assert_equal('Array#initialize', call_tree.target.full_name)
1247
913
  assert_equal(0.0, call_tree.total_time)
1248
914
  assert_equal(0.0, call_tree.wait_time)
1249
915
  assert_equal(0.0, call_tree.self_time)
1250
916
  assert_equal(0.0, call_tree.children_time)
1251
917
 
1252
- call_tree = method.call_trees.callees[2]
1253
- assert_equal('Hash#initialize', call_tree.target.full_name)
1254
- assert_equal(0.0, call_tree.total_time)
1255
- assert_equal(0.0, call_tree.wait_time)
1256
- assert_equal(0.0, call_tree.self_time)
1257
- assert_equal(0.0, call_tree.children_time)
1258
-
1259
- call_tree = method.call_trees.callees[3]
1260
- assert_equal('String#initialize', call_tree.target.full_name)
1261
- assert_equal(40.0, call_tree.total_time)
1262
- assert_equal(0.0, call_tree.wait_time)
1263
- assert_equal(40.0, call_tree.self_time)
1264
- assert_equal(0.0, call_tree.children_time)
1265
-
1266
- # Method 4
1267
- method = methods[4]
918
+ # Method 7
919
+ method = methods[7]
1268
920
  assert_equal('Allocator#make_hashes', method.full_name)
1269
- assert_equal(840.0, method.total_time)
1270
- assert_equal(0.0, method.wait_time)
1271
- assert_equal(0.0, method.self_time)
1272
- assert_equal(840.0, method.children_time)
1273
-
1274
- assert_equal(1, method.call_trees.callers.length)
1275
- call_tree = method.call_trees.callers[0]
1276
- assert_equal('Allocator#internal_run', call_tree.parent.target.full_name)
1277
- assert_equal(840.0, call_tree.total_time)
1278
- assert_equal(0.0, call_tree.wait_time)
1279
- assert_equal(0.0, call_tree.self_time)
1280
- assert_equal(840.0, call_tree.children_time)
1281
-
1282
- assert_equal(1, method.call_trees.callees.length)
1283
- call_tree = method.call_trees.callees[0]
1284
- assert_equal('Class#new', call_tree.target.full_name)
1285
- assert_equal(840.0, call_tree.total_time)
1286
- assert_equal(0.0, call_tree.wait_time)
1287
- assert_equal(840.0, call_tree.self_time)
1288
- assert_equal(0.0, call_tree.children_time)
1289
-
1290
- # Method 5
1291
- method = methods[5]
1292
- assert_equal('Allocator#make_arrays', method.full_name)
1293
- assert_equal(400.0, method.total_time)
1294
- assert_equal(0.0, method.wait_time)
1295
- assert_equal(0.0, method.self_time)
1296
- assert_equal(400.0, method.children_time)
1297
-
1298
- assert_equal(1, method.call_trees.callers.length)
1299
- call_tree = method.call_trees.callers[0]
1300
- assert_equal('Allocator#internal_run', call_tree.parent.target.full_name)
1301
- assert_equal(400.0, call_tree.total_time)
1302
- assert_equal(0.0, call_tree.wait_time)
1303
- assert_equal(0.0, call_tree.self_time)
1304
- assert_equal(400.0, call_tree.children_time)
1305
-
1306
- assert_equal(1, method.call_trees.callees.length)
1307
- call_tree = method.call_trees.callees[0]
1308
- assert_equal('Integer#times', call_tree.target.full_name)
1309
- assert_equal(400.0, call_tree.total_time)
1310
- assert_equal(0.0, call_tree.wait_time)
1311
- assert_equal(0.0, call_tree.self_time)
1312
- assert_equal(400.0, call_tree.children_time)
1313
-
1314
- # Method 6
1315
- method = methods[6]
1316
- assert_equal('Integer#times', method.full_name)
1317
- assert_equal(400.0, method.total_time)
921
+ assert_equal(200.0, method.total_time)
1318
922
  assert_equal(0.0, method.wait_time)
1319
923
  assert_equal(0.0, method.self_time)
1320
- assert_equal(400.0, method.children_time)
924
+ assert_equal(200.0, method.children_time)
1321
925
 
1322
926
  assert_equal(1, method.call_trees.callers.length)
1323
927
  call_tree = method.call_trees.callers[0]
1324
- assert_equal('Allocator#make_arrays', call_tree.parent.target.full_name)
1325
- assert_equal(400.0, call_tree.total_time)
928
+ assert_equal('Allocator#run', call_tree.parent.target.full_name)
929
+ assert_equal(200.0, call_tree.total_time)
1326
930
  assert_equal(0.0, call_tree.wait_time)
1327
931
  assert_equal(0.0, call_tree.self_time)
1328
- assert_equal(400.0, call_tree.children_time)
932
+ assert_equal(200.0, call_tree.children_time)
1329
933
 
1330
934
  assert_equal(1, method.call_trees.callees.length)
1331
935
  call_tree = method.call_trees.callees[0]
1332
936
  assert_equal('Class#new', call_tree.target.full_name)
1333
- assert_equal(400.0, call_tree.total_time)
1334
- assert_equal(0.0, call_tree.wait_time)
1335
- assert_equal(400.0, call_tree.self_time)
1336
- assert_equal(0.0, call_tree.children_time)
1337
-
1338
- # Method 7
1339
- method = methods[7]
1340
- assert_equal('Allocator#make_strings', method.full_name)
1341
- assert_equal(160.0, method.total_time)
1342
- assert_equal(0.0, method.wait_time)
1343
- assert_equal(40.0, method.self_time)
1344
- assert_equal(120.0, method.children_time)
1345
-
1346
- assert_equal(1, method.call_trees.callers.length)
1347
- call_tree = method.call_trees.callers[0]
1348
- assert_equal('Allocator#internal_run', call_tree.parent.target.full_name)
1349
- assert_equal(160.0, call_tree.total_time)
1350
- assert_equal(0.0, call_tree.wait_time)
1351
- assert_equal(40.0, call_tree.self_time)
1352
- assert_equal(120.0, call_tree.children_time)
1353
-
1354
- assert_equal(2, method.call_trees.callees.length)
1355
- call_tree = method.call_trees.callees[0]
1356
- assert_equal('String#*', call_tree.target.full_name)
1357
- assert_equal(40.0, call_tree.total_time)
937
+ assert_equal(200.0, call_tree.total_time)
1358
938
  assert_equal(0.0, call_tree.wait_time)
1359
- assert_equal(40.0, call_tree.self_time)
939
+ assert_equal(200.0, call_tree.self_time)
1360
940
  assert_equal(0.0, call_tree.children_time)
1361
941
 
1362
- call_tree = method.call_trees.callees[1]
1363
- assert_equal('Class#new', call_tree.target.full_name)
1364
- assert_equal(80.0, call_tree.total_time)
1365
- assert_equal(0.0, call_tree.wait_time)
1366
- assert_equal(40.0, call_tree.self_time)
1367
- assert_equal(40.0, call_tree.children_time)
1368
-
1369
942
  # Method 8
1370
943
  method = methods[8]
1371
944
  assert_equal('String#*', method.full_name)
1372
- assert_equal(40.0, method.total_time)
945
+ assert_equal(160.0, method.total_time)
1373
946
  assert_equal(0.0, method.wait_time)
1374
- assert_equal(40.0, method.self_time)
947
+ assert_equal(160.0, method.self_time)
1375
948
  assert_equal(0.0, method.children_time)
1376
949
 
1377
950
  assert_equal(1, method.call_trees.callers.length)
1378
951
  call_tree = method.call_trees.callers[0]
1379
952
  assert_equal('Allocator#make_strings', call_tree.parent.target.full_name)
1380
- assert_equal(40.0, call_tree.total_time)
953
+ assert_equal(160.0, call_tree.total_time)
1381
954
  assert_equal(0.0, call_tree.wait_time)
1382
- assert_equal(40.0, call_tree.self_time)
955
+ assert_equal(160.0, call_tree.self_time)
1383
956
  assert_equal(0.0, call_tree.children_time)
1384
957
 
1385
958
  assert_equal(0.0, method.call_trees.callees.length)
@@ -1387,17 +960,17 @@ class MeasureMemoryTraceTest < TestCase
1387
960
  # Method 9
1388
961
  method = methods[9]
1389
962
  assert_equal('String#initialize', method.full_name)
1390
- assert_equal(40.0, method.total_time)
963
+ assert_equal(160.0, method.total_time)
1391
964
  assert_equal(0.0, method.wait_time)
1392
- assert_equal(40.0, method.self_time)
965
+ assert_equal(160.0, method.self_time)
1393
966
  assert_equal(0.0, method.children_time)
1394
967
 
1395
968
  assert_equal(1, method.call_trees.callers.length)
1396
969
  call_tree = method.call_trees.callers[0]
1397
970
  assert_equal('Class#new', call_tree.parent.target.full_name)
1398
- assert_equal(40.0, call_tree.total_time)
971
+ assert_equal(160.0, call_tree.total_time)
1399
972
  assert_equal(0.0, call_tree.wait_time)
1400
- assert_equal(40.0, call_tree.self_time)
973
+ assert_equal(160.0, call_tree.self_time)
1401
974
  assert_equal(0.0, call_tree.children_time)
1402
975
 
1403
976
  assert_equal(0.0, method.call_trees.callees.length)
@@ -1448,7 +1021,7 @@ class MeasureMemoryTraceTest < TestCase
1448
1021
 
1449
1022
  assert_equal(1, method.call_trees.callers.length)
1450
1023
  call_tree = method.call_trees.callers[0]
1451
- assert_equal('Class#new', call_tree.parent.target.full_name)
1024
+ assert_equal('<Class::Array>#new', call_tree.parent.target.full_name)
1452
1025
  assert_equal(0.0, call_tree.total_time)
1453
1026
  assert_equal(0.0, call_tree.wait_time)
1454
1027
  assert_equal(0.0, call_tree.self_time)