Skip to content

Commit 3519610

Browse files
committed
Add Memprof.
1 parent c93f08a commit 3519610

File tree

5 files changed

+13
-3
lines changed

5 files changed

+13
-3
lines changed

Diff for: Gemfile

+1
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ group :development do
1212
platforms :mri_18 do
1313
gem 'ruby-prof', '0.9.1'
1414
gem 'ruby-debug', '0.10.3'
15+
gem 'memprof', '0.3.6'
1516
end
1617
end
1718

Diff for: Rakefile

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
require 'rake'
22
require 'rake/testtask'
33
require 'rake/rdoctask'
4-
begin ; require 'ruby-prof' ; rescue LoadError ; end
54

65

76
def test_libs(mode='odbc')
@@ -57,7 +56,7 @@ namespace :profile do
5756
end
5857
end
5958

60-
end if defined?(RubyProf)
59+
end
6160

6261

6362
namespace :rvm do

Diff for: test/cases/sqlserver_helper.rb

+2
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@
2020
require 'models/topic'
2121
require 'active_record/version'
2222

23+
GC.copy_on_write_friendly = true if GC.respond_to?(:copy_on_write_friendly?)
24+
2325
ActiveRecord::Migration.verbose = false
2426

2527
# Defining our classes in one place as well as soem core tests that need coercing date/time types.

Diff for: test/profile/connection.rb

+2-1
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,9 @@ def setup
1111
end
1212

1313
def test_select
14+
select_statement = "SELECT [topics].* FROM [topics]"
1415
ruby_profile :connection_select do
15-
1000.times { @connection.send :select, "SELECT [topics].* FROM [topics]" }
16+
1000.times { @connection.send :select, select_statement }
1617
end
1718
end
1819

Diff for: test/profile/helper.rb

+7
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,18 @@
11
require 'cases/sqlserver_helper'
22
require 'ruby-prof'
3+
require 'memprof'
34

45
class ActiveRecord::TestCase
56

67

78
protected
89

10+
def mem_profile(*args)
11+
Memprof.track do
12+
yield
13+
end
14+
end
15+
916
def ruby_profile(name)
1017
result = RubyProf.profile { yield }
1118
[:flat,:graph,:html].each do |printer|

0 commit comments

Comments
 (0)