fume-cancan 0.0.2 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 365e05ad40a45f1f47fd38c0697f0906c34d7c47
4
- data.tar.gz: bbe776ea4083ac6d814cbfef9a2d8f8fe978f846
3
+ metadata.gz: 0378203f952dd0a573778829ab51c45d2b5e8557
4
+ data.tar.gz: abcd36c3537b0b931204032283c577a9487c5134
5
5
  SHA512:
6
- metadata.gz: 4ae351862697f9384c30106d7733f0899605f7feb16bf958a6138f97317c3b7d3ad907791fd4c6964c5b0d69f8f3e298f9f4476407b0b8312faf963f334b9a8c
7
- data.tar.gz: ffb117bf97aff8bfbb1ee47576fc7bd866e0e95d59bf719f9190f96fc437579a7235759b844ba99df57f1b857befde37deff2cdeabcc43aef2b95cc175d29b61
6
+ metadata.gz: 48511a34661d03d0abb67eaa2b7539d8100d9db3d6b1e9c3c76849dc014de1323e6aa4d23b01982891d6ef791f063e4b340802f7b7dae7f1df2c0355fe03478b
7
+ data.tar.gz: f51ebaba8813316754fe205ab8f113cc085c4a94a2bf684d47e3c859b3c2353a5f2451fdea28c1b4ee8d9fddea93ade05cf64f9afaedf229e1445a8fa8b6bc5a
data/.gitignore CHANGED
@@ -1,18 +1,17 @@
1
1
  *.gem
2
2
  *.rbc
3
- .bundle
4
- .config
5
- .yardoc
6
- Gemfile.lock
7
- InstalledFiles
8
- _yardoc
9
- coverage
10
- doc/
11
- lib/bundler/man
12
- pkg
13
- rdoc
14
- spec/reports
15
- test/tmp
16
- test/version_tmp
17
- tmp
18
- tags
3
+ /.bundle
4
+ /.config
5
+ /.yardoc
6
+ /Gemfile.lock
7
+ /InstalledFiles
8
+ /_yardoc
9
+ /coverage
10
+ /doc/
11
+ /lib/bundler/man
12
+ /pkg
13
+ /rdoc
14
+ /spec/reports
15
+ /tmp
16
+ /tags
17
+ /spec/internal/log/
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --color
2
+ --format progress
data/.travis.yml ADDED
@@ -0,0 +1,4 @@
1
+ rvm:
2
+ - 2.1.0
3
+ - 2.0.0
4
+ - 1.9.3
data/README.md CHANGED
@@ -1,5 +1,8 @@
1
1
  # Fume::Cancan
2
2
 
3
+ [![Build Status](https://travis-ci.org/sunteya/fume-cancan.svg?branch=master)](https://travis-ci.org/sunteya/fume-cancan)
4
+ [![Coverage Status](https://coveralls.io/repos/sunteya/fume-cancan/badge.png)](https://coveralls.io/r/sunteya/fume-cancan)
5
+
3
6
  helper methods for CanCan
4
7
 
5
8
  ## Installation
data/Rakefile CHANGED
@@ -1,4 +1,5 @@
1
1
  require "bundler/gem_tasks"
2
2
 
3
- require 'rake/version_task'
4
- Rake::VersionTask.new
3
+ require 'rspec/core/rake_task'
4
+ RSpec::Core::RakeTask.new(:spec)
5
+ task :default => :spec
data/config.ru ADDED
@@ -0,0 +1,7 @@
1
+ require 'rubygems'
2
+ require 'bundler'
3
+
4
+ Bundler.require :default, :development
5
+
6
+ Combustion.initialize!
7
+ run Combustion::Application
data/fume-cancan.gemspec CHANGED
@@ -1,22 +1,33 @@
1
1
  # -*- encoding: utf-8 -*-
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'fume/cancan/version'
2
5
 
3
- Gem::Specification.new do |gem|
4
- gem.name = "fume-cancan"
5
- gem.version = File.read(File.expand_path("../VERSION", __FILE__)).chomp
6
- gem.authors = ["sunteya"]
7
- gem.email = ["sunteya@gmail.com"]
8
- gem.description = %q{fume helper methods for CanCan}
9
- gem.summary = %q{fume helper methods for CanCan}
10
- gem.homepage = ""
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "fume-cancan"
8
+ spec.version = Fume::Cancan::VERSION
9
+ spec.authors = ["sunteya"]
10
+ spec.email = ["sunteya@gmail.com"]
11
+ spec.summary = %q{fume helper methods for CanCan}
12
+ spec.description = %q{fume helper methods for CanCan}
13
+ spec.homepage = "https://github.com/sunteya/fume-cancan"
14
+ spec.license = "MIT"
11
15
 
12
- gem.files = `git ls-files`.split($/)
13
- gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
14
- gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
15
- gem.require_paths = ["lib"]
16
-
17
- gem.add_runtime_dependency "rails"
18
-
19
- # development
20
- gem.add_development_dependency "version"
21
- gem.add_development_dependency "cancancan"
16
+ spec.files = `git ls-files -z`.split("\x0")
17
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
+ spec.require_paths = ["lib"]
20
+
21
+ spec.add_runtime_dependency "rails"
22
+
23
+ spec.add_development_dependency "bundler"
24
+ spec.add_development_dependency "rake"
25
+ spec.add_development_dependency "pry-nav"
26
+ spec.add_development_dependency "coveralls"
27
+
28
+ spec.add_development_dependency "cancancan"
29
+
30
+ spec.add_development_dependency "rspec-rails", "~> 2.14.1"
31
+ spec.add_development_dependency "combustion", "~> 0.5.1"
32
+ spec.add_development_dependency "rspec-do_action", "~> 0.0.3"
22
33
  end
data/lib/fume-cancan.rb CHANGED
@@ -1,2 +1,4 @@
1
1
  require "cancan"
2
- require File.expand_path("../fume-cancan/controller_extensions", __FILE__)
2
+
3
+ require "fume/cancan/version"
4
+ require "fume/cancan/controller_extensions"
@@ -0,0 +1,5 @@
1
+ module Fume
2
+ module Cancan
3
+ VERSION = "0.0.3"
4
+ end
5
+ end
@@ -0,0 +1,30 @@
1
+ require "spec_helper"
2
+
3
+ describe Fume::Cancan::ControllerExtensions, type: :controller do
4
+ describe "#authorize_object" do
5
+ controller(ApplicationController) {}
6
+ action { get :index }
7
+ skip_do_action
8
+
9
+ context "then undefine any authorize_object" do
10
+ it { is_expected_response_ok }
11
+ end
12
+
13
+ context "then authorize_object is a symbol" do
14
+ controller { authorize_object :admin }
15
+
16
+ context "then allow" do
17
+ before { ability.can :manage, :admin }
18
+ it { is_expected_response_ok }
19
+ end
20
+
21
+ context "then deny" do
22
+ it { is_expected_access_denied }
23
+ end
24
+ end
25
+
26
+ define_method :ability, -> { controller.current_ability }
27
+ define_method :is_expected_access_denied, -> { expect { do_action }.to raise_error CanCan::AccessDenied }
28
+ define_method :is_expected_response_ok, -> { do_action; expect(response.body).to eq "OK" }
29
+ end
30
+ end
@@ -0,0 +1,9 @@
1
+ class ApplicationController < ActionController::Base
2
+ def index
3
+ render text: "OK"
4
+ end
5
+
6
+ def current_ability
7
+ @current_ability ||= Ability.new
8
+ end
9
+ end
@@ -0,0 +1,3 @@
1
+ class Ability
2
+ include CanCan::Ability
3
+ end
@@ -0,0 +1,3 @@
1
+ test:
2
+ adapter: sqlite3
3
+ database: db/combustion_test.sqlite
@@ -0,0 +1,3 @@
1
+ Rails.application.routes.draw do
2
+ get "application/index"
3
+ end
@@ -0,0 +1,3 @@
1
+ ActiveRecord::Schema.define do
2
+ #
3
+ end
@@ -0,0 +1,19 @@
1
+ require "simplecov"
2
+ require 'coveralls'
3
+ Coveralls.wear!
4
+ # SimpleCov.start
5
+
6
+ require 'combustion'
7
+ Combustion.initialize! :action_controller
8
+ require "rspec/rails"
9
+ require "rspec-do_action"
10
+
11
+ require "pry-nav"
12
+
13
+ RSpec.configure do |config|
14
+ config.treat_symbols_as_metadata_keys_with_true_values = true
15
+ config.run_all_when_everything_filtered = true
16
+ config.filter_run :focus
17
+
18
+ config.order = 'random'
19
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fume-cancan
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - sunteya
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-03-06 00:00:00.000000000 Z
11
+ date: 2014-03-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -25,7 +25,49 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: version
28
+ name: bundler
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rake
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: pry-nav
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: coveralls
29
71
  requirement: !ruby/object:Gem::Requirement
30
72
  requirements:
31
73
  - - ">="
@@ -52,6 +94,48 @@ dependencies:
52
94
  - - ">="
53
95
  - !ruby/object:Gem::Version
54
96
  version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: rspec-rails
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: 2.14.1
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: 2.14.1
111
+ - !ruby/object:Gem::Dependency
112
+ name: combustion
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: 0.5.1
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: 0.5.1
125
+ - !ruby/object:Gem::Dependency
126
+ name: rspec-do_action
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: 0.0.3
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: 0.0.3
55
139
  description: fume helper methods for CanCan
56
140
  email:
57
141
  - sunteya@gmail.com
@@ -60,16 +144,27 @@ extensions: []
60
144
  extra_rdoc_files: []
61
145
  files:
62
146
  - ".gitignore"
147
+ - ".rspec"
148
+ - ".travis.yml"
63
149
  - Gemfile
64
150
  - LICENSE.txt
65
151
  - README.md
66
152
  - Rakefile
67
- - VERSION
153
+ - config.ru
68
154
  - fume-cancan.gemspec
69
155
  - lib/fume-cancan.rb
70
- - lib/fume-cancan/controller_extensions.rb
71
- homepage: ''
72
- licenses: []
156
+ - lib/fume/cancan/controller_extensions.rb
157
+ - lib/fume/cancan/version.rb
158
+ - spec/fume/cancan/controller_extensions_spec.rb
159
+ - spec/internal/app/controllers/application_controller.rb
160
+ - spec/internal/app/models/ability.rb
161
+ - spec/internal/config/database.yml
162
+ - spec/internal/config/routes.rb
163
+ - spec/internal/db/schema.rb
164
+ - spec/spec_helper.rb
165
+ homepage: https://github.com/sunteya/fume-cancan
166
+ licenses:
167
+ - MIT
73
168
  metadata: {}
74
169
  post_install_message:
75
170
  rdoc_options: []
@@ -91,4 +186,11 @@ rubygems_version: 2.2.0
91
186
  signing_key:
92
187
  specification_version: 4
93
188
  summary: fume helper methods for CanCan
94
- test_files: []
189
+ test_files:
190
+ - spec/fume/cancan/controller_extensions_spec.rb
191
+ - spec/internal/app/controllers/application_controller.rb
192
+ - spec/internal/app/models/ability.rb
193
+ - spec/internal/config/database.yml
194
+ - spec/internal/config/routes.rb
195
+ - spec/internal/db/schema.rb
196
+ - spec/spec_helper.rb
data/VERSION DELETED
@@ -1 +0,0 @@
1
- 0.0.2