Module: Tapioca::Helpers::Test::Content
- Included in:
- DslCompiler
- Defined in:
- lib/tapioca/helpers/test/content.rb
Overview
@requires_ancestor: Kernel
Instance Method Summary collapse
-
#add_content_file(name, content) ⇒ Object
: (String name, String content) -> String.
-
#add_ruby_file(name, content, require_file: true) ⇒ Object
: (String name, String content, ?require_file: bool) -> String.
-
#remove_tmp_path ⇒ Object
: -> void.
-
#teardown ⇒ Object
: -> void.
-
#tmp_path(*args) ⇒ Object
: (*String args) -> String.
Instance Method Details
#add_content_file(name, content) ⇒ Object
: (String name, String content) -> String
35 36 37 38 39 40 41 42 |
# File 'lib/tapioca/helpers/test/content.rb', line 35 def add_content_file(name, content) file_name = tmp_path("lib/#{name}") raise ArgumentError, "a file named '#{name}' was already added; cannot overwrite." if File.exist?(file_name) FileUtils.mkdir_p(File.dirname(file_name)) File.write(file_name, content) file_name end |
#add_ruby_file(name, content, require_file: true) ⇒ Object
: (String name, String content, ?require_file: bool) -> String
28 29 30 31 32 |
# File 'lib/tapioca/helpers/test/content.rb', line 28 def add_ruby_file(name, content, require_file: true) add_content_file(name, content).tap do |file_name| Runtime.silence_warnings { require(file_name) } if require_file end end |
#remove_tmp_path ⇒ Object
: -> void
23 24 25 |
# File 'lib/tapioca/helpers/test/content.rb', line 23 def remove_tmp_path FileUtils.rm_rf(tmp_path) end |
#teardown ⇒ Object
: -> void
10 11 12 13 |
# File 'lib/tapioca/helpers/test/content.rb', line 10 def teardown super remove_tmp_path end |
#tmp_path(*args) ⇒ Object
: (*String args) -> String
16 17 18 19 20 |
# File 'lib/tapioca/helpers/test/content.rb', line 16 def tmp_path(*args) @tmp_path = @tmp_path #: String? @tmp_path ||= Dir.mktmpdir T.unsafe(File).join(@tmp_path, *args) end |