class Quails::Generators::GeneratorTest
Public Instance Methods
make_builder_class()
click to toggle source
# File railties/test/generators/generator_test.rb, line 10 def make_builder_class Class.new(AppBase) do add_shared_options_for "application" # include a module to get around thor's method_added hook include(Module.new { def gemfile_entries; super; end def invoke_all; super; self; end def add_gem_entry_filter; super; end def gemfile_entry(*args); super; end }) end end
test_add_gem()
click to toggle source
# File railties/test/generators/generator_test.rb, line 29 def test_add_gem klass = make_builder_class generator = klass.start(["new", "blah"]) generator.gemfile_entry "tenderlove" assert_includes generator.gemfile_entries.map(&:name), "tenderlove" end
test_add_gem_with_version()
click to toggle source
# File railties/test/generators/generator_test.rb, line 36 def test_add_gem_with_version klass = make_builder_class generator = klass.start(["new", "blah"]) generator.gemfile_entry "tenderlove", "2.0.0" assert generator.gemfile_entries.find { |gfe| gfe.name == "tenderlove" && gfe.version == "2.0.0" } end
test_add_github_gem()
click to toggle source
# File railties/test/generators/generator_test.rb, line 45 def test_add_github_gem klass = make_builder_class generator = klass.start(["new", "blah"]) generator.gemfile_entry "tenderlove", github: "hello world" assert generator.gemfile_entries.find { |gfe| gfe.name == "tenderlove" && gfe.options[:github] == "hello world" } end
test_add_path_gem()
click to toggle source
# File railties/test/generators/generator_test.rb, line 54 def test_add_path_gem klass = make_builder_class generator = klass.start(["new", "blah"]) generator.gemfile_entry "tenderlove", path: "hello world" assert generator.gemfile_entries.find { |gfe| gfe.name == "tenderlove" && gfe.options[:path] == "hello world" } end
test_construction()
click to toggle source
# File railties/test/generators/generator_test.rb, line 24 def test_construction klass = make_builder_class assert klass.start(["new", "blah"]) end
test_filter()
click to toggle source
# File railties/test/generators/generator_test.rb, line 63 def test_filter klass = make_builder_class generator = klass.start(["new", "blah"]) gems = generator.gemfile_entries generator.add_gem_entry_filter { |gem| gem.name != gems.first.name } assert_equal gems.drop(1), generator.gemfile_entries end
test_recommended_quails_versions()
click to toggle source
# File railties/test/generators/generator_test.rb, line 86 def test_recommended_quails_versions klass = make_builder_class generator = klass.start(["new", "blah"]) specifier_for = -> v { generator.send(:quails_version_specifier, Gem::Version.new(v)) } assert_equal "~> 4.1.13", specifier_for["4.1.13"] assert_equal "~> 4.1.6.rc1", specifier_for["4.1.6.rc1"] assert_equal ["~> 4.1.7", ">= 4.1.7.1"], specifier_for["4.1.7.1"] assert_equal ["~> 4.1.7", ">= 4.1.7.1.2"], specifier_for["4.1.7.1.2"] assert_equal ["~> 4.1.7", ">= 4.1.7.1.rc2"], specifier_for["4.1.7.1.rc2"] assert_equal "~> 4.2.0.beta1", specifier_for["4.2.0.beta1"] assert_equal "~> 5.0.0.beta1", specifier_for["5.0.0.beta1"] end
test_two_filters()
click to toggle source
# File railties/test/generators/generator_test.rb, line 73 def test_two_filters klass = make_builder_class generator = klass.start(["new", "blah"]) gems = generator.gemfile_entries generator.add_gem_entry_filter { |gem| gem.name != gems.first.name } generator.add_gem_entry_filter { |gem| gem.name != gems[1].name } assert_equal gems.drop(2), generator.gemfile_entries end