Module: TestProf
- Extended by:
- Logging
- Defined in:
- lib/test_prof.rb,
lib/test_prof/utils.rb,
lib/test_prof/logging.rb,
lib/test_prof/version.rb,
lib/test_prof/tag_prof.rb,
lib/test_prof/ruby_prof.rb,
lib/test_prof/before_all.rb,
lib/test_prof/event_prof.rb,
lib/test_prof/stack_prof.rb,
lib/test_prof/any_fixture.rb,
lib/test_prof/cops/inject.rb,
lib/test_prof/factory_bot.rb,
lib/test_prof/rspec_stamp.rb,
lib/test_prof/utils/rspec.rb,
lib/test_prof/factory_prof.rb,
lib/test_prof/rspec_dissect.rb,
lib/test_prof/factory_doctor.rb,
lib/test_prof/tag_prof/rspec.rb,
lib/test_prof/any_fixture/dsl.rb,
lib/test_prof/factory_default.rb,
lib/test_prof/recipes/logging.rb,
lib/test_prof/ruby_prof/rspec.rb,
lib/test_prof/tag_prof/result.rb,
lib/test_prof/any_fixture/dump.rb,
lib/test_prof/event_prof/rspec.rb,
lib/test_prof/factory_all_stub.rb,
lib/test_prof/stack_prof/rspec.rb,
lib/test_prof/rspec_stamp/rspec.rb,
lib/test_prof/event_prof/monitor.rb,
lib/test_prof/ext/float_duration.rb,
lib/test_prof/rspec_stamp/parser.rb,
lib/test_prof/utils/html_builder.rb,
lib/test_prof/before_all/isolator.rb,
lib/test_prof/event_prof/profiler.rb,
lib/test_prof/ext/string_truncate.rb,
lib/test_prof/rspec_dissect/rspec.rb,
lib/test_prof/factory_doctor/rspec.rb,
lib/test_prof/recipes/rspec/sample.rb,
lib/test_prof/any_fixture/dump/digest.rb,
lib/test_prof/any_fixture/dump/sqlite.rb,
lib/test_prof/ext/array_bsearch_index.rb,
lib/test_prof/ext/string_parameterize.rb,
lib/test_prof/recipes/minitest/sample.rb,
lib/test_prof/recipes/rspec/let_it_be.rb,
lib/test_prof/utils/sized_ordered_set.rb,
lib/test_prof/event_prof/custom_events.rb,
lib/test_prof/ext/active_record_refind.rb,
lib/test_prof/ext/factory_bot_strategy.rb,
lib/test_prof/recipes/rspec/before_all.rb,
lib/test_prof/ruby_prof/rspec_exclusions.rb,
lib/test_prof/any_fixture/dump/postgresql.rb,
lib/test_prof/recipes/minitest/before_all.rb,
lib/test_prof/rspec_dissect/collectors/let.rb,
lib/test_prof/any_fixture/dump/base_adapter.rb,
lib/test_prof/rspec_dissect/collectors/base.rb,
lib/test_prof/factory_prof/fabrication_patch.rb,
lib/test_prof/factory_prof/factory_bot_patch.rb,
lib/test_prof/rspec_dissect/collectors/before.rb,
lib/test_prof/factory_doctor/fabrication_patch.rb,
lib/test_prof/factory_doctor/factory_bot_patch.rb,
lib/test_prof/before_all/adapters/active_record.rb,
lib/test_prof/factory_default/factory_bot_patch.rb,
lib/test_prof/factory_all_stub/factory_bot_patch.rb,
lib/test_prof/factory_prof/factory_builders/fabrication.rb,
lib/test_prof/factory_prof/factory_builders/factory_bot.rb
Overview
:nodoc: all
Defined Under Namespace
Modules: AnyFixture, ArrayBSearchIndex, BeforeAll, Cops, EventProf, Ext, FactoryAllStub, FactoryBotStrategy, FactoryDefault, FactoryDoctor, FactoryProf, FloatDuration, LetItBe, Logging, MinitestSample, RSpecDissect, RSpecStamp, RSpecWorldSamplePatch, Rails, RubyProf, StackProf, StringParameterize, StringTruncate, TagProf, Utils Classes: Configuration
Constant Summary collapse
- VERSION =
"1.0.2"
- FACTORY_GIRL_NAMES =
{"factory_bot" => "::FactoryBot", "factory_girl" => "::FactoryGirl"}.freeze
Constants included from Logging
Class Method Summary collapse
-
.activate(env_var, val = nil) ⇒ Object
Run block only if provided env var is present and equal to the provided value (if any).
-
.artifact_path(filename) ⇒ Object
Return a path to store artifact.
-
.asset_path(filename) ⇒ Object
Return absolute path to asset.
- .config ⇒ Object
- .configure {|config| ... } ⇒ Object
- .create_artifact_dir ⇒ Object
-
.minitest? ⇒ Boolean
Returns true if we’re inside Minitest.
-
.now ⇒ Object
Returns the current process time.
-
.require(gem_name, msg = nil) ⇒ Object
Require gem and shows a custom message if it fails to load.
-
.rspec? ⇒ Boolean
Returns true if we’re inside RSpec.
Methods included from Logging
Class Method Details
.activate(env_var, val = nil) ⇒ Object
Run block only if provided env var is present and equal to the provided value (if any). Contains workaround for applications using Spring.
65 66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'lib/test_prof.rb', line 65 def activate(env_var, val = nil) if defined?(::Spring::Application) notify_spring_detected ::Spring.after_fork do activate!(env_var, val) do notify_spring_activate env_var yield end end else activate!(env_var, val) { yield } end end |
.artifact_path(filename) ⇒ Object
Return a path to store artifact
85 86 87 88 89 90 91 92 93 94 95 96 |
# File 'lib/test_prof.rb', line 85 def artifact_path(filename) create_artifact_dir ( ::File.join( config.output_dir, with_report_suffix( filename ) ) ) end |
.asset_path(filename) ⇒ Object
Return absolute path to asset
80 81 82 |
# File 'lib/test_prof.rb', line 80 def asset_path(filename) ::File.(filename, ::File.join(::File.dirname(__FILE__), "..", "assets")) end |
.config ⇒ Object
29 30 31 |
# File 'lib/test_prof.rb', line 29 def config @config ||= Configuration.new end |
.configure {|config| ... } ⇒ Object
33 34 35 |
# File 'lib/test_prof.rb', line 33 def configure yield config end |
.create_artifact_dir ⇒ Object
98 99 100 |
# File 'lib/test_prof.rb', line 98 def create_artifact_dir FileUtils.mkdir_p(config.output_dir)[0] end |
.minitest? ⇒ Boolean
Returns true if we’re inside Minitest
43 44 45 |
# File 'lib/test_prof.rb', line 43 def minitest? defined?(Minitest) end |
.now ⇒ Object
Returns the current process time
48 49 50 |
# File 'lib/test_prof.rb', line 48 def now Process.clock_gettime(Process::CLOCK_MONOTONIC) end |
.require(gem_name, msg = nil) ⇒ Object
Require gem and shows a custom message if it fails to load
54 55 56 57 58 59 60 |
# File 'lib/test_prof.rb', line 54 def require(gem_name, msg = nil) Kernel.require gem_name block_given? ? yield : true rescue LoadError log(:error, msg) if msg false end |
.rspec? ⇒ Boolean
Returns true if we’re inside RSpec
38 39 40 |
# File 'lib/test_prof.rb', line 38 def rspec? defined?(RSpec::Core) end |