domain_neutral 1.0.0

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.
Files changed (71) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/Rakefile +37 -0
  4. data/app/models/domain_neutral/descriptor.rb +55 -0
  5. data/config/routes.rb +2 -0
  6. data/db/migrate/20160531124022_create_domain_neutral_descriptors.rb +20 -0
  7. data/lib/domain_neutral/association.rb +21 -0
  8. data/lib/domain_neutral/engine.rb +5 -0
  9. data/lib/domain_neutral/railtie.rb +24 -0
  10. data/lib/domain_neutral/seed.rb +8 -0
  11. data/lib/domain_neutral/seeder/descriptors.rb +195 -0
  12. data/lib/domain_neutral/symbolized_class.rb +170 -0
  13. data/lib/domain_neutral/version.rb +3 -0
  14. data/lib/domain_neutral.rb +18 -0
  15. data/lib/tasks/domain_neutral_tasks.rake +10 -0
  16. data/test/domain_neutral/symbolized_class_test.rb +162 -0
  17. data/test/domain_neutral_test.rb +7 -0
  18. data/test/dummy/README.rdoc +28 -0
  19. data/test/dummy/Rakefile +6 -0
  20. data/test/dummy/app/assets/javascripts/application.js +13 -0
  21. data/test/dummy/app/assets/stylesheets/application.css +15 -0
  22. data/test/dummy/app/controllers/application_controller.rb +5 -0
  23. data/test/dummy/app/helpers/application_helper.rb +2 -0
  24. data/test/dummy/app/models/role.rb +2 -0
  25. data/test/dummy/app/models/user.rb +3 -0
  26. data/test/dummy/app/views/layouts/application.html.erb +13 -0
  27. data/test/dummy/bin/bundle +3 -0
  28. data/test/dummy/bin/rails +4 -0
  29. data/test/dummy/bin/rake +4 -0
  30. data/test/dummy/bin/setup +29 -0
  31. data/test/dummy/config/application.rb +33 -0
  32. data/test/dummy/config/boot.rb +5 -0
  33. data/test/dummy/config/database.yml +25 -0
  34. data/test/dummy/config/environment.rb +5 -0
  35. data/test/dummy/config/environments/development.rb +41 -0
  36. data/test/dummy/config/environments/production.rb +79 -0
  37. data/test/dummy/config/environments/test.rb +44 -0
  38. data/test/dummy/config/initializers/assets.rb +11 -0
  39. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  40. data/test/dummy/config/initializers/cookies_serializer.rb +3 -0
  41. data/test/dummy/config/initializers/domain_neutral.rb +5 -0
  42. data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  43. data/test/dummy/config/initializers/inflections.rb +16 -0
  44. data/test/dummy/config/initializers/mime_types.rb +4 -0
  45. data/test/dummy/config/initializers/session_store.rb +3 -0
  46. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  47. data/test/dummy/config/locales/en.yml +13 -0
  48. data/test/dummy/config/locales/nb.yml +9 -0
  49. data/test/dummy/config/routes.rb +56 -0
  50. data/test/dummy/config/secrets.yml +22 -0
  51. data/test/dummy/config.ru +4 -0
  52. data/test/dummy/db/development.sqlite3 +0 -0
  53. data/test/dummy/db/migrate/20160601072742_create_domain_neutral_descriptors.domain_neutral.rb +21 -0
  54. data/test/dummy/db/migrate/20160607100350_create_users.rb +10 -0
  55. data/test/dummy/db/schema.rb +42 -0
  56. data/test/dummy/db/test.sqlite3 +0 -0
  57. data/test/dummy/log/development.log +350 -0
  58. data/test/dummy/log/test.log +5133 -0
  59. data/test/dummy/public/404.html +67 -0
  60. data/test/dummy/public/422.html +67 -0
  61. data/test/dummy/public/500.html +66 -0
  62. data/test/dummy/public/favicon.ico +0 -0
  63. data/test/dummy/tmp/cache/36E/B10/Role%2Fmap +1 -0
  64. data/test/dummy/tmp/cache/657/A10/Role%2Fuser_admin +1 -0
  65. data/test/fixtures/domain_neutral/descriptors.yml +14 -0
  66. data/test/fixtures/users.yml +9 -0
  67. data/test/integration/navigation_test.rb +8 -0
  68. data/test/models/domain_neutral/descriptor_test.rb +111 -0
  69. data/test/test_helper.rb +22 -0
  70. data/test/test_helpers/caching.rb +57 -0
  71. metadata +198 -0
@@ -0,0 +1,67 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>The page you were looking for doesn't exist (404)</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <style>
7
+ body {
8
+ background-color: #EFEFEF;
9
+ color: #2E2F30;
10
+ text-align: center;
11
+ font-family: arial, sans-serif;
12
+ margin: 0;
13
+ }
14
+
15
+ div.dialog {
16
+ width: 95%;
17
+ max-width: 33em;
18
+ margin: 4em auto 0;
19
+ }
20
+
21
+ div.dialog > div {
22
+ border: 1px solid #CCC;
23
+ border-right-color: #999;
24
+ border-left-color: #999;
25
+ border-bottom-color: #BBB;
26
+ border-top: #B00100 solid 4px;
27
+ border-top-left-radius: 9px;
28
+ border-top-right-radius: 9px;
29
+ background-color: white;
30
+ padding: 7px 12% 0;
31
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
32
+ }
33
+
34
+ h1 {
35
+ font-size: 100%;
36
+ color: #730E15;
37
+ line-height: 1.5em;
38
+ }
39
+
40
+ div.dialog > p {
41
+ margin: 0 0 1em;
42
+ padding: 1em;
43
+ background-color: #F7F7F7;
44
+ border: 1px solid #CCC;
45
+ border-right-color: #999;
46
+ border-left-color: #999;
47
+ border-bottom-color: #999;
48
+ border-bottom-left-radius: 4px;
49
+ border-bottom-right-radius: 4px;
50
+ border-top-color: #DADADA;
51
+ color: #666;
52
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
53
+ }
54
+ </style>
55
+ </head>
56
+
57
+ <body>
58
+ <!-- This file lives in public/404.html -->
59
+ <div class="dialog">
60
+ <div>
61
+ <h1>The page you were looking for doesn't exist.</h1>
62
+ <p>You may have mistyped the address or the page may have moved.</p>
63
+ </div>
64
+ <p>If you are the application owner check the logs for more information.</p>
65
+ </div>
66
+ </body>
67
+ </html>
@@ -0,0 +1,67 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>The change you wanted was rejected (422)</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <style>
7
+ body {
8
+ background-color: #EFEFEF;
9
+ color: #2E2F30;
10
+ text-align: center;
11
+ font-family: arial, sans-serif;
12
+ margin: 0;
13
+ }
14
+
15
+ div.dialog {
16
+ width: 95%;
17
+ max-width: 33em;
18
+ margin: 4em auto 0;
19
+ }
20
+
21
+ div.dialog > div {
22
+ border: 1px solid #CCC;
23
+ border-right-color: #999;
24
+ border-left-color: #999;
25
+ border-bottom-color: #BBB;
26
+ border-top: #B00100 solid 4px;
27
+ border-top-left-radius: 9px;
28
+ border-top-right-radius: 9px;
29
+ background-color: white;
30
+ padding: 7px 12% 0;
31
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
32
+ }
33
+
34
+ h1 {
35
+ font-size: 100%;
36
+ color: #730E15;
37
+ line-height: 1.5em;
38
+ }
39
+
40
+ div.dialog > p {
41
+ margin: 0 0 1em;
42
+ padding: 1em;
43
+ background-color: #F7F7F7;
44
+ border: 1px solid #CCC;
45
+ border-right-color: #999;
46
+ border-left-color: #999;
47
+ border-bottom-color: #999;
48
+ border-bottom-left-radius: 4px;
49
+ border-bottom-right-radius: 4px;
50
+ border-top-color: #DADADA;
51
+ color: #666;
52
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
53
+ }
54
+ </style>
55
+ </head>
56
+
57
+ <body>
58
+ <!-- This file lives in public/422.html -->
59
+ <div class="dialog">
60
+ <div>
61
+ <h1>The change you wanted was rejected.</h1>
62
+ <p>Maybe you tried to change something you didn't have access to.</p>
63
+ </div>
64
+ <p>If you are the application owner check the logs for more information.</p>
65
+ </div>
66
+ </body>
67
+ </html>
@@ -0,0 +1,66 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>We're sorry, but something went wrong (500)</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <style>
7
+ body {
8
+ background-color: #EFEFEF;
9
+ color: #2E2F30;
10
+ text-align: center;
11
+ font-family: arial, sans-serif;
12
+ margin: 0;
13
+ }
14
+
15
+ div.dialog {
16
+ width: 95%;
17
+ max-width: 33em;
18
+ margin: 4em auto 0;
19
+ }
20
+
21
+ div.dialog > div {
22
+ border: 1px solid #CCC;
23
+ border-right-color: #999;
24
+ border-left-color: #999;
25
+ border-bottom-color: #BBB;
26
+ border-top: #B00100 solid 4px;
27
+ border-top-left-radius: 9px;
28
+ border-top-right-radius: 9px;
29
+ background-color: white;
30
+ padding: 7px 12% 0;
31
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
32
+ }
33
+
34
+ h1 {
35
+ font-size: 100%;
36
+ color: #730E15;
37
+ line-height: 1.5em;
38
+ }
39
+
40
+ div.dialog > p {
41
+ margin: 0 0 1em;
42
+ padding: 1em;
43
+ background-color: #F7F7F7;
44
+ border: 1px solid #CCC;
45
+ border-right-color: #999;
46
+ border-left-color: #999;
47
+ border-bottom-color: #999;
48
+ border-bottom-left-radius: 4px;
49
+ border-bottom-right-radius: 4px;
50
+ border-top-color: #DADADA;
51
+ color: #666;
52
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
53
+ }
54
+ </style>
55
+ </head>
56
+
57
+ <body>
58
+ <!-- This file lives in public/500.html -->
59
+ <div class="dialog">
60
+ <div>
61
+ <h1>We're sorry, but something went wrong.</h1>
62
+ </div>
63
+ <p>If you are the application owner check the logs for more information.</p>
64
+ </div>
65
+ </body>
66
+ </html>
File without changes
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value0:@created_atf1464771728.527442:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value0:@created_atf1464851869.609725:@expires_in0
@@ -0,0 +1,14 @@
1
+ site_admin:
2
+ type: Role
3
+ symbol: site_admin
4
+ name: Site admin
5
+ description: Site administrator
6
+ index: 1
7
+ value: 100
8
+ user_admin:
9
+ type: Role
10
+ symbol: user_admin
11
+ name: User Administrator
12
+ description: Administers users and legal entities
13
+ index: 2
14
+ value: 200
@@ -0,0 +1,9 @@
1
+ # Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/FixtureSet.html
2
+
3
+ one:
4
+ name: Site boss
5
+ role: site_admin
6
+
7
+ two:
8
+ name: User boss
9
+ role: user_admin
@@ -0,0 +1,8 @@
1
+ require 'test_helper'
2
+
3
+ class NavigationTest < ActionDispatch::IntegrationTest
4
+ # test "the truth" do
5
+ # assert true
6
+ # end
7
+ end
8
+
@@ -0,0 +1,111 @@
1
+ require 'test_helper'
2
+
3
+ class Bull < DomainNeutral::Descriptor
4
+ has_many :children, as: :parent, class_name: 'Bull'
5
+ end
6
+
7
+ module DomainNeutral
8
+ class DescriptorTest < ActiveSupport::TestCase
9
+ context 'descriptor validation' do
10
+ setup do
11
+ @bull = Bull.new
12
+ end
13
+ subject { @bull }
14
+
15
+ should validate_presence_of( :name)
16
+ should validate_presence_of( :symbol)
17
+ should validate_uniqueness_of(:symbol).scoped_to :type
18
+ end
19
+
20
+ context 'relationship' do
21
+ setup do
22
+ @cow = Bull.create(:symbol => :cow, :name => 'Cow')
23
+ @calf = Bull.create(:parent => @cow, :symbol => :calf, :name => 'Calf')
24
+ end
25
+
26
+ should 'expose parent' do
27
+ assert_equal @cow, @calf.parent
28
+ end
29
+
30
+ should 'expose children' do
31
+ assert_equal 1, @cow.children.size
32
+ assert_equal @calf, @cow.children.first
33
+ end
34
+
35
+ should 'return hash for to_heading' do
36
+ assert_equal ({:cow => 'Cow'}), @cow.to_heading
37
+ end
38
+
39
+ end
40
+
41
+ context 'compareable' do
42
+ setup do
43
+ @a = Bull.new(:index => 1)
44
+ @b = Bull.new(:index => 2)
45
+ end
46
+ should 'compare equals on index' do
47
+ assert_equal @a,@a
48
+ end
49
+ should 'compare greater on index' do
50
+ assert @a < @b
51
+ end
52
+ should 'compare lower on index' do
53
+ assert !(@a > @b)
54
+ end
55
+ end
56
+
57
+ context 'reference as id' do
58
+ should 'support typecast to integer' do
59
+ @shit = Bull.new
60
+ @shit.expects(:id).returns(5)
61
+ assert_equal 5, @shit.to_i
62
+ end
63
+ end
64
+
65
+ context 'class methods' do
66
+ should 'include symbols' do
67
+ assert_equal [:site_admin, :user_admin], Role.symbols.sort
68
+ end
69
+ end
70
+
71
+ context 'translation' do
72
+ setup do
73
+ @current_locale = I18n.locale
74
+ end
75
+ teardown do
76
+ I18n.locale = @current_locale
77
+ end
78
+ context 'defined' do
79
+ should 'work depending on current locale' do
80
+ I18n.locale = :nb
81
+ @descriptor = Role[:user_admin]
82
+ assert_equal 'Bruker-administrator', @descriptor.name
83
+ assert_equal 'Kan administrere brukere....', @descriptor.description
84
+ I18n.locale = :en
85
+ @descriptor = Role[:user_admin]
86
+ assert_equal 'User Administrator', @descriptor.name
87
+ assert_equal 'Administers users and legal entities', @descriptor.description
88
+ end
89
+ end
90
+ context 'undefined' do
91
+ setup do
92
+ @descriptor = Bull.new symbol: :shit, name: 'Dagros', description: 'Ferdinand'
93
+ end
94
+ should 'fall back to entity properties itself' do
95
+ assert_equal 'Dagros', @descriptor.name
96
+ assert_equal 'Ferdinand', @descriptor.description
97
+ end
98
+ end
99
+ end
100
+ fixtures :users
101
+ context 'association' do
102
+ setup do
103
+ @user = users(:one)
104
+ end
105
+ should 'override reader' do
106
+ Role.expects(:find).with(@user.role_id)
107
+ @user.role
108
+ end
109
+ end
110
+ end
111
+ end
@@ -0,0 +1,22 @@
1
+ # Configure Rails Environment
2
+ ENV["RAILS_ENV"] = "test"
3
+
4
+ require File.expand_path("../../test/dummy/config/environment.rb", __FILE__)
5
+ ActiveRecord::Migrator.migrations_paths = [File.expand_path("../../test/dummy/db/migrate", __FILE__)]
6
+ require "rails/test_help"
7
+
8
+ # Filter out Minitest backtrace while allowing backtrace from other libraries
9
+ # to be shown.
10
+ Minitest.backtrace_filter = Minitest::BacktraceFilter.new
11
+
12
+ # Load support files
13
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
14
+
15
+ # Load fixtures from the engine
16
+ if ActiveSupport::TestCase.respond_to?(:fixture_path=)
17
+ ActiveSupport::TestCase.fixture_path = File.expand_path("../fixtures", __FILE__)
18
+ ActionDispatch::IntegrationTest.fixture_path = ActiveSupport::TestCase.fixture_path
19
+ ActiveSupport::TestCase.fixtures :all
20
+ end
21
+
22
+ require 'test_helpers/caching'
@@ -0,0 +1,57 @@
1
+ class ActiveSupport::TestCase
2
+ class CacheStub
3
+ def initialize(test_object, *expected_params)
4
+ @test_object, @expected_params = test_object, expected_params
5
+ end
6
+
7
+ def fetch(*params, &block)
8
+ @called = :fetch
9
+ @test_object.assert_equal @expected_params, params
10
+ block.call
11
+ end
12
+ def delete(*params)
13
+ @called = :delete
14
+ @test_object.assert_equal @expected_params, params
15
+ end
16
+ def called?(method)
17
+ @called == method
18
+ end
19
+ end
20
+
21
+ # expects a call to cache with certain attributes
22
+ #
23
+ # Example:
24
+ # expect_cached ['Cal::Bingo::Room', :accessible], expires_in: 5.minutes do
25
+ # Cal::Bingo::Room.expects(:where).with(deleted: 0).returns rooms
26
+ # @rooms = Cal::Bingo::Room.accessible
27
+ # end
28
+
29
+ def expect_cached(*params, &block)
30
+ _cache(:fetch, *params, &block)
31
+ end
32
+
33
+ # expects a call to cache with certain attributes
34
+ #
35
+ # Example:
36
+ # expect_cache_deleted 'Cal::Bingo::Room', :accessible do
37
+ # Cal::Bingo::Room.update_attributes(voila, :wow)
38
+ # end
39
+ def expect_cache_deleted(*params, &block)
40
+ _cache(:delete, *params, &block)
41
+ end
42
+
43
+ def _cache(expected_method, *params, &block) #nodoc
44
+ raise ArgumentError, 'You must specify block' unless block_given?
45
+ cache = CacheStub.new(self, *params)
46
+ Rails.stubs(:cache).returns(cache)
47
+ yield
48
+ assert cache.called?(expected_method), "cache #{expected_method} was never called\n #{caller[1]}"
49
+ Rails.unstub(:cache)
50
+ end
51
+
52
+ def expect_nothing_cached(&block)
53
+ raise ArgumentError, 'You must specify block' unless block_given?
54
+ Rails.expects(:cache).never
55
+ yield
56
+ end
57
+ end
metadata ADDED
@@ -0,0 +1,198 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: domain_neutral
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Knut I. Stenmark
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-06-07 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rails
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '3.2'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '3.2'
27
+ - !ruby/object:Gem::Dependency
28
+ name: sqlite3
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
+ description: |2
42
+ Model framework for for domain neutral classes, such as Descriptor which is fundamental for every database
43
+ to describe characteristics of an object.
44
+ email:
45
+ - knut.stenmark@gmail.com
46
+ executables: []
47
+ extensions: []
48
+ extra_rdoc_files: []
49
+ files:
50
+ - MIT-LICENSE
51
+ - Rakefile
52
+ - app/models/domain_neutral/descriptor.rb
53
+ - config/routes.rb
54
+ - db/migrate/20160531124022_create_domain_neutral_descriptors.rb
55
+ - lib/domain_neutral.rb
56
+ - lib/domain_neutral/association.rb
57
+ - lib/domain_neutral/engine.rb
58
+ - lib/domain_neutral/railtie.rb
59
+ - lib/domain_neutral/seed.rb
60
+ - lib/domain_neutral/seeder/descriptors.rb
61
+ - lib/domain_neutral/symbolized_class.rb
62
+ - lib/domain_neutral/version.rb
63
+ - lib/tasks/domain_neutral_tasks.rake
64
+ - test/domain_neutral/symbolized_class_test.rb
65
+ - test/domain_neutral_test.rb
66
+ - test/dummy/README.rdoc
67
+ - test/dummy/Rakefile
68
+ - test/dummy/app/assets/javascripts/application.js
69
+ - test/dummy/app/assets/stylesheets/application.css
70
+ - test/dummy/app/controllers/application_controller.rb
71
+ - test/dummy/app/helpers/application_helper.rb
72
+ - test/dummy/app/models/role.rb
73
+ - test/dummy/app/models/user.rb
74
+ - test/dummy/app/views/layouts/application.html.erb
75
+ - test/dummy/bin/bundle
76
+ - test/dummy/bin/rails
77
+ - test/dummy/bin/rake
78
+ - test/dummy/bin/setup
79
+ - test/dummy/config.ru
80
+ - test/dummy/config/application.rb
81
+ - test/dummy/config/boot.rb
82
+ - test/dummy/config/database.yml
83
+ - test/dummy/config/environment.rb
84
+ - test/dummy/config/environments/development.rb
85
+ - test/dummy/config/environments/production.rb
86
+ - test/dummy/config/environments/test.rb
87
+ - test/dummy/config/initializers/assets.rb
88
+ - test/dummy/config/initializers/backtrace_silencers.rb
89
+ - test/dummy/config/initializers/cookies_serializer.rb
90
+ - test/dummy/config/initializers/domain_neutral.rb
91
+ - test/dummy/config/initializers/filter_parameter_logging.rb
92
+ - test/dummy/config/initializers/inflections.rb
93
+ - test/dummy/config/initializers/mime_types.rb
94
+ - test/dummy/config/initializers/session_store.rb
95
+ - test/dummy/config/initializers/wrap_parameters.rb
96
+ - test/dummy/config/locales/en.yml
97
+ - test/dummy/config/locales/nb.yml
98
+ - test/dummy/config/routes.rb
99
+ - test/dummy/config/secrets.yml
100
+ - test/dummy/db/development.sqlite3
101
+ - test/dummy/db/migrate/20160601072742_create_domain_neutral_descriptors.domain_neutral.rb
102
+ - test/dummy/db/migrate/20160607100350_create_users.rb
103
+ - test/dummy/db/schema.rb
104
+ - test/dummy/db/test.sqlite3
105
+ - test/dummy/log/development.log
106
+ - test/dummy/log/test.log
107
+ - test/dummy/public/404.html
108
+ - test/dummy/public/422.html
109
+ - test/dummy/public/500.html
110
+ - test/dummy/public/favicon.ico
111
+ - test/dummy/tmp/cache/36E/B10/Role%2Fmap
112
+ - test/dummy/tmp/cache/657/A10/Role%2Fuser_admin
113
+ - test/fixtures/domain_neutral/descriptors.yml
114
+ - test/fixtures/users.yml
115
+ - test/integration/navigation_test.rb
116
+ - test/models/domain_neutral/descriptor_test.rb
117
+ - test/test_helper.rb
118
+ - test/test_helpers/caching.rb
119
+ homepage: https://github.com/daily_scrum/domain_neutral
120
+ licenses:
121
+ - MIT
122
+ metadata: {}
123
+ post_install_message:
124
+ rdoc_options: []
125
+ require_paths:
126
+ - lib
127
+ required_ruby_version: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ required_rubygems_version: !ruby/object:Gem::Requirement
133
+ requirements:
134
+ - - ">="
135
+ - !ruby/object:Gem::Version
136
+ version: '0'
137
+ requirements: []
138
+ rubyforge_project:
139
+ rubygems_version: 2.5.1
140
+ signing_key:
141
+ specification_version: 4
142
+ summary: DomainNeutral provides domain neutral model classes needed for most projects
143
+ test_files:
144
+ - test/domain_neutral/symbolized_class_test.rb
145
+ - test/domain_neutral_test.rb
146
+ - test/dummy/app/assets/javascripts/application.js
147
+ - test/dummy/app/assets/stylesheets/application.css
148
+ - test/dummy/app/controllers/application_controller.rb
149
+ - test/dummy/app/helpers/application_helper.rb
150
+ - test/dummy/app/models/role.rb
151
+ - test/dummy/app/models/user.rb
152
+ - test/dummy/app/views/layouts/application.html.erb
153
+ - test/dummy/bin/bundle
154
+ - test/dummy/bin/rails
155
+ - test/dummy/bin/rake
156
+ - test/dummy/bin/setup
157
+ - test/dummy/config/application.rb
158
+ - test/dummy/config/boot.rb
159
+ - test/dummy/config/database.yml
160
+ - test/dummy/config/environment.rb
161
+ - test/dummy/config/environments/development.rb
162
+ - test/dummy/config/environments/production.rb
163
+ - test/dummy/config/environments/test.rb
164
+ - test/dummy/config/initializers/assets.rb
165
+ - test/dummy/config/initializers/backtrace_silencers.rb
166
+ - test/dummy/config/initializers/cookies_serializer.rb
167
+ - test/dummy/config/initializers/domain_neutral.rb
168
+ - test/dummy/config/initializers/filter_parameter_logging.rb
169
+ - test/dummy/config/initializers/inflections.rb
170
+ - test/dummy/config/initializers/mime_types.rb
171
+ - test/dummy/config/initializers/session_store.rb
172
+ - test/dummy/config/initializers/wrap_parameters.rb
173
+ - test/dummy/config/locales/en.yml
174
+ - test/dummy/config/locales/nb.yml
175
+ - test/dummy/config/routes.rb
176
+ - test/dummy/config/secrets.yml
177
+ - test/dummy/config.ru
178
+ - test/dummy/db/development.sqlite3
179
+ - test/dummy/db/migrate/20160601072742_create_domain_neutral_descriptors.domain_neutral.rb
180
+ - test/dummy/db/migrate/20160607100350_create_users.rb
181
+ - test/dummy/db/schema.rb
182
+ - test/dummy/db/test.sqlite3
183
+ - test/dummy/log/development.log
184
+ - test/dummy/log/test.log
185
+ - test/dummy/public/404.html
186
+ - test/dummy/public/422.html
187
+ - test/dummy/public/500.html
188
+ - test/dummy/public/favicon.ico
189
+ - test/dummy/Rakefile
190
+ - test/dummy/README.rdoc
191
+ - test/dummy/tmp/cache/36E/B10/Role%2Fmap
192
+ - test/dummy/tmp/cache/657/A10/Role%2Fuser_admin
193
+ - test/fixtures/domain_neutral/descriptors.yml
194
+ - test/fixtures/users.yml
195
+ - test/integration/navigation_test.rb
196
+ - test/models/domain_neutral/descriptor_test.rb
197
+ - test/test_helper.rb
198
+ - test/test_helpers/caching.rb