paloma 1.2.6 → 2.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +2 -3
- data/Changelog.md +0 -4
- data/README.md +206 -67
- data/app/templates/_filters.js +14 -0
- data/app/templates/application/_locals.js +13 -0
- data/app/templates/controller/_locals.js +19 -0
- data/app/templates/controller/_manifest.js +3 -0
- data/app/templates/controller/action.js +23 -0
- data/app/templates/index.js +3 -1
- data/app/templates/namespace/_locals.js +16 -0
- data/app/templates/namespace/_manifest.js +3 -0
- data/app/views/paloma/_callback_hook.html.erb +31 -26
- data/lib/paloma.rb +3 -0
- data/lib/paloma/action_controller_extension.rb +18 -16
- data/lib/paloma/action_controller_filters.rb +4 -7
- data/lib/paloma/generators/add_generator.rb +81 -85
- data/lib/paloma/generators/setup_generator.rb +15 -5
- data/lib/paloma/rails/controller_generator.rb +11 -0
- data/lib/paloma/rails/engine.rb +6 -0
- data/paloma.gemspec +1 -3
- data/spec/test_app/.gitignore +15 -0
- data/spec/test_app/.rspec +1 -0
- data/spec/test_app/Gemfile +2 -0
- data/spec/test_app/README.rdoc +261 -0
- data/spec/test_app/Rakefile +16 -0
- data/spec/test_app/app/assets/javascripts/application.js +16 -0
- data/spec/test_app/app/assets/javascripts/paloma/_filters.js +130 -0
- data/spec/test_app/app/assets/javascripts/paloma/_locals.js +17 -0
- data/spec/test_app/app/assets/javascripts/paloma/bar/_filters.js +96 -0
- data/spec/test_app/app/assets/javascripts/paloma/bar/_locals.js +1 -0
- data/spec/test_app/app/assets/javascripts/paloma/bar/_manifest.js +3 -0
- data/spec/test_app/app/assets/javascripts/paloma/bar/another_basic_action.js +5 -0
- data/spec/test_app/app/assets/javascripts/paloma/bar/basic_action.js +5 -0
- data/spec/test_app/app/assets/javascripts/paloma/bar/different_params.js +4 -0
- data/spec/test_app/app/assets/javascripts/paloma/bar/yet_another_basic_action.js +5 -0
- data/spec/test_app/app/assets/javascripts/paloma/foo/_filters.js +24 -0
- data/spec/test_app/app/assets/javascripts/paloma/foo/_locals.js +21 -0
- data/spec/test_app/app/assets/javascripts/paloma/foo/_manifest.js +3 -0
- data/spec/test_app/app/assets/javascripts/paloma/foo/basic_action.js +21 -0
- data/spec/test_app/app/assets/javascripts/paloma/foo/skip_callback.js +6 -0
- data/spec/test_app/app/assets/javascripts/paloma/index.js +6 -0
- data/spec/test_app/app/assets/javascripts/paloma/sample_namespace/_filters.js +83 -0
- data/spec/test_app/app/assets/javascripts/paloma/sample_namespace/_manifest.js +2 -0
- data/spec/test_app/app/assets/javascripts/paloma/sample_namespace/baz/_filters.js +84 -0
- data/spec/test_app/app/assets/javascripts/paloma/sample_namespace/baz/_locals.js +1 -0
- data/spec/test_app/app/assets/javascripts/paloma/sample_namespace/baz/_manifest.js +2 -0
- data/spec/test_app/app/assets/javascripts/paloma/sample_namespace/baz/another_basic_action.js +5 -0
- data/spec/test_app/app/assets/javascripts/paloma/sample_namespace/baz/basic_action.js +5 -0
- data/spec/test_app/app/assets/javascripts/paloma/sample_namespace/baz/yet_another_basic_action.js +5 -0
- data/spec/test_app/app/controllers/application_controller.rb +3 -0
- data/spec/test_app/app/controllers/bar_controller.rb +28 -0
- data/spec/test_app/app/controllers/foo_controller.rb +25 -0
- data/spec/test_app/app/controllers/sample_namespace/baz_controller.rb +23 -0
- data/spec/{sample_app → test_app}/app/views/layouts/application.html.erb +0 -0
- data/spec/test_app/config.ru +4 -0
- data/spec/test_app/config/application.rb +74 -0
- data/spec/test_app/config/boot.rb +6 -0
- data/spec/test_app/config/environment.rb +5 -0
- data/spec/test_app/config/environments/development.rb +31 -0
- data/spec/test_app/config/environments/production.rb +64 -0
- data/spec/test_app/config/environments/test.rb +35 -0
- data/spec/test_app/config/initializers/backtrace_silencers.rb +7 -0
- data/spec/test_app/config/initializers/inflections.rb +15 -0
- data/spec/test_app/config/initializers/mime_types.rb +5 -0
- data/spec/test_app/config/initializers/secret_token.rb +7 -0
- data/spec/test_app/config/initializers/session_store.rb +8 -0
- data/spec/test_app/config/initializers/wrap_parameters.rb +10 -0
- data/spec/test_app/config/locales/en.yml +5 -0
- data/spec/test_app/config/routes.rb +33 -0
- data/spec/test_app/log/.gitkeep +0 -0
- data/spec/test_app/public/404.html +26 -0
- data/spec/test_app/public/422.html +26 -0
- data/spec/test_app/public/500.html +25 -0
- data/spec/test_app/public/favicon.ico +0 -0
- data/spec/test_app/public/robots.txt +5 -0
- data/spec/test_app/script/rails +6 -0
- data/spec/test_app/spec/generator_helper.rb +87 -0
- data/spec/test_app/spec/generators/paloma_generator_spec.rb +199 -0
- data/spec/test_app/spec/generators/rails_generator_spec.rb +54 -0
- data/spec/test_app/spec/javascripts/callback_spec.rb +64 -0
- data/spec/test_app/spec/javascripts/filters_spec.rb +187 -0
- data/spec/test_app/spec/javascripts/locals_spec.rb +27 -0
- data/spec/test_app/spec/javascripts/params_spec.rb +116 -0
- data/spec/test_app/spec/javascripts/skip_filters_spec.rb +58 -0
- data/spec/test_app/spec/javascripts/variable_container_spec.rb +21 -0
- data/spec/test_app/spec/spec_helper.rb +26 -0
- data/vendor/assets/javascripts/paloma_core.js +294 -0
- metadata +79 -68
- data/Rakefile +0 -28
- data/app/templates/_callbacks.js +0 -2
- data/app/templates/_local.js +0 -20
- data/app/templates/action.js +0 -5
- data/app/templates/paloma.js +0 -22
- data/spec/callback_spec.rb +0 -81
- data/spec/generator_spec.rb +0 -425
- data/spec/sample_app/app/assets/javascripts/application.js +0 -4
- data/spec/sample_app/app/assets/javascripts/paloma/articles/_callbacks.js +0 -1
- data/spec/sample_app/app/assets/javascripts/paloma/articles/create.js +0 -3
- data/spec/sample_app/app/assets/javascripts/paloma/articles/edit.js +0 -3
- data/spec/sample_app/app/assets/javascripts/paloma/articles/index.js +0 -3
- data/spec/sample_app/app/assets/javascripts/paloma/articles/new.js +0 -3
- data/spec/sample_app/app/assets/javascripts/paloma/articles/show.js +0 -3
- data/spec/sample_app/app/assets/javascripts/paloma/articles/update.js +0 -3
- data/spec/sample_app/app/assets/javascripts/paloma/index.js +0 -3
- data/spec/sample_app/app/assets/javascripts/paloma/paloma.js +0 -1
- data/spec/sample_app/app/assets/javascripts/paloma/sample_namespace/_callbacks.js +0 -1
- data/spec/sample_app/app/assets/javascripts/paloma/sample_namespace/categories/_callbacks.js +0 -1
- data/spec/sample_app/app/assets/javascripts/paloma/sample_namespace/categories/index.js +0 -3
- data/spec/sample_app/app/views/articles/index.html.erb +0 -5
- data/spec/sample_app/app/views/articles/new.html.erb +0 -9
- data/spec/sample_app/app/views/articles/show.html.erb +0 -2
- data/spec/sample_app/app/views/sample_namespace/categories/index.html.erb +0 -5
- data/spec/sample_app/app/views/sample_namespace/categories/new.html.erb +0 -5
- data/spec/sample_app/controllers.rb +0 -68
- data/spec/sample_app/init.rb +0 -37
- data/spec/sample_app/models.rb +0 -40
- data/spec/spec_helper.rb +0 -21
- data/spec/test_app/log/development.log +0 -4
- data/spec/test_app/tmp/cache/assets/CF0/DA0/sprockets%2Fd7d5b37686831d37c4dd75e645f5e016 +0 -0
- data/spec/test_app/tmp/cache/assets/E25/4C0/sprockets%2Fde2fd9fd11c04a582cdbbe3d84a35ae6 +0 -0
@@ -1 +0,0 @@
|
|
1
|
-
//= require_tree .
|
@@ -1 +0,0 @@
|
|
1
|
-
window.Paloma = {callbacks:{}};
|
@@ -1 +0,0 @@
|
|
1
|
-
//= require ./categories/_callbacks.js
|
data/spec/sample_app/app/assets/javascripts/paloma/sample_namespace/categories/_callbacks.js
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
//= require_tree .
|
@@ -1,68 +0,0 @@
|
|
1
|
-
# Dummy Controllers
|
2
|
-
class ApplicationController < ActionController::Base
|
3
|
-
end
|
4
|
-
|
5
|
-
|
6
|
-
class ArticlesController < ApplicationController
|
7
|
-
|
8
|
-
def index
|
9
|
-
@articles = Article.all
|
10
|
-
js_callback :params => {:article_count => @articles.size}
|
11
|
-
end
|
12
|
-
|
13
|
-
|
14
|
-
def show
|
15
|
-
@article = Article.find params[:id]
|
16
|
-
end
|
17
|
-
|
18
|
-
|
19
|
-
def new
|
20
|
-
@article = Article.new
|
21
|
-
end
|
22
|
-
|
23
|
-
|
24
|
-
def create
|
25
|
-
@article = Article.new params[:article]
|
26
|
-
|
27
|
-
if @article.save
|
28
|
-
redirect_to @article
|
29
|
-
else
|
30
|
-
js_callback :new
|
31
|
-
render :new
|
32
|
-
end
|
33
|
-
end
|
34
|
-
|
35
|
-
|
36
|
-
def edit
|
37
|
-
@article = Article.find params[:id]
|
38
|
-
render :new
|
39
|
-
end
|
40
|
-
|
41
|
-
|
42
|
-
def update
|
43
|
-
@article = Article.find params[:id]
|
44
|
-
|
45
|
-
if @article.update_attributes params[:article]
|
46
|
-
js_callback false
|
47
|
-
redirect_to @article
|
48
|
-
else
|
49
|
-
js_callback :controller => :articles, :action => :edit
|
50
|
-
render :new
|
51
|
-
end
|
52
|
-
end
|
53
|
-
|
54
|
-
end
|
55
|
-
|
56
|
-
module SampleNamespace
|
57
|
-
class CategoriesController < ApplicationController
|
58
|
-
def index
|
59
|
-
@categories = Category.all
|
60
|
-
end
|
61
|
-
|
62
|
-
|
63
|
-
def new
|
64
|
-
@category = Category.new
|
65
|
-
js_callback :index
|
66
|
-
end
|
67
|
-
end
|
68
|
-
end
|
data/spec/sample_app/init.rb
DELETED
@@ -1,37 +0,0 @@
|
|
1
|
-
require 'action_controller/railtie'
|
2
|
-
require 'action_view/railtie'
|
3
|
-
|
4
|
-
require 'jquery-rails'
|
5
|
-
require 'sprockets/railtie'
|
6
|
-
require 'sprockets'
|
7
|
-
|
8
|
-
|
9
|
-
# Dummy Rails Configurations
|
10
|
-
app = Class.new(Rails::Application)
|
11
|
-
app.config.secret_token = '3b7cd727ee24e8444053437c36cc66c4'
|
12
|
-
app.config.session_store :cookie_store, :key => '_myapp_session'
|
13
|
-
app.config.active_support.deprecation = :log
|
14
|
-
app.config.root = File.dirname(__FILE__)
|
15
|
-
|
16
|
-
# Assets
|
17
|
-
app.config.assets.enabled = true
|
18
|
-
app.config.assets.version = '1.0'
|
19
|
-
app.config.assets.compress = false
|
20
|
-
app.config.assets.debug = true
|
21
|
-
app.config.assets.compile = true
|
22
|
-
|
23
|
-
Rails.backtrace_cleaner.remove_silencers!
|
24
|
-
app.initialize!
|
25
|
-
|
26
|
-
|
27
|
-
# Routes
|
28
|
-
app.routes.draw do
|
29
|
-
resources :articles, :controller => 'Articles'
|
30
|
-
|
31
|
-
namespace :sample_namespace do
|
32
|
-
resources :categories
|
33
|
-
end
|
34
|
-
end
|
35
|
-
|
36
|
-
require "#{Paloma.root}/spec/sample_app/models"
|
37
|
-
require "#{Paloma.root}/spec/sample_app/controllers"
|
data/spec/sample_app/models.rb
DELETED
@@ -1,40 +0,0 @@
|
|
1
|
-
# ActiveRecord Configuration
|
2
|
-
# We are not using :memory: database to handle javascript requests on controller
|
3
|
-
require 'active_record/railtie'
|
4
|
-
ActiveRecord::Base.configurations = {'test' => {:adapter => 'sqlite3', :database => 'paloma_test'}}
|
5
|
-
ActiveRecord::Base.establish_connection('test')
|
6
|
-
|
7
|
-
|
8
|
-
# Models
|
9
|
-
class Article < ActiveRecord::Base
|
10
|
-
attr_accessible :title, :body, :category, :category_id
|
11
|
-
belongs_to :category
|
12
|
-
validates_presence_of :title
|
13
|
-
end
|
14
|
-
|
15
|
-
|
16
|
-
class Category < ActiveRecord::Base
|
17
|
-
attr_accessible :name
|
18
|
-
has_many :articles, :dependent => :destroy
|
19
|
-
validates_presence_of :name
|
20
|
-
end
|
21
|
-
|
22
|
-
|
23
|
-
# Migration
|
24
|
-
class CreateTables < ActiveRecord::Migration
|
25
|
-
def self.up
|
26
|
-
create_table :articles, :force => true do |t|
|
27
|
-
t.string :title
|
28
|
-
t.string :body
|
29
|
-
t.references :category
|
30
|
-
end
|
31
|
-
|
32
|
-
create_table :categories, :force => true do |t|
|
33
|
-
t.string :name
|
34
|
-
end
|
35
|
-
end
|
36
|
-
end
|
37
|
-
|
38
|
-
|
39
|
-
ActiveRecord::Migration.verbose = false
|
40
|
-
CreateTables.up
|
data/spec/spec_helper.rb
DELETED
@@ -1,21 +0,0 @@
|
|
1
|
-
require 'rails'
|
2
|
-
require 'bundler/setup'
|
3
|
-
Bundler.require
|
4
|
-
|
5
|
-
require 'sample_app/init'
|
6
|
-
require 'rspec/rails'
|
7
|
-
|
8
|
-
|
9
|
-
require 'capybara/rspec'
|
10
|
-
require 'database_cleaner'
|
11
|
-
|
12
|
-
RSpec.configure do |config|
|
13
|
-
config.before :each do
|
14
|
-
DatabaseCleaner.strategy = :truncation
|
15
|
-
DatabaseCleaner.start
|
16
|
-
end
|
17
|
-
|
18
|
-
config.after do
|
19
|
-
DatabaseCleaner.clean
|
20
|
-
end
|
21
|
-
end
|
Binary file
|