forest_liana 1.0.0.beta5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (96) hide show
  1. data/LICENSE +675 -0
  2. data/README.rdoc +1 -0
  3. data/Rakefile +37 -0
  4. data/app/assets/javascripts/forest_liana/application.js +13 -0
  5. data/app/assets/stylesheets/forest_liana/application.css +15 -0
  6. data/app/assets/stylesheets/scaffold.css +56 -0
  7. data/app/controllers/forest_liana/apimaps_controller.rb +18 -0
  8. data/app/controllers/forest_liana/application_controller.rb +30 -0
  9. data/app/controllers/forest_liana/resources_controller.rb +62 -0
  10. data/app/deserializers/forest_liana/resource_deserializer.rb +41 -0
  11. data/app/helpers/forest_liana/application_helper.rb +4 -0
  12. data/app/models/forest_liana/collection.rb +26 -0
  13. data/app/serializers/forest_liana/apimap_serializer.rb +10 -0
  14. data/app/serializers/forest_liana/serializer_factory.rb +88 -0
  15. data/app/services/forest_liana/resource_getter.rb +15 -0
  16. data/app/services/forest_liana/resources_getter.rb +101 -0
  17. data/app/services/forest_liana/schema_adapter.rb +118 -0
  18. data/app/services/forest_liana/schema_utils.rb +28 -0
  19. data/app/services/forest_liana/search_query_builder.rb +70 -0
  20. data/app/views/layouts/forest_liana/application.html.erb +14 -0
  21. data/config/initializers/mimetype.rb +1 -0
  22. data/config/routes.rb +9 -0
  23. data/lib/forest_liana.rb +5 -0
  24. data/lib/forest_liana/engine.rb +30 -0
  25. data/lib/forest_liana/version.rb +3 -0
  26. data/lib/generators/forest_liana/install_generator.rb +15 -0
  27. data/lib/tasks/forest_tasks.rake +4 -0
  28. data/test/dummy/README.rdoc +28 -0
  29. data/test/dummy/Rakefile +6 -0
  30. data/test/dummy/app/assets/javascripts/application.js +13 -0
  31. data/test/dummy/app/assets/stylesheets/application.css +15 -0
  32. data/test/dummy/app/controllers/application_controller.rb +5 -0
  33. data/test/dummy/app/helpers/application_helper.rb +2 -0
  34. data/test/dummy/app/models/belongs_to_class_name_field.rb +3 -0
  35. data/test/dummy/app/models/belongs_to_field.rb +3 -0
  36. data/test/dummy/app/models/boolean_field.rb +2 -0
  37. data/test/dummy/app/models/date_field.rb +2 -0
  38. data/test/dummy/app/models/decimal_field.rb +2 -0
  39. data/test/dummy/app/models/float_field.rb +2 -0
  40. data/test/dummy/app/models/has_and_belongs_to_many_field.rb +3 -0
  41. data/test/dummy/app/models/has_many_class_name_field.rb +3 -0
  42. data/test/dummy/app/models/has_many_field.rb +3 -0
  43. data/test/dummy/app/models/has_one_field.rb +3 -0
  44. data/test/dummy/app/models/integer_field.rb +2 -0
  45. data/test/dummy/app/models/polymorphic_field.rb +3 -0
  46. data/test/dummy/app/models/string_field.rb +2 -0
  47. data/test/dummy/app/views/layouts/application.html.erb +14 -0
  48. data/test/dummy/bin/bundle +3 -0
  49. data/test/dummy/bin/rails +4 -0
  50. data/test/dummy/bin/rake +4 -0
  51. data/test/dummy/bin/setup +29 -0
  52. data/test/dummy/config.ru +4 -0
  53. data/test/dummy/config/application.rb +26 -0
  54. data/test/dummy/config/boot.rb +5 -0
  55. data/test/dummy/config/database.yml +25 -0
  56. data/test/dummy/config/environment.rb +5 -0
  57. data/test/dummy/config/environments/development.rb +41 -0
  58. data/test/dummy/config/environments/production.rb +79 -0
  59. data/test/dummy/config/environments/test.rb +42 -0
  60. data/test/dummy/config/initializers/assets.rb +11 -0
  61. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  62. data/test/dummy/config/initializers/cookies_serializer.rb +3 -0
  63. data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  64. data/test/dummy/config/initializers/inflections.rb +16 -0
  65. data/test/dummy/config/initializers/mime_types.rb +4 -0
  66. data/test/dummy/config/initializers/session_store.rb +3 -0
  67. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  68. data/test/dummy/config/locales/en.yml +23 -0
  69. data/test/dummy/config/routes.rb +4 -0
  70. data/test/dummy/config/secrets.yml +22 -0
  71. data/test/dummy/db/development.sqlite3 +0 -0
  72. data/test/dummy/db/migrate/20150608130516_create_date_field.rb +7 -0
  73. data/test/dummy/db/migrate/20150608131430_create_integer_field.rb +7 -0
  74. data/test/dummy/db/migrate/20150608131603_create_decimal_field.rb +7 -0
  75. data/test/dummy/db/migrate/20150608131610_create_float_field.rb +7 -0
  76. data/test/dummy/db/migrate/20150608132159_create_boolean_field.rb +7 -0
  77. data/test/dummy/db/migrate/20150608132621_create_string_field.rb +7 -0
  78. data/test/dummy/db/migrate/20150608133038_create_belongs_to_field.rb +7 -0
  79. data/test/dummy/db/migrate/20150608133044_create_has_one_field.rb +6 -0
  80. data/test/dummy/db/migrate/20150608150016_create_has_many_field.rb +6 -0
  81. data/test/dummy/db/migrate/20150609114636_create_belongs_to_class_name_field.rb +7 -0
  82. data/test/dummy/db/migrate/20150612112520_create_has_and_belongs_to_many_field.rb +6 -0
  83. data/test/dummy/db/migrate/20150616150629_create_polymorphic_field.rb +7 -0
  84. data/test/dummy/db/migrate/20150623115554_create_has_many_class_name_field.rb +6 -0
  85. data/test/dummy/db/schema.rb +70 -0
  86. data/test/dummy/db/test.sqlite3 +0 -0
  87. data/test/dummy/log/test.log +395 -0
  88. data/test/dummy/public/404.html +67 -0
  89. data/test/dummy/public/422.html +67 -0
  90. data/test/dummy/public/500.html +66 -0
  91. data/test/dummy/public/favicon.ico +0 -0
  92. data/test/forest_liana_test.rb +7 -0
  93. data/test/integration/navigation_test.rb +10 -0
  94. data/test/services/forest_liana/schema_adapter_test.rb +87 -0
  95. data/test/test_helper.rb +20 -0
  96. metadata +274 -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,7 @@
1
+ require 'test_helper'
2
+
3
+ class ForestLianaTest < ActiveSupport::TestCase
4
+ test "truth" do
5
+ assert_kind_of Module, ForestLiana
6
+ end
7
+ end
@@ -0,0 +1,10 @@
1
+ require 'test_helper'
2
+
3
+ class NavigationTest < ActionDispatch::IntegrationTest
4
+ fixtures :all
5
+
6
+ # test "the truth" do
7
+ # assert true
8
+ # end
9
+ end
10
+
@@ -0,0 +1,87 @@
1
+ module ForestLiana
2
+ class SchemaAdapterTest < ActiveSupport::TestCase
3
+ test 'Date should have the type `Date`' do
4
+ schema = SchemaAdapter.new(DateField).perform
5
+ assert schema.fields.include?({ field: 'field', type: 'Date' })
6
+ end
7
+
8
+ test 'DateTime should have the type `Date`' do
9
+ schema = SchemaAdapter.new(DateField).perform
10
+ assert schema.fields.include?({ field: 'field', type: 'Date' })
11
+ end
12
+
13
+ test 'Integer should have the type `Number`' do
14
+ schema = SchemaAdapter.new(IntegerField).perform
15
+ assert schema.fields.include?({ field: 'field', type: 'Number' })
16
+ end
17
+
18
+ test 'Float should have the type `Number`' do
19
+ schema = SchemaAdapter.new(FloatField).perform
20
+ assert schema.fields.include?({ field: 'field', type: 'Number' })
21
+ end
22
+
23
+ test 'Decimal should have the type `Number`' do
24
+ schema = SchemaAdapter.new(DecimalField).perform
25
+ assert schema.fields.include?({ field: 'field', type: 'Number' })
26
+ end
27
+
28
+ test 'Boolean should have the type `Boolean`' do
29
+ schema = SchemaAdapter.new(BooleanField).perform
30
+ assert schema.fields.include?({ field: 'field', type: 'Boolean' })
31
+ end
32
+
33
+ test 'String should have the type `String`' do
34
+ schema = SchemaAdapter.new(StringField).perform
35
+ assert schema.fields.include?({ field: 'field', type: 'String' })
36
+ end
37
+
38
+ test 'belongsTo relationship' do
39
+ schema = SchemaAdapter.new(BelongsToField).perform
40
+ assert schema.fields.include?({
41
+ field: 'has_one_field',
42
+ type: 'Number',
43
+ reference: 'has_one_fields.id'
44
+ })
45
+ end
46
+
47
+ test 'hasOne relationship' do
48
+ schema = SchemaAdapter.new(HasOneField).perform
49
+ assert schema.fields.include?({
50
+ field: 'belongs_to_field',
51
+ type: 'Number',
52
+ reference: 'belongs_to_fields.id',
53
+ inverseOf: 'has_one_field'
54
+ })
55
+ end
56
+
57
+ test 'hasMany relationship' do
58
+ schema = SchemaAdapter.new(HasManyField).perform
59
+ assert schema.fields.include?({
60
+ field: 'belongs_to_field',
61
+ type: ['Number'],
62
+ reference: 'belongs_to_fields.id',
63
+ inverseOf: 'has_many_field'
64
+ })
65
+ end
66
+
67
+ test 'belongsTo relationhip with specified class_name' do
68
+ schema = SchemaAdapter.new(BelongsToClassNameField).perform
69
+ assert schema.fields.include?({
70
+ field: 'foo',
71
+ type: 'Number',
72
+ reference: 'has_one_fields.id'
73
+ })
74
+ end
75
+
76
+ test 'hasMany relationhip with specified class_name' do
77
+ schema = SchemaAdapter.new(HasManyClassNameField).perform
78
+ assert schema.fields.include?({
79
+ field: 'foo',
80
+ type: ['Number'],
81
+ reference: 'belongs_to_fields.id',
82
+ inverseOf: 'has_many_class_name_field'
83
+ })
84
+ end
85
+
86
+ end
87
+ end
@@ -0,0 +1,20 @@
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
+ ActiveRecord::Migrator.migrations_paths << File.expand_path('../../db/migrate', __FILE__)
7
+ require "rails/test_help"
8
+
9
+ # Filter out Minitest backtrace while allowing backtrace from other libraries
10
+ # to be shown.
11
+ Minitest.backtrace_filter = Minitest::BacktraceFilter.new
12
+
13
+ # Load support files
14
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
15
+
16
+ # Load fixtures from the engine
17
+ if ActiveSupport::TestCase.respond_to?(:fixture_path=)
18
+ ActiveSupport::TestCase.fixture_path = File.expand_path("../fixtures", __FILE__)
19
+ ActiveSupport::TestCase.fixtures :all
20
+ end
metadata ADDED
@@ -0,0 +1,274 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: forest_liana
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0.beta5
5
+ prerelease: 6
6
+ platform: ruby
7
+ authors:
8
+ - Sandro Munda
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2015-08-06 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rails
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '3.0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '3.0'
30
+ - !ruby/object:Gem::Dependency
31
+ name: jsonapi-serializers
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ type: :runtime
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
46
+ - !ruby/object:Gem::Dependency
47
+ name: jwt
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ - !ruby/object:Gem::Dependency
63
+ name: rack-cors
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ type: :runtime
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
78
+ description: Forest Rails Liana
79
+ email:
80
+ - sandro@munda.me
81
+ executables: []
82
+ extensions: []
83
+ extra_rdoc_files: []
84
+ files:
85
+ - app/assets/javascripts/forest_liana/application.js
86
+ - app/assets/stylesheets/forest_liana/application.css
87
+ - app/assets/stylesheets/scaffold.css
88
+ - app/controllers/forest_liana/apimaps_controller.rb
89
+ - app/controllers/forest_liana/application_controller.rb
90
+ - app/controllers/forest_liana/resources_controller.rb
91
+ - app/deserializers/forest_liana/resource_deserializer.rb
92
+ - app/helpers/forest_liana/application_helper.rb
93
+ - app/models/forest_liana/collection.rb
94
+ - app/serializers/forest_liana/apimap_serializer.rb
95
+ - app/serializers/forest_liana/serializer_factory.rb
96
+ - app/services/forest_liana/resource_getter.rb
97
+ - app/services/forest_liana/resources_getter.rb
98
+ - app/services/forest_liana/schema_adapter.rb
99
+ - app/services/forest_liana/schema_utils.rb
100
+ - app/services/forest_liana/search_query_builder.rb
101
+ - app/views/layouts/forest_liana/application.html.erb
102
+ - config/initializers/mimetype.rb
103
+ - config/routes.rb
104
+ - lib/forest_liana/engine.rb
105
+ - lib/forest_liana/version.rb
106
+ - lib/forest_liana.rb
107
+ - lib/generators/forest_liana/install_generator.rb
108
+ - lib/tasks/forest_tasks.rake
109
+ - LICENSE
110
+ - Rakefile
111
+ - README.rdoc
112
+ - test/dummy/app/assets/javascripts/application.js
113
+ - test/dummy/app/assets/stylesheets/application.css
114
+ - test/dummy/app/controllers/application_controller.rb
115
+ - test/dummy/app/helpers/application_helper.rb
116
+ - test/dummy/app/models/belongs_to_class_name_field.rb
117
+ - test/dummy/app/models/belongs_to_field.rb
118
+ - test/dummy/app/models/boolean_field.rb
119
+ - test/dummy/app/models/date_field.rb
120
+ - test/dummy/app/models/decimal_field.rb
121
+ - test/dummy/app/models/float_field.rb
122
+ - test/dummy/app/models/has_and_belongs_to_many_field.rb
123
+ - test/dummy/app/models/has_many_class_name_field.rb
124
+ - test/dummy/app/models/has_many_field.rb
125
+ - test/dummy/app/models/has_one_field.rb
126
+ - test/dummy/app/models/integer_field.rb
127
+ - test/dummy/app/models/polymorphic_field.rb
128
+ - test/dummy/app/models/string_field.rb
129
+ - test/dummy/app/views/layouts/application.html.erb
130
+ - test/dummy/bin/bundle
131
+ - test/dummy/bin/rails
132
+ - test/dummy/bin/rake
133
+ - test/dummy/bin/setup
134
+ - test/dummy/config/application.rb
135
+ - test/dummy/config/boot.rb
136
+ - test/dummy/config/database.yml
137
+ - test/dummy/config/environment.rb
138
+ - test/dummy/config/environments/development.rb
139
+ - test/dummy/config/environments/production.rb
140
+ - test/dummy/config/environments/test.rb
141
+ - test/dummy/config/initializers/assets.rb
142
+ - test/dummy/config/initializers/backtrace_silencers.rb
143
+ - test/dummy/config/initializers/cookies_serializer.rb
144
+ - test/dummy/config/initializers/filter_parameter_logging.rb
145
+ - test/dummy/config/initializers/inflections.rb
146
+ - test/dummy/config/initializers/mime_types.rb
147
+ - test/dummy/config/initializers/session_store.rb
148
+ - test/dummy/config/initializers/wrap_parameters.rb
149
+ - test/dummy/config/locales/en.yml
150
+ - test/dummy/config/routes.rb
151
+ - test/dummy/config/secrets.yml
152
+ - test/dummy/config.ru
153
+ - test/dummy/db/development.sqlite3
154
+ - test/dummy/db/migrate/20150608130516_create_date_field.rb
155
+ - test/dummy/db/migrate/20150608131430_create_integer_field.rb
156
+ - test/dummy/db/migrate/20150608131603_create_decimal_field.rb
157
+ - test/dummy/db/migrate/20150608131610_create_float_field.rb
158
+ - test/dummy/db/migrate/20150608132159_create_boolean_field.rb
159
+ - test/dummy/db/migrate/20150608132621_create_string_field.rb
160
+ - test/dummy/db/migrate/20150608133038_create_belongs_to_field.rb
161
+ - test/dummy/db/migrate/20150608133044_create_has_one_field.rb
162
+ - test/dummy/db/migrate/20150608150016_create_has_many_field.rb
163
+ - test/dummy/db/migrate/20150609114636_create_belongs_to_class_name_field.rb
164
+ - test/dummy/db/migrate/20150612112520_create_has_and_belongs_to_many_field.rb
165
+ - test/dummy/db/migrate/20150616150629_create_polymorphic_field.rb
166
+ - test/dummy/db/migrate/20150623115554_create_has_many_class_name_field.rb
167
+ - test/dummy/db/schema.rb
168
+ - test/dummy/db/test.sqlite3
169
+ - test/dummy/log/test.log
170
+ - test/dummy/public/404.html
171
+ - test/dummy/public/422.html
172
+ - test/dummy/public/500.html
173
+ - test/dummy/public/favicon.ico
174
+ - test/dummy/Rakefile
175
+ - test/dummy/README.rdoc
176
+ - test/forest_liana_test.rb
177
+ - test/integration/navigation_test.rb
178
+ - test/services/forest_liana/schema_adapter_test.rb
179
+ - test/test_helper.rb
180
+ homepage:
181
+ licenses:
182
+ - GPL v3
183
+ post_install_message:
184
+ rdoc_options: []
185
+ require_paths:
186
+ - lib
187
+ required_ruby_version: !ruby/object:Gem::Requirement
188
+ none: false
189
+ requirements:
190
+ - - ! '>='
191
+ - !ruby/object:Gem::Version
192
+ version: '0'
193
+ required_rubygems_version: !ruby/object:Gem::Requirement
194
+ none: false
195
+ requirements:
196
+ - - ! '>'
197
+ - !ruby/object:Gem::Version
198
+ version: 1.3.1
199
+ requirements: []
200
+ rubyforge_project:
201
+ rubygems_version: 1.8.23.2
202
+ signing_key:
203
+ specification_version: 3
204
+ summary: Forest Rails Liana
205
+ test_files:
206
+ - test/dummy/app/assets/javascripts/application.js
207
+ - test/dummy/app/assets/stylesheets/application.css
208
+ - test/dummy/app/controllers/application_controller.rb
209
+ - test/dummy/app/helpers/application_helper.rb
210
+ - test/dummy/app/models/belongs_to_class_name_field.rb
211
+ - test/dummy/app/models/belongs_to_field.rb
212
+ - test/dummy/app/models/boolean_field.rb
213
+ - test/dummy/app/models/date_field.rb
214
+ - test/dummy/app/models/decimal_field.rb
215
+ - test/dummy/app/models/float_field.rb
216
+ - test/dummy/app/models/has_and_belongs_to_many_field.rb
217
+ - test/dummy/app/models/has_many_class_name_field.rb
218
+ - test/dummy/app/models/has_many_field.rb
219
+ - test/dummy/app/models/has_one_field.rb
220
+ - test/dummy/app/models/integer_field.rb
221
+ - test/dummy/app/models/polymorphic_field.rb
222
+ - test/dummy/app/models/string_field.rb
223
+ - test/dummy/app/views/layouts/application.html.erb
224
+ - test/dummy/bin/bundle
225
+ - test/dummy/bin/rails
226
+ - test/dummy/bin/rake
227
+ - test/dummy/bin/setup
228
+ - test/dummy/config/application.rb
229
+ - test/dummy/config/boot.rb
230
+ - test/dummy/config/database.yml
231
+ - test/dummy/config/environment.rb
232
+ - test/dummy/config/environments/development.rb
233
+ - test/dummy/config/environments/production.rb
234
+ - test/dummy/config/environments/test.rb
235
+ - test/dummy/config/initializers/assets.rb
236
+ - test/dummy/config/initializers/backtrace_silencers.rb
237
+ - test/dummy/config/initializers/cookies_serializer.rb
238
+ - test/dummy/config/initializers/filter_parameter_logging.rb
239
+ - test/dummy/config/initializers/inflections.rb
240
+ - test/dummy/config/initializers/mime_types.rb
241
+ - test/dummy/config/initializers/session_store.rb
242
+ - test/dummy/config/initializers/wrap_parameters.rb
243
+ - test/dummy/config/locales/en.yml
244
+ - test/dummy/config/routes.rb
245
+ - test/dummy/config/secrets.yml
246
+ - test/dummy/config.ru
247
+ - test/dummy/db/development.sqlite3
248
+ - test/dummy/db/migrate/20150608130516_create_date_field.rb
249
+ - test/dummy/db/migrate/20150608131430_create_integer_field.rb
250
+ - test/dummy/db/migrate/20150608131603_create_decimal_field.rb
251
+ - test/dummy/db/migrate/20150608131610_create_float_field.rb
252
+ - test/dummy/db/migrate/20150608132159_create_boolean_field.rb
253
+ - test/dummy/db/migrate/20150608132621_create_string_field.rb
254
+ - test/dummy/db/migrate/20150608133038_create_belongs_to_field.rb
255
+ - test/dummy/db/migrate/20150608133044_create_has_one_field.rb
256
+ - test/dummy/db/migrate/20150608150016_create_has_many_field.rb
257
+ - test/dummy/db/migrate/20150609114636_create_belongs_to_class_name_field.rb
258
+ - test/dummy/db/migrate/20150612112520_create_has_and_belongs_to_many_field.rb
259
+ - test/dummy/db/migrate/20150616150629_create_polymorphic_field.rb
260
+ - test/dummy/db/migrate/20150623115554_create_has_many_class_name_field.rb
261
+ - test/dummy/db/schema.rb
262
+ - test/dummy/db/test.sqlite3
263
+ - test/dummy/log/test.log
264
+ - test/dummy/public/404.html
265
+ - test/dummy/public/422.html
266
+ - test/dummy/public/500.html
267
+ - test/dummy/public/favicon.ico
268
+ - test/dummy/Rakefile
269
+ - test/dummy/README.rdoc
270
+ - test/forest_liana_test.rb
271
+ - test/integration/navigation_test.rb
272
+ - test/services/forest_liana/schema_adapter_test.rb
273
+ - test/test_helper.rb
274
+ has_rdoc: