Sha256: 9a86769edbf2d8efabea1b8830def0d831e9dcd636ba9790d9d916f5e59748af

Contents?: true

Size: 1.39 KB

Versions: 8

Compression:

Stored size: 1.39 KB

Contents

require 'test_helper'
require 'generators/batman/model_generator'

class ModelGeneratorTest < Rails::Generators::TestCase
  tests Batman::Generators::ModelGenerator
  
  test "simple model" do
    run_generator %w(Task title:string created_at:date)
    
    assert_file "#{javascripts_path}/models/task.js.coffee" do |model|
      model_class = Regexp.escape("class Sample.Task extends Batman.Model")
      
      assert_match /#{model_class}/, model
      
      assert_match /@storageKey: 'tasks'/, model
      assert_match /@persist Batman.RailsStorage/, model
      
      assert_match /@encode 'title'/, model
      assert_match /@encode 'created_at', Batman.Encoders.railsDate/, model
    end
  end
  
  test "two word model is camelcased" do
    run_generator %w(RegularUser name:string)
    
    assert_file "#{javascripts_path}/models/regular_user.js.coffee" do |model|
      model_class = Regexp.escape("class Sample.RegularUser extends Batman.Model")
      
      assert_match /#{model_class}/, model
      
      assert_match /@storageKey: 'regular_users'/, model
    end
  end
  
  test "simple model with app_name" do
    run_generator %w(Task title:string created_at:date --app_name MyApp)
    
    assert_file "#{javascripts_path}/models/task.js.coffee" do |model|
      model_class = Regexp.escape("class MyApp.Task extends Batman.Model")
      
      assert_match /#{model_class}/, model
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
batman-rails-0.0.9 test/model_generator_test.rb
batman-rails-0.0.8 test/model_generator_test.rb
batman-rails-0.0.6 test/model_generator_test.rb
batman-rails-0.0.5 test/model_generator_test.rb
batman-rails-0.0.4 test/model_generator_test.rb
batman-rails-0.0.3 test/model_generator_test.rb
batman-rails-0.0.2 test/model_generator_test.rb
batman-rails-0.0.1 test/model_generator_test.rb