test branch for rails up
This commit is contained in:
parent
858eb06922
commit
d059b736a6
18 changed files with 398 additions and 249 deletions
5
Gemfile
5
Gemfile
|
@ -1,7 +1,7 @@
|
|||
# A sample Gemfile
|
||||
source "https://rubygems.org"
|
||||
|
||||
gem "rails", '~> 5.2'
|
||||
gem "rails", '~> 6.1'
|
||||
|
||||
gem 'sass-rails'
|
||||
gem 'less-rails'
|
||||
|
@ -115,8 +115,5 @@ group :test do
|
|||
gem 'simplecov', require: false
|
||||
gem 'simplecov-lcov', require: false
|
||||
# api
|
||||
gem 'apivore', require: false
|
||||
gem 'rswag'
|
||||
gem 'rswag-specs'
|
||||
gem 'hashie', '~> 3.4.6', require: false # https://github.com/westfieldlabs/apivore/issues/114
|
||||
end
|
||||
|
|
299
Gemfile.lock
299
Gemfile.lock
|
@ -59,67 +59,77 @@ PATH
|
|||
GEM
|
||||
remote: https://rubygems.org/
|
||||
specs:
|
||||
actioncable (5.2.8)
|
||||
actionpack (= 5.2.8)
|
||||
actioncable (6.1.7)
|
||||
actionpack (= 6.1.7)
|
||||
activesupport (= 6.1.7)
|
||||
nio4r (~> 2.0)
|
||||
websocket-driver (>= 0.6.1)
|
||||
actionmailer (5.2.8)
|
||||
actionpack (= 5.2.8)
|
||||
actionview (= 5.2.8)
|
||||
activejob (= 5.2.8)
|
||||
actionmailbox (6.1.7)
|
||||
actionpack (= 6.1.7)
|
||||
activejob (= 6.1.7)
|
||||
activerecord (= 6.1.7)
|
||||
activestorage (= 6.1.7)
|
||||
activesupport (= 6.1.7)
|
||||
mail (>= 2.7.1)
|
||||
actionmailer (6.1.7)
|
||||
actionpack (= 6.1.7)
|
||||
actionview (= 6.1.7)
|
||||
activejob (= 6.1.7)
|
||||
activesupport (= 6.1.7)
|
||||
mail (~> 2.5, >= 2.5.4)
|
||||
rails-dom-testing (~> 2.0)
|
||||
actionpack (5.2.8)
|
||||
actionview (= 5.2.8)
|
||||
activesupport (= 5.2.8)
|
||||
rack (~> 2.0, >= 2.0.8)
|
||||
actionpack (6.1.7)
|
||||
actionview (= 6.1.7)
|
||||
activesupport (= 6.1.7)
|
||||
rack (~> 2.0, >= 2.0.9)
|
||||
rack-test (>= 0.6.3)
|
||||
rails-dom-testing (~> 2.0)
|
||||
rails-html-sanitizer (~> 1.0, >= 1.0.2)
|
||||
actionview (5.2.8)
|
||||
activesupport (= 5.2.8)
|
||||
rails-html-sanitizer (~> 1.0, >= 1.2.0)
|
||||
actiontext (6.1.7)
|
||||
actionpack (= 6.1.7)
|
||||
activerecord (= 6.1.7)
|
||||
activestorage (= 6.1.7)
|
||||
activesupport (= 6.1.7)
|
||||
nokogiri (>= 1.8.5)
|
||||
actionview (6.1.7)
|
||||
activesupport (= 6.1.7)
|
||||
builder (~> 3.1)
|
||||
erubi (~> 1.4)
|
||||
rails-dom-testing (~> 2.0)
|
||||
rails-html-sanitizer (~> 1.0, >= 1.0.3)
|
||||
rails-html-sanitizer (~> 1.1, >= 1.2.0)
|
||||
active_model_serializers (0.10.13)
|
||||
actionpack (>= 4.1, < 7.1)
|
||||
activemodel (>= 4.1, < 7.1)
|
||||
case_transform (>= 0.2)
|
||||
jsonapi-renderer (>= 0.1.1.beta1, < 0.3)
|
||||
activejob (5.2.8)
|
||||
activesupport (= 5.2.8)
|
||||
activejob (6.1.7)
|
||||
activesupport (= 6.1.7)
|
||||
globalid (>= 0.3.6)
|
||||
activemodel (5.2.8)
|
||||
activesupport (= 5.2.8)
|
||||
activerecord (5.2.8)
|
||||
activemodel (= 5.2.8)
|
||||
activesupport (= 5.2.8)
|
||||
arel (>= 9.0)
|
||||
activestorage (5.2.8)
|
||||
actionpack (= 5.2.8)
|
||||
activerecord (= 5.2.8)
|
||||
marcel (~> 1.0.0)
|
||||
activesupport (5.2.8)
|
||||
activemodel (6.1.7)
|
||||
activesupport (= 6.1.7)
|
||||
activerecord (6.1.7)
|
||||
activemodel (= 6.1.7)
|
||||
activesupport (= 6.1.7)
|
||||
activestorage (6.1.7)
|
||||
actionpack (= 6.1.7)
|
||||
activejob (= 6.1.7)
|
||||
activerecord (= 6.1.7)
|
||||
activesupport (= 6.1.7)
|
||||
marcel (~> 1.0)
|
||||
mini_mime (>= 1.1.0)
|
||||
activesupport (6.1.7)
|
||||
concurrent-ruby (~> 1.0, >= 1.0.2)
|
||||
i18n (>= 0.7, < 2)
|
||||
minitest (~> 5.1)
|
||||
tzinfo (~> 1.1)
|
||||
i18n (>= 1.6, < 2)
|
||||
minitest (>= 5.1)
|
||||
tzinfo (~> 2.0)
|
||||
zeitwerk (~> 2.3)
|
||||
acts_as_tree (2.9.1)
|
||||
activerecord (>= 3.0.0)
|
||||
addressable (2.8.0)
|
||||
public_suffix (>= 2.0.2, < 5.0)
|
||||
apivore (1.6.2)
|
||||
actionpack (>= 4, < 6)
|
||||
hashie (~> 3.3)
|
||||
json-schema (~> 2.5)
|
||||
rspec (~> 3)
|
||||
rspec-expectations (~> 3.1)
|
||||
rspec-mocks (~> 3.1)
|
||||
addressable (2.8.1)
|
||||
public_suffix (>= 2.0.2, < 6.0)
|
||||
apparition (0.6.0)
|
||||
capybara (~> 3.13, < 4)
|
||||
websocket-driver (>= 0.6.5)
|
||||
arel (9.0.0)
|
||||
ast (2.4.2)
|
||||
attribute_normalizer (1.2.0)
|
||||
base32 (0.3.4)
|
||||
|
@ -130,12 +140,12 @@ GEM
|
|||
bindex (0.8.1)
|
||||
binding_of_caller (1.0.0)
|
||||
debug_inspector (>= 0.0.1)
|
||||
bootsnap (1.11.1)
|
||||
bootsnap (1.13.0)
|
||||
msgpack (~> 1.2)
|
||||
bootstrap-datepicker-rails (1.9.0.1)
|
||||
railties (>= 3.0)
|
||||
builder (3.2.4)
|
||||
bullet (7.0.1)
|
||||
bullet (7.0.3)
|
||||
activesupport (>= 3.0.0)
|
||||
uniform_notifier (~> 1.11)
|
||||
capybara (3.36.0)
|
||||
|
@ -160,7 +170,7 @@ GEM
|
|||
coffee-script-source (1.12.2)
|
||||
commonjs (0.2.7)
|
||||
concurrent-ruby (1.1.10)
|
||||
connection_pool (2.2.5)
|
||||
connection_pool (2.3.0)
|
||||
content_for_in_controllers (0.0.2)
|
||||
crass (1.0.6)
|
||||
daemons (1.4.1)
|
||||
|
@ -180,15 +190,14 @@ GEM
|
|||
railties (>= 5.2)
|
||||
rainbow (>= 2.1.0)
|
||||
diff-lcs (1.5.0)
|
||||
diffy (3.4.0)
|
||||
diffy (3.4.2)
|
||||
docile (1.4.0)
|
||||
doorkeeper (5.5.4)
|
||||
doorkeeper (5.6.0)
|
||||
railties (>= 5)
|
||||
doorkeeper-i18n (5.2.3)
|
||||
doorkeeper-i18n (5.2.5)
|
||||
doorkeeper (>= 5.2)
|
||||
email_reply_trimmer (0.1.13)
|
||||
erubi (1.10.0)
|
||||
erubis (2.7.0)
|
||||
erubi (1.11.0)
|
||||
eventmachine (1.2.7)
|
||||
exception_notification (4.5.0)
|
||||
actionmailer (>= 5.2, < 8)
|
||||
|
@ -200,33 +209,28 @@ GEM
|
|||
factory_bot_rails (6.2.0)
|
||||
factory_bot (~> 6.2.0)
|
||||
railties (>= 5.0.0)
|
||||
faker (2.21.0)
|
||||
faker (2.22.0)
|
||||
i18n (>= 1.8.11, < 2)
|
||||
ffi (1.15.5)
|
||||
gaffe (1.2.0)
|
||||
rails (>= 4.0.0)
|
||||
globalid (1.0.0)
|
||||
activesupport (>= 5.0)
|
||||
haml (5.2.2)
|
||||
temple (>= 0.8.0)
|
||||
haml (6.0.6)
|
||||
temple (>= 0.8.2)
|
||||
thor
|
||||
tilt
|
||||
haml-rails (2.0.1)
|
||||
haml-rails (2.1.0)
|
||||
actionpack (>= 5.1)
|
||||
activesupport (>= 5.1)
|
||||
haml (>= 4.0.6, < 6.0)
|
||||
html2haml (>= 1.0.1)
|
||||
haml (>= 4.0.6)
|
||||
railties (>= 5.1)
|
||||
has_scope (0.8.0)
|
||||
actionpack (>= 5.2)
|
||||
activesupport (>= 5.2)
|
||||
hashie (3.4.6)
|
||||
html2haml (2.2.0)
|
||||
erubis (~> 2.7.0)
|
||||
haml (>= 4.0, < 6)
|
||||
nokogiri (>= 1.6.0)
|
||||
ruby_parser (~> 3.5)
|
||||
htmlentities (4.3.4)
|
||||
i18n (1.10.0)
|
||||
i18n (1.12.0)
|
||||
concurrent-ruby (~> 1.0)
|
||||
i18n-js (3.0.11)
|
||||
i18n (>= 0.6.6, < 2)
|
||||
|
@ -246,8 +250,6 @@ GEM
|
|||
railties (>= 4.2.0)
|
||||
thor (>= 0.14, < 2.0)
|
||||
json (2.6.2)
|
||||
json-schema (2.8.1)
|
||||
addressable (>= 2.4)
|
||||
jsonapi-renderer (0.2.2)
|
||||
kaminari (1.2.2)
|
||||
activesupport (>= 4.1.0)
|
||||
|
@ -271,7 +273,7 @@ GEM
|
|||
listen (3.7.1)
|
||||
rb-fsevent (~> 0.10, >= 0.10.3)
|
||||
rb-inotify (~> 0.9, >= 0.9.10)
|
||||
loofah (2.18.0)
|
||||
loofah (2.19.0)
|
||||
crass (~> 1.0.2)
|
||||
nokogiri (>= 1.5.9)
|
||||
mail (2.7.1)
|
||||
|
@ -298,19 +300,19 @@ GEM
|
|||
mime-types-data (3.2022.0105)
|
||||
mini_mime (1.1.2)
|
||||
mini_portile2 (2.8.0)
|
||||
minitest (5.15.0)
|
||||
minitest (5.16.3)
|
||||
mono_logger (1.1.1)
|
||||
msgpack (1.5.2)
|
||||
msgpack (1.6.0)
|
||||
multi_json (1.15.0)
|
||||
mustermann (1.1.1)
|
||||
mustermann (3.0.0)
|
||||
ruby2_keywords (~> 0.0.1)
|
||||
mysql2 (0.5.4)
|
||||
nio4r (2.5.8)
|
||||
nokogiri (1.13.6)
|
||||
nokogiri (1.13.8)
|
||||
mini_portile2 (~> 2.8.0)
|
||||
racc (~> 1.4)
|
||||
parallel (1.22.1)
|
||||
parser (3.1.2.0)
|
||||
parser (3.1.2.1)
|
||||
ast (~> 2.4.1)
|
||||
pdf-core (0.9.0)
|
||||
polyglot (0.3.5)
|
||||
|
@ -328,59 +330,61 @@ GEM
|
|||
pry-stack_explorer (0.6.1)
|
||||
binding_of_caller (~> 1.0)
|
||||
pry (~> 0.13)
|
||||
public_suffix (4.0.7)
|
||||
puma (5.6.4)
|
||||
public_suffix (5.0.0)
|
||||
puma (5.6.5)
|
||||
nio4r (~> 2.0)
|
||||
racc (1.6.0)
|
||||
rack (2.2.3.1)
|
||||
rack (2.2.4)
|
||||
rack-contrib (2.3.0)
|
||||
rack (~> 2.0)
|
||||
rack-cors (1.1.1)
|
||||
rack (>= 2.0.0)
|
||||
rack-protection (2.2.0)
|
||||
rack-protection (3.0.2)
|
||||
rack
|
||||
rack-test (1.1.0)
|
||||
rack (>= 1.0, < 3)
|
||||
rails (5.2.8)
|
||||
actioncable (= 5.2.8)
|
||||
actionmailer (= 5.2.8)
|
||||
actionpack (= 5.2.8)
|
||||
actionview (= 5.2.8)
|
||||
activejob (= 5.2.8)
|
||||
activemodel (= 5.2.8)
|
||||
activerecord (= 5.2.8)
|
||||
activestorage (= 5.2.8)
|
||||
activesupport (= 5.2.8)
|
||||
bundler (>= 1.3.0)
|
||||
railties (= 5.2.8)
|
||||
rack-test (2.0.2)
|
||||
rack (>= 1.3)
|
||||
rails (6.1.7)
|
||||
actioncable (= 6.1.7)
|
||||
actionmailbox (= 6.1.7)
|
||||
actionmailer (= 6.1.7)
|
||||
actionpack (= 6.1.7)
|
||||
actiontext (= 6.1.7)
|
||||
actionview (= 6.1.7)
|
||||
activejob (= 6.1.7)
|
||||
activemodel (= 6.1.7)
|
||||
activerecord (= 6.1.7)
|
||||
activestorage (= 6.1.7)
|
||||
activesupport (= 6.1.7)
|
||||
bundler (>= 1.15.0)
|
||||
railties (= 6.1.7)
|
||||
sprockets-rails (>= 2.0.0)
|
||||
rails-assets-listjs (0.2.0.beta.4)
|
||||
railties (>= 3.1)
|
||||
rails-dom-testing (2.0.3)
|
||||
activesupport (>= 4.2.0)
|
||||
nokogiri (>= 1.6)
|
||||
rails-html-sanitizer (1.4.2)
|
||||
rails-html-sanitizer (1.4.3)
|
||||
loofah (~> 2.3)
|
||||
rails-i18n (5.1.3)
|
||||
rails-i18n (7.0.5)
|
||||
i18n (>= 0.7, < 2)
|
||||
railties (>= 5.0, < 6)
|
||||
railties (>= 6.0.0, < 8)
|
||||
rails-settings-cached (0.4.3)
|
||||
rails (>= 4.2.0)
|
||||
rails_tokeninput (1.7.0)
|
||||
railties (>= 3.1.0)
|
||||
railties (5.2.8)
|
||||
actionpack (= 5.2.8)
|
||||
activesupport (= 5.2.8)
|
||||
railties (6.1.7)
|
||||
actionpack (= 6.1.7)
|
||||
activesupport (= 6.1.7)
|
||||
method_source
|
||||
rake (>= 0.8.7)
|
||||
thor (>= 0.19.0, < 2.0)
|
||||
rake (>= 12.2)
|
||||
thor (~> 1.0)
|
||||
rainbow (3.1.1)
|
||||
rake (13.0.6)
|
||||
ransack (2.5.0)
|
||||
activerecord (>= 5.2.4)
|
||||
activesupport (>= 5.2.4)
|
||||
ransack (3.0.1)
|
||||
activerecord (>= 6.0.4)
|
||||
activesupport (>= 6.0.4)
|
||||
i18n
|
||||
rb-fsevent (0.11.1)
|
||||
rb-fsevent (0.11.2)
|
||||
rb-inotify (0.10.1)
|
||||
ffi (~> 1.0)
|
||||
recurring_select (3.0.0)
|
||||
|
@ -389,15 +393,18 @@ GEM
|
|||
jquery-rails (>= 3.0)
|
||||
rails (>= 5.2)
|
||||
sass-rails (>= 4.0)
|
||||
redis (4.6.0)
|
||||
redis-namespace (1.8.2)
|
||||
redis (>= 3.0.4)
|
||||
redis (5.0.5)
|
||||
redis-client (>= 0.9.0)
|
||||
redis-client (0.10.0)
|
||||
connection_pool
|
||||
redis-namespace (1.9.0)
|
||||
redis (>= 4)
|
||||
ref (2.0.0)
|
||||
regexp_parser (2.4.0)
|
||||
regexp_parser (2.6.0)
|
||||
responders (3.0.1)
|
||||
actionpack (>= 5.0)
|
||||
railties (>= 5.0)
|
||||
resque (2.2.1)
|
||||
resque (2.4.0)
|
||||
mono_logger (~> 1.0)
|
||||
multi_json (~> 1.0)
|
||||
redis-namespace (~> 1.6)
|
||||
|
@ -416,61 +423,47 @@ GEM
|
|||
rspec-mocks (~> 3.11.0)
|
||||
rspec-core (3.11.0)
|
||||
rspec-support (~> 3.11.0)
|
||||
rspec-expectations (3.11.0)
|
||||
rspec-expectations (3.11.1)
|
||||
diff-lcs (>= 1.2.0, < 2.0)
|
||||
rspec-support (~> 3.11.0)
|
||||
rspec-mocks (3.11.1)
|
||||
diff-lcs (>= 1.2.0, < 2.0)
|
||||
rspec-support (~> 3.11.0)
|
||||
rspec-rails (5.1.2)
|
||||
actionpack (>= 5.2)
|
||||
activesupport (>= 5.2)
|
||||
railties (>= 5.2)
|
||||
rspec-core (~> 3.10)
|
||||
rspec-expectations (~> 3.10)
|
||||
rspec-mocks (~> 3.10)
|
||||
rspec-support (~> 3.10)
|
||||
rspec-rails (6.0.0)
|
||||
actionpack (>= 6.1)
|
||||
activesupport (>= 6.1)
|
||||
railties (>= 6.1)
|
||||
rspec-core (~> 3.11)
|
||||
rspec-expectations (~> 3.11)
|
||||
rspec-mocks (~> 3.11)
|
||||
rspec-support (~> 3.11)
|
||||
rspec-rerun (1.1.0)
|
||||
rspec (~> 3.0)
|
||||
rspec-support (3.11.0)
|
||||
rswag (2.6.0)
|
||||
rswag-api (= 2.6.0)
|
||||
rswag-specs (= 2.6.0)
|
||||
rswag-ui (= 2.6.0)
|
||||
rswag-api (2.6.0)
|
||||
railties (>= 3.1, < 7.1)
|
||||
rswag-specs (2.6.0)
|
||||
activesupport (>= 3.1, < 7.1)
|
||||
json-schema (~> 2.2)
|
||||
railties (>= 3.1, < 7.1)
|
||||
rswag-ui (2.6.0)
|
||||
actionpack (>= 3.1, < 7.1)
|
||||
railties (>= 3.1, < 7.1)
|
||||
rubocop (1.30.0)
|
||||
rspec-support (3.11.1)
|
||||
rubocop (1.36.0)
|
||||
json (~> 2.3)
|
||||
parallel (~> 1.10)
|
||||
parser (>= 3.1.0.0)
|
||||
parser (>= 3.1.2.1)
|
||||
rainbow (>= 2.2.2, < 4.0)
|
||||
regexp_parser (>= 1.8, < 3.0)
|
||||
rexml (>= 3.2.5, < 4.0)
|
||||
rubocop-ast (>= 1.18.0, < 2.0)
|
||||
rubocop-ast (>= 1.20.1, < 2.0)
|
||||
ruby-progressbar (~> 1.7)
|
||||
unicode-display_width (>= 1.4.0, < 3.0)
|
||||
rubocop-ast (1.18.0)
|
||||
rubocop-ast (1.21.0)
|
||||
parser (>= 3.1.1.0)
|
||||
rubocop-rails (2.14.2)
|
||||
rubocop-rails (2.16.1)
|
||||
activesupport (>= 4.2.0)
|
||||
rack (>= 1.1)
|
||||
rubocop (>= 1.7.0, < 2.0)
|
||||
rubocop-rspec (2.11.1)
|
||||
rubocop (~> 1.19)
|
||||
rubocop (>= 1.33.0, < 2.0)
|
||||
rubocop-rspec (2.13.2)
|
||||
rubocop (~> 1.33)
|
||||
ruby-filemagic (0.7.3)
|
||||
ruby-ole (1.2.12.2)
|
||||
ruby-prof (1.4.3)
|
||||
ruby-progressbar (1.11.0)
|
||||
ruby-units (2.3.2)
|
||||
ruby-units (3.0.0)
|
||||
ruby2_keywords (0.0.5)
|
||||
ruby_parser (3.19.1)
|
||||
sexp_processor (~> 4.16)
|
||||
rubyzip (2.3.2)
|
||||
sass-rails (6.0.0)
|
||||
sassc-rails (~> 2.1, >= 2.1.1)
|
||||
|
@ -483,7 +476,6 @@ GEM
|
|||
sprockets-rails
|
||||
tilt
|
||||
select2-rails (4.0.13)
|
||||
sexp_processor (4.16.1)
|
||||
simple-navigation (3.14.0)
|
||||
activesupport (>= 2.3.2)
|
||||
simple-navigation-bootstrap (1.0.2)
|
||||
|
@ -499,10 +491,10 @@ GEM
|
|||
simplecov-html (0.12.3)
|
||||
simplecov-lcov (0.8.0)
|
||||
simplecov_json_formatter (0.1.4)
|
||||
sinatra (2.2.0)
|
||||
mustermann (~> 1.0)
|
||||
rack (~> 2.2)
|
||||
rack-protection (= 2.2.0)
|
||||
sinatra (3.0.2)
|
||||
mustermann (~> 3.0)
|
||||
rack (~> 2.2, >= 2.2.4)
|
||||
rack-protection (= 3.0.2)
|
||||
tilt (~> 2.0)
|
||||
skinny (0.2.2)
|
||||
eventmachine (~> 1.0)
|
||||
|
@ -529,8 +521,7 @@ GEM
|
|||
eventmachine (~> 1.0, >= 1.0.4)
|
||||
rack (>= 1, < 3)
|
||||
thor (1.2.1)
|
||||
thread_safe (0.3.6)
|
||||
tilt (2.0.10)
|
||||
tilt (2.0.11)
|
||||
ttfunk (1.7.0)
|
||||
twitter-bootstrap-rails (2.2.8)
|
||||
actionpack (>= 3.1)
|
||||
|
@ -539,20 +530,20 @@ GEM
|
|||
railties (>= 3.1)
|
||||
twitter-text (1.14.7)
|
||||
unf (~> 0.1.0)
|
||||
tzinfo (1.2.9)
|
||||
thread_safe (~> 0.1)
|
||||
tzinfo (2.0.5)
|
||||
concurrent-ruby (~> 1.0)
|
||||
uglifier (4.2.0)
|
||||
execjs (>= 0.3.0, < 3)
|
||||
unf (0.1.4)
|
||||
unf_ext
|
||||
unf_ext (0.0.8.2)
|
||||
unicode-display_width (2.1.0)
|
||||
unicode-display_width (2.3.0)
|
||||
uniform_notifier (1.16.0)
|
||||
web-console (3.7.0)
|
||||
actionview (>= 5.0)
|
||||
activemodel (>= 5.0)
|
||||
web-console (4.2.0)
|
||||
actionview (>= 6.0.0)
|
||||
activemodel (>= 6.0.0)
|
||||
bindex (>= 0.4.0)
|
||||
railties (>= 5.0)
|
||||
railties (>= 6.0.0)
|
||||
websocket-driver (0.7.5)
|
||||
websocket-extensions (>= 0.1.0)
|
||||
websocket-extensions (0.1.5)
|
||||
|
@ -566,6 +557,7 @@ GEM
|
|||
twitter-text
|
||||
xpath (3.2.0)
|
||||
nokogiri (~> 1.8)
|
||||
zeitwerk (2.6.1)
|
||||
|
||||
PLATFORMS
|
||||
ruby
|
||||
|
@ -574,7 +566,6 @@ DEPENDENCIES
|
|||
active_model_serializers (~> 0.10.0)
|
||||
acts_as_tree
|
||||
acts_as_versioned!
|
||||
apivore
|
||||
apparition
|
||||
attribute_normalizer
|
||||
better_errors
|
||||
|
@ -621,7 +612,7 @@ DEPENDENCIES
|
|||
pry-stack_explorer
|
||||
puma
|
||||
rack-cors
|
||||
rails (~> 5.2)
|
||||
rails (~> 6.1)
|
||||
rails-assets-listjs (= 0.2.0.beta.4)
|
||||
rails-i18n
|
||||
rails-settings-cached (= 0.4.3)
|
||||
|
@ -634,8 +625,6 @@ DEPENDENCIES
|
|||
rspec-core
|
||||
rspec-rails
|
||||
rspec-rerun
|
||||
rswag
|
||||
rswag-specs
|
||||
rubocop
|
||||
rubocop-rails
|
||||
rubocop-rspec
|
||||
|
|
12
bin/yarn
12
bin/yarn
|
@ -1,9 +1,15 @@
|
|||
#!/usr/bin/env ruby
|
||||
APP_ROOT = File.expand_path('..', __dir__)
|
||||
Dir.chdir(APP_ROOT) do
|
||||
begin
|
||||
exec "yarnpkg", *ARGV
|
||||
rescue Errno::ENOENT
|
||||
yarn = ENV["PATH"].split(File::PATH_SEPARATOR).
|
||||
select { |dir| File.expand_path(dir) != __dir__ }.
|
||||
product(["yarn", "yarn.cmd", "yarn.ps1"]).
|
||||
map { |dir, file| File.expand_path(file, dir) }.
|
||||
find { |file| File.executable?(file) }
|
||||
|
||||
if yarn
|
||||
exec yarn, *ARGV
|
||||
else
|
||||
$stderr.puts "Yarn executable was not detected in the system."
|
||||
$stderr.puts "Download Yarn at https://yarnpkg.com/en/docs/install"
|
||||
exit 1
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
# This file is used by Rack-based servers to start the application.
|
||||
|
||||
require ::File.expand_path('../config/environment', __FILE__)
|
||||
require_relative "config/environment"
|
||||
|
||||
# https://gist.github.com/ebeigarts/5450422
|
||||
map ENV.fetch('RAILS_RELATIVE_URL_ROOT', '/') do
|
||||
run Foodsoft::Application
|
||||
end
|
||||
run Rails.application
|
||||
Rails.application.load_server
|
||||
|
|
|
@ -63,6 +63,11 @@ module Foodsoft
|
|||
# Load legacy scripts from vendor
|
||||
config.assets.precompile += ['vendor/assets/javascripts/*.js']
|
||||
|
||||
config.active_record.yaml_column_permitted_classes = [Symbol, BigDecimal]
|
||||
|
||||
#Ex:- :default =>''
|
||||
|
||||
|
||||
# CORS for API
|
||||
config.middleware.insert_before 0, Rack::Cors do
|
||||
allow do
|
||||
|
|
|
@ -1,14 +1,13 @@
|
|||
# Foodsoft test configuration.
|
||||
#
|
||||
# This file is in the public domain.
|
||||
require "active_support/core_ext/integer/time"
|
||||
|
||||
# The test environment is used exclusively to run your application's
|
||||
# test suite. You never need to work with it otherwise. Remember that
|
||||
# your test database is "scratch space" for the test suite and is wiped
|
||||
# and recreated between test runs. Don't rely on the data there!
|
||||
|
||||
Rails.application.configure do
|
||||
# Settings specified here will take precedence over those in config/application.rb.
|
||||
|
||||
# The test environment is used exclusively to run your application's
|
||||
# test suite. You never need to work with it otherwise. Remember that
|
||||
# your test database is "scratch space" for the test suite and is wiped
|
||||
# and recreated between test runs. Don't rely on the data there!
|
||||
config.cache_classes = true
|
||||
|
||||
# Do not eager load code on boot. This avoids loading your whole application
|
||||
|
@ -25,6 +24,7 @@ Rails.application.configure do
|
|||
# Show full error reports and disable caching.
|
||||
config.consider_all_requests_local = true
|
||||
config.action_controller.perform_caching = false
|
||||
config.cache_store = :null_store
|
||||
|
||||
# Raise exceptions instead of rendering exception templates.
|
||||
config.action_dispatch.show_exceptions = false
|
||||
|
@ -32,7 +32,7 @@ Rails.application.configure do
|
|||
# Disable request forgery protection in test environment.
|
||||
config.action_controller.allow_forgery_protection = false
|
||||
|
||||
# Store uploaded files on the local file system in a temporary directory
|
||||
# Store uploaded files on the local file system in a temporary directory.
|
||||
config.active_storage.service = :test
|
||||
|
||||
config.action_mailer.perform_caching = false
|
||||
|
@ -45,6 +45,15 @@ Rails.application.configure do
|
|||
# Print deprecation notices to the stderr.
|
||||
config.active_support.deprecation = :stderr
|
||||
|
||||
# Raises error for missing translations
|
||||
# config.action_view.raise_on_missing_translations = true
|
||||
# Raise exceptions for disallowed deprecations.
|
||||
config.active_support.disallowed_deprecation = :raise
|
||||
|
||||
# Tell Active Support which deprecation messages to disallow.
|
||||
config.active_support.disallowed_deprecation_warnings = []
|
||||
|
||||
# Raises error for missing translations.
|
||||
# config.i18n.raise_on_missing_translations = true
|
||||
|
||||
# Annotate rendered view with file names.
|
||||
# config.action_view.annotate_rendered_view_with_filenames = true
|
||||
end
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
# Be sure to restart your server when you modify this file.
|
||||
|
||||
# You can add backtrace silencers for libraries that you're using but don't wish to see in your backtraces.
|
||||
# Rails.backtrace_cleaner.add_silencer { |line| line =~ /my_noisy_library/ }
|
||||
# Rails.backtrace_cleaner.add_silencer { |line| /my_noisy_library/.match?(line) }
|
||||
|
||||
# You can also remove all the silencers if you're trying to debug a problem that might stem from framework code.
|
||||
# Rails.backtrace_cleaner.remove_silencers!
|
||||
# You can also remove all the silencers if you're trying to debug a problem that might stem from framework code
|
||||
# by setting BACKTRACE=1 before calling your invocation, like "BACKTRACE=1 ./bin/rails runner 'MyClass.perform'".
|
||||
Rails.backtrace_cleaner.remove_silencers! if ENV["BACKTRACE"]
|
||||
|
|
|
@ -11,6 +11,8 @@
|
|||
# policy.object_src :none
|
||||
# policy.script_src :self, :https
|
||||
# policy.style_src :self, :https
|
||||
# # If you are using webpack-dev-server then specify webpack-dev-server host
|
||||
# policy.connect_src :self, :https, "http://localhost:3035", "ws://localhost:3035" if Rails.env.development?
|
||||
|
||||
# # Specify URI for violation reports
|
||||
# # policy.report_uri "/csp-violation-report-endpoint"
|
||||
|
@ -19,6 +21,9 @@
|
|||
# If you are using UJS then enable automatic nonce generation
|
||||
# Rails.application.config.content_security_policy_nonce_generator = -> request { SecureRandom.base64(16) }
|
||||
|
||||
# Set the nonce only to specific directives
|
||||
# Rails.application.config.content_security_policy_nonce_directives = %w(script-src)
|
||||
|
||||
# Report CSP violations to a specified URI
|
||||
# For further information see the following documentation:
|
||||
# https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy-Report-Only
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
# Be sure to restart your server when you modify this file.
|
||||
|
||||
# Configure sensitive parameters which will be filtered from the log file.
|
||||
Rails.application.config.filter_parameters += [:password]
|
||||
Rails.application.config.filter_parameters += [
|
||||
:passw, :secret, :token, :_key, :crypt, :salt, :certificate, :otp, :ssn
|
||||
]
|
||||
|
|
|
@ -29,7 +29,9 @@
|
|||
|
||||
# Store boolean values are in sqlite3 databases as 1 and 0 instead of 't' and
|
||||
# 'f' after migrating old data.
|
||||
Rails.application.config.active_record.sqlite3.represent_boolean_as_integer = true
|
||||
|
||||
# deprecated in rails 6.0 default behaviour represents bool as int in sqlite3 db
|
||||
#Rails.application.config.active_record.sqlite3.represent_boolean_as_integer = true
|
||||
|
||||
# Use SHA-1 instead of MD5 to generate non-sensitive digests, such as the ETag header.
|
||||
# Rails.application.config.active_support.use_sha1_digests = true
|
||||
|
|
67
config/initializers/new_framework_defaults_6_1.rb
Normal file
67
config/initializers/new_framework_defaults_6_1.rb
Normal file
|
@ -0,0 +1,67 @@
|
|||
# Be sure to restart your server when you modify this file.
|
||||
#
|
||||
# This file contains migration options to ease your Rails 6.1 upgrade.
|
||||
#
|
||||
# Once upgraded flip defaults one by one to migrate to the new default.
|
||||
#
|
||||
# Read the Guide for Upgrading Ruby on Rails for more info on each option.
|
||||
|
||||
# Support for inversing belongs_to -> has_many Active Record associations.
|
||||
# Rails.application.config.active_record.has_many_inversing = true
|
||||
|
||||
# Track Active Storage variants in the database.
|
||||
# Rails.application.config.active_storage.track_variants = true
|
||||
|
||||
# Apply random variation to the delay when retrying failed jobs.
|
||||
# Rails.application.config.active_job.retry_jitter = 0.15
|
||||
|
||||
# Stop executing `after_enqueue`/`after_perform` callbacks if
|
||||
# `before_enqueue`/`before_perform` respectively halts with `throw :abort`.
|
||||
# Rails.application.config.active_job.skip_after_callbacks_if_terminated = true
|
||||
|
||||
# Specify cookies SameSite protection level: either :none, :lax, or :strict.
|
||||
#
|
||||
# This change is not backwards compatible with earlier Rails versions.
|
||||
# It's best enabled when your entire app is migrated and stable on 6.1.
|
||||
# Rails.application.config.action_dispatch.cookies_same_site_protection = :lax
|
||||
|
||||
# Generate CSRF tokens that are encoded in URL-safe Base64.
|
||||
#
|
||||
# This change is not backwards compatible with earlier Rails versions.
|
||||
# It's best enabled when your entire app is migrated and stable on 6.1.
|
||||
# Rails.application.config.action_controller.urlsafe_csrf_tokens = true
|
||||
|
||||
# Specify whether `ActiveSupport::TimeZone.utc_to_local` returns a time with an
|
||||
# UTC offset or a UTC time.
|
||||
# ActiveSupport.utc_to_local_returns_utc_offset_times = true
|
||||
|
||||
# Change the default HTTP status code to `308` when redirecting non-GET/HEAD
|
||||
# requests to HTTPS in `ActionDispatch::SSL` middleware.
|
||||
# Rails.application.config.action_dispatch.ssl_default_redirect_status = 308
|
||||
|
||||
# Use new connection handling API. For most applications this won't have any
|
||||
# effect. For applications using multiple databases, this new API provides
|
||||
# support for granular connection swapping.
|
||||
# Rails.application.config.active_record.legacy_connection_handling = false
|
||||
|
||||
# Make `form_with` generate non-remote forms by default.
|
||||
# Rails.application.config.action_view.form_with_generates_remote_forms = false
|
||||
|
||||
# Set the default queue name for the analysis job to the queue adapter default.
|
||||
# Rails.application.config.active_storage.queues.analysis = nil
|
||||
|
||||
# Set the default queue name for the purge job to the queue adapter default.
|
||||
# Rails.application.config.active_storage.queues.purge = nil
|
||||
|
||||
# Set the default queue name for the incineration job to the queue adapter default.
|
||||
# Rails.application.config.action_mailbox.queues.incineration = nil
|
||||
|
||||
# Set the default queue name for the routing job to the queue adapter default.
|
||||
# Rails.application.config.action_mailbox.queues.routing = nil
|
||||
|
||||
# Set the default queue name for the mail deliver job to the queue adapter default.
|
||||
# Rails.application.config.action_mailer.deliver_later_queue_name = nil
|
||||
|
||||
# Generate a `Link` header that gives a hint to modern browsers about
|
||||
# preloading assets when using `javascript_include_tag` and `stylesheet_link_tag`.
|
||||
# Rails.application.config.action_view.preload_links_header = true
|
11
config/initializers/permissions_policy.rb
Normal file
11
config/initializers/permissions_policy.rb
Normal file
|
@ -0,0 +1,11 @@
|
|||
# Define an application-wide HTTP permissions policy. For further
|
||||
# information see https://developers.google.com/web/updates/2018/06/feature-policy
|
||||
#
|
||||
# Rails.application.config.permissions_policy do |f|
|
||||
# f.camera :none
|
||||
# f.gyroscope :none
|
||||
# f.microphone :none
|
||||
# f.usb :none
|
||||
# f.fullscreen :self
|
||||
# f.payment :self, "https://secure.example.com"
|
||||
# end
|
|
@ -1,4 +1,4 @@
|
|||
raise "Remove no-longer-needed #{__FILE__}!" if Rails::VERSION::MAJOR >= 6
|
||||
#raise "Remove no-longer-needed #{__FILE__}!" if Rails::VERSION::MAJOR >= 6
|
||||
|
||||
require "weakref"
|
||||
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
# This migration comes from active_storage (originally 20190112182829)
|
||||
class AddServiceNameToActiveStorageBlobs < ActiveRecord::Migration[6.0]
|
||||
def up
|
||||
return unless table_exists?(:active_storage_blobs)
|
||||
|
||||
unless column_exists?(:active_storage_blobs, :service_name)
|
||||
add_column :active_storage_blobs, :service_name, :string
|
||||
|
||||
if configured_service = ActiveStorage::Blob.service.name
|
||||
ActiveStorage::Blob.unscoped.update_all(service_name: configured_service)
|
||||
end
|
||||
|
||||
change_column :active_storage_blobs, :service_name, :string, null: false
|
||||
end
|
||||
end
|
||||
|
||||
def down
|
||||
return unless table_exists?(:active_storage_blobs)
|
||||
|
||||
remove_column :active_storage_blobs, :service_name
|
||||
end
|
||||
end
|
|
@ -0,0 +1,27 @@
|
|||
# This migration comes from active_storage (originally 20191206030411)
|
||||
class CreateActiveStorageVariantRecords < ActiveRecord::Migration[6.0]
|
||||
def change
|
||||
return unless table_exists?(:active_storage_blobs)
|
||||
|
||||
# Use Active Record's configured type for primary key
|
||||
create_table :active_storage_variant_records, id: primary_key_type, if_not_exists: true do |t|
|
||||
t.belongs_to :blob, null: false, index: false, type: blobs_primary_key_type
|
||||
t.string :variation_digest, null: false
|
||||
|
||||
t.index %i[ blob_id variation_digest ], name: "index_active_storage_variant_records_uniqueness", unique: true
|
||||
t.foreign_key :active_storage_blobs, column: :blob_id
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
def primary_key_type
|
||||
config = Rails.configuration.generators
|
||||
config.options[config.orm][:primary_key_type] || :primary_key
|
||||
end
|
||||
|
||||
def blobs_primary_key_type
|
||||
pkey_name = connection.primary_key(:active_storage_blobs)
|
||||
pkey_column = connection.columns(:active_storage_blobs).find { |c| c.name == pkey_name }
|
||||
pkey_column.bigint? ? :bigint : pkey_column.type
|
||||
end
|
||||
end
|
122
db/schema.rb
122
db/schema.rb
|
@ -2,17 +2,17 @@
|
|||
# of editing this file, please use the migrations feature of Active Record to
|
||||
# incrementally modify your database, and then regenerate this schema definition.
|
||||
#
|
||||
# Note that this schema.rb definition is the authoritative source for your
|
||||
# database schema. If you need to create the application database on another
|
||||
# system, you should be using db:schema:load, not running all the migrations
|
||||
# from scratch. The latter is a flawed and unsustainable approach (the more migrations
|
||||
# you'll amass, the slower it'll run and the greater likelihood for issues).
|
||||
# This file is the source Rails uses to define your schema when running `bin/rails
|
||||
# db:schema:load`. When creating a new database, `bin/rails db:schema:load` tends to
|
||||
# be faster and is potentially less error prone than running all of your
|
||||
# migrations from scratch. Old migrations may fail to apply correctly if those
|
||||
# migrations use external dependencies or application code.
|
||||
#
|
||||
# It's strongly recommended that you check this file into your version control system.
|
||||
|
||||
ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
||||
ActiveRecord::Schema.define(version: 2022_10_13_152302) do
|
||||
|
||||
create_table "active_storage_attachments", id: :integer, force: :cascade do |t|
|
||||
create_table "active_storage_attachments", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.string "name", null: false
|
||||
t.string "record_type", null: false
|
||||
t.bigint "record_id", null: false
|
||||
|
@ -22,7 +22,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["record_type", "record_id", "name", "blob_id"], name: "index_active_storage_attachments_uniqueness", unique: true
|
||||
end
|
||||
|
||||
create_table "active_storage_blobs", id: :integer, force: :cascade do |t|
|
||||
create_table "active_storage_blobs", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.string "key", null: false
|
||||
t.string "filename", null: false
|
||||
t.string "content_type"
|
||||
|
@ -30,16 +30,23 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.bigint "byte_size", null: false
|
||||
t.string "checksum", null: false
|
||||
t.datetime "created_at", null: false
|
||||
t.string "service_name", null: false
|
||||
t.index ["key"], name: "index_active_storage_blobs_on_key", unique: true
|
||||
end
|
||||
|
||||
create_table "article_categories", id: :integer, force: :cascade do |t|
|
||||
create_table "active_storage_variant_records", charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "blob_id", null: false
|
||||
t.string "variation_digest", null: false
|
||||
t.index ["blob_id", "variation_digest"], name: "index_active_storage_variant_records_uniqueness", unique: true
|
||||
end
|
||||
|
||||
create_table "article_categories", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.string "name", default: "", null: false
|
||||
t.string "description"
|
||||
t.index ["name"], name: "index_article_categories_on_name", unique: true
|
||||
end
|
||||
|
||||
create_table "article_prices", id: :integer, force: :cascade do |t|
|
||||
create_table "article_prices", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "article_id", null: false
|
||||
t.decimal "price", precision: 8, scale: 2, default: "0.0", null: false
|
||||
t.decimal "tax", precision: 8, scale: 2, default: "0.0", null: false
|
||||
|
@ -49,7 +56,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["article_id"], name: "index_article_prices_on_article_id"
|
||||
end
|
||||
|
||||
create_table "articles", id: :integer, force: :cascade do |t|
|
||||
create_table "articles", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.string "name", default: "", null: false
|
||||
t.integer "supplier_id", default: 0, null: false
|
||||
t.integer "article_category_id", default: 0, null: false
|
||||
|
@ -75,14 +82,14 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["type"], name: "index_articles_on_type"
|
||||
end
|
||||
|
||||
create_table "assignments", id: :integer, force: :cascade do |t|
|
||||
create_table "assignments", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "user_id", default: 0, null: false
|
||||
t.integer "task_id", default: 0, null: false
|
||||
t.boolean "accepted", default: false
|
||||
t.index ["user_id", "task_id"], name: "index_assignments_on_user_id_and_task_id", unique: true
|
||||
end
|
||||
|
||||
create_table "bank_accounts", id: :integer, force: :cascade do |t|
|
||||
create_table "bank_accounts", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.string "name", null: false
|
||||
t.string "iban"
|
||||
t.string "description"
|
||||
|
@ -92,14 +99,14 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.integer "bank_gateway_id"
|
||||
end
|
||||
|
||||
create_table "bank_gateways", id: :integer, force: :cascade do |t|
|
||||
create_table "bank_gateways", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.string "name", null: false
|
||||
t.string "url", null: false
|
||||
t.string "authorization"
|
||||
t.integer "unattended_user_id"
|
||||
end
|
||||
|
||||
create_table "bank_transactions", id: :integer, force: :cascade do |t|
|
||||
create_table "bank_transactions", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "bank_account_id", null: false
|
||||
t.string "external_id"
|
||||
t.date "date"
|
||||
|
@ -108,15 +115,15 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.string "reference"
|
||||
t.text "text"
|
||||
t.text "receipt"
|
||||
t.binary "image", limit: 16777215
|
||||
t.binary "image", size: :medium
|
||||
t.integer "financial_link_id"
|
||||
t.index ["financial_link_id"], name: "index_bank_transactions_on_financial_link_id"
|
||||
end
|
||||
|
||||
create_table "documents", id: :integer, force: :cascade do |t|
|
||||
create_table "documents", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.string "name"
|
||||
t.string "mime"
|
||||
t.binary "data", limit: 4294967295
|
||||
t.binary "data", size: :long
|
||||
t.integer "created_by_user_id"
|
||||
t.datetime "created_at"
|
||||
t.datetime "updated_at"
|
||||
|
@ -124,16 +131,16 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["parent_id"], name: "index_documents_on_parent_id"
|
||||
end
|
||||
|
||||
create_table "financial_links", id: :integer, force: :cascade do |t|
|
||||
create_table "financial_links", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.text "note"
|
||||
end
|
||||
|
||||
create_table "financial_transaction_classes", id: :integer, force: :cascade do |t|
|
||||
create_table "financial_transaction_classes", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.string "name", null: false
|
||||
t.boolean "ignore_for_account_balance", default: false, null: false
|
||||
end
|
||||
|
||||
create_table "financial_transaction_types", id: :integer, force: :cascade do |t|
|
||||
create_table "financial_transaction_types", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.string "name", null: false
|
||||
t.integer "financial_transaction_class_id", null: false
|
||||
t.string "name_short"
|
||||
|
@ -141,7 +148,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["name_short"], name: "index_financial_transaction_types_on_name_short"
|
||||
end
|
||||
|
||||
create_table "financial_transactions", id: :integer, force: :cascade do |t|
|
||||
create_table "financial_transactions", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "ordergroup_id"
|
||||
t.decimal "amount", precision: 8, scale: 2, default: "0.0", null: false
|
||||
t.text "note", null: false
|
||||
|
@ -155,7 +162,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["reverts_id"], name: "index_financial_transactions_on_reverts_id", unique: true
|
||||
end
|
||||
|
||||
create_table "group_order_article_quantities", id: :integer, force: :cascade do |t|
|
||||
create_table "group_order_article_quantities", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "group_order_article_id", default: 0, null: false
|
||||
t.integer "quantity", default: 0
|
||||
t.integer "tolerance", default: 0
|
||||
|
@ -163,7 +170,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["group_order_article_id"], name: "index_group_order_article_quantities_on_group_order_article_id"
|
||||
end
|
||||
|
||||
create_table "group_order_articles", id: :integer, force: :cascade do |t|
|
||||
create_table "group_order_articles", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "group_order_id", default: 0, null: false
|
||||
t.integer "order_article_id", default: 0, null: false
|
||||
t.integer "quantity", default: 0, null: false
|
||||
|
@ -176,7 +183,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["order_article_id"], name: "index_group_order_articles_on_order_article_id"
|
||||
end
|
||||
|
||||
create_table "group_orders", id: :integer, force: :cascade do |t|
|
||||
create_table "group_orders", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "ordergroup_id"
|
||||
t.integer "order_id", default: 0, null: false
|
||||
t.decimal "price", precision: 8, scale: 2, default: "0.0", null: false
|
||||
|
@ -189,7 +196,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["ordergroup_id"], name: "index_group_orders_on_ordergroup_id"
|
||||
end
|
||||
|
||||
create_table "groups", id: :integer, force: :cascade do |t|
|
||||
create_table "groups", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.string "type", default: "", null: false
|
||||
t.string "name", default: "", null: false
|
||||
t.string "description"
|
||||
|
@ -214,7 +221,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["name"], name: "index_groups_on_name", unique: true
|
||||
end
|
||||
|
||||
create_table "invites", id: :integer, force: :cascade do |t|
|
||||
create_table "invites", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.string "token", default: "", null: false
|
||||
t.datetime "expires_at", null: false
|
||||
t.integer "group_id", default: 0, null: false
|
||||
|
@ -223,7 +230,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["token"], name: "index_invites_on_token"
|
||||
end
|
||||
|
||||
create_table "invoices", id: :integer, force: :cascade do |t|
|
||||
create_table "invoices", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "supplier_id"
|
||||
t.string "number"
|
||||
t.date "date"
|
||||
|
@ -236,12 +243,12 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.datetime "updated_at"
|
||||
t.integer "created_by_user_id"
|
||||
t.string "attachment_mime"
|
||||
t.binary "attachment_data", limit: 16777215
|
||||
t.binary "attachment_data", size: :medium
|
||||
t.integer "financial_link_id"
|
||||
t.index ["supplier_id"], name: "index_invoices_on_supplier_id"
|
||||
end
|
||||
|
||||
create_table "links", id: :integer, force: :cascade do |t|
|
||||
create_table "links", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.string "name", null: false
|
||||
t.string "url", null: false
|
||||
t.integer "workgroup_id"
|
||||
|
@ -249,22 +256,22 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.string "authorization"
|
||||
end
|
||||
|
||||
create_table "mail_delivery_status", id: :integer, force: :cascade do |t|
|
||||
create_table "mail_delivery_status", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.datetime "created_at"
|
||||
t.string "email", null: false
|
||||
t.string "message", null: false
|
||||
t.string "attachment_mime"
|
||||
t.binary "attachment_data", limit: 4294967295
|
||||
t.binary "attachment_data", size: :long
|
||||
t.index ["email"], name: "index_mail_delivery_status_on_email"
|
||||
end
|
||||
|
||||
create_table "memberships", id: :integer, force: :cascade do |t|
|
||||
create_table "memberships", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "group_id", default: 0, null: false
|
||||
t.integer "user_id", default: 0, null: false
|
||||
t.index ["user_id", "group_id"], name: "index_memberships_on_user_id_and_group_id", unique: true
|
||||
end
|
||||
|
||||
create_table "message_recipients", id: :integer, force: :cascade do |t|
|
||||
create_table "message_recipients", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "message_id", null: false
|
||||
t.integer "user_id", null: false
|
||||
t.integer "email_state", default: 0, null: false
|
||||
|
@ -273,7 +280,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["user_id", "read_at"], name: "index_message_recipients_on_user_id_and_read_at"
|
||||
end
|
||||
|
||||
create_table "messages", id: :integer, force: :cascade do |t|
|
||||
create_table "messages", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "sender_id"
|
||||
t.string "subject", null: false
|
||||
t.text "body"
|
||||
|
@ -282,10 +289,10 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.integer "reply_to"
|
||||
t.integer "group_id"
|
||||
t.string "salt"
|
||||
t.binary "received_email", limit: 16777215
|
||||
t.binary "received_email", size: :medium
|
||||
end
|
||||
|
||||
create_table "oauth_access_grants", id: :integer, force: :cascade do |t|
|
||||
create_table "oauth_access_grants", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "resource_owner_id", null: false
|
||||
t.integer "application_id", null: false
|
||||
t.string "token", null: false
|
||||
|
@ -297,7 +304,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["token"], name: "index_oauth_access_grants_on_token", unique: true
|
||||
end
|
||||
|
||||
create_table "oauth_access_tokens", id: :integer, force: :cascade do |t|
|
||||
create_table "oauth_access_tokens", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "resource_owner_id"
|
||||
t.integer "application_id"
|
||||
t.string "token", null: false
|
||||
|
@ -311,7 +318,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["token"], name: "index_oauth_access_tokens_on_token", unique: true
|
||||
end
|
||||
|
||||
create_table "oauth_applications", id: :integer, force: :cascade do |t|
|
||||
create_table "oauth_applications", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.string "name", null: false
|
||||
t.string "uid", null: false
|
||||
t.string "secret", null: false
|
||||
|
@ -323,7 +330,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["uid"], name: "index_oauth_applications_on_uid", unique: true
|
||||
end
|
||||
|
||||
create_table "order_articles", id: :integer, force: :cascade do |t|
|
||||
create_table "order_articles", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "order_id", default: 0, null: false
|
||||
t.integer "article_id", default: 0, null: false
|
||||
t.integer "quantity", default: 0, null: false
|
||||
|
@ -337,7 +344,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["order_id"], name: "index_order_articles_on_order_id"
|
||||
end
|
||||
|
||||
create_table "order_comments", id: :integer, force: :cascade do |t|
|
||||
create_table "order_comments", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "order_id"
|
||||
t.integer "user_id"
|
||||
t.text "text"
|
||||
|
@ -345,7 +352,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["order_id"], name: "index_order_comments_on_order_id"
|
||||
end
|
||||
|
||||
create_table "orders", id: :integer, force: :cascade do |t|
|
||||
create_table "orders", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "supplier_id"
|
||||
t.text "note"
|
||||
t.datetime "starts"
|
||||
|
@ -364,7 +371,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["state"], name: "index_orders_on_state"
|
||||
end
|
||||
|
||||
create_table "page_versions", id: :integer, force: :cascade do |t|
|
||||
create_table "page_versions", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "page_id"
|
||||
t.integer "lock_version"
|
||||
t.text "body"
|
||||
|
@ -375,7 +382,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["page_id"], name: "index_page_versions_on_page_id"
|
||||
end
|
||||
|
||||
create_table "pages", id: :integer, force: :cascade do |t|
|
||||
create_table "pages", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.string "title"
|
||||
t.text "body"
|
||||
t.string "permalink"
|
||||
|
@ -389,20 +396,20 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["title"], name: "index_pages_on_title"
|
||||
end
|
||||
|
||||
create_table "periodic_task_groups", id: :integer, force: :cascade do |t|
|
||||
create_table "periodic_task_groups", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.date "next_task_date"
|
||||
t.datetime "created_at", null: false
|
||||
t.datetime "updated_at", null: false
|
||||
end
|
||||
|
||||
create_table "poll_choices", id: :integer, force: :cascade do |t|
|
||||
create_table "poll_choices", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "poll_vote_id", null: false
|
||||
t.integer "choice", null: false
|
||||
t.integer "value", null: false
|
||||
t.index ["poll_vote_id", "choice"], name: "index_poll_choices_on_poll_vote_id_and_choice", unique: true
|
||||
end
|
||||
|
||||
create_table "poll_votes", id: :integer, force: :cascade do |t|
|
||||
create_table "poll_votes", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "poll_id", null: false
|
||||
t.integer "user_id", null: false
|
||||
t.integer "ordergroup_id"
|
||||
|
@ -412,7 +419,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["poll_id", "user_id", "ordergroup_id"], name: "index_poll_votes_on_poll_id_and_user_id_and_ordergroup_id", unique: true
|
||||
end
|
||||
|
||||
create_table "polls", id: :integer, force: :cascade do |t|
|
||||
create_table "polls", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "created_by_user_id", null: false
|
||||
t.string "name", null: false
|
||||
t.text "description"
|
||||
|
@ -432,7 +439,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["final_choice"], name: "index_polls_on_final_choice"
|
||||
end
|
||||
|
||||
create_table "printer_job_updates", id: :integer, force: :cascade do |t|
|
||||
create_table "printer_job_updates", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "printer_job_id", null: false
|
||||
t.datetime "created_at", null: false
|
||||
t.string "state", null: false
|
||||
|
@ -440,7 +447,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["printer_job_id", "created_at"], name: "index_printer_job_updates_on_printer_job_id_and_created_at"
|
||||
end
|
||||
|
||||
create_table "printer_jobs", id: :integer, force: :cascade do |t|
|
||||
create_table "printer_jobs", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "order_id"
|
||||
t.string "document", null: false
|
||||
t.integer "created_by_user_id", null: false
|
||||
|
@ -449,7 +456,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["finished_at"], name: "index_printer_jobs_on_finished_at"
|
||||
end
|
||||
|
||||
create_table "settings", id: :integer, force: :cascade do |t|
|
||||
create_table "settings", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.string "var", null: false
|
||||
t.text "value"
|
||||
t.integer "thing_id"
|
||||
|
@ -459,7 +466,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["thing_type", "thing_id", "var"], name: "index_settings_on_thing_type_and_thing_id_and_var", unique: true
|
||||
end
|
||||
|
||||
create_table "stock_changes", id: :integer, force: :cascade do |t|
|
||||
create_table "stock_changes", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "stock_event_id"
|
||||
t.integer "order_id"
|
||||
t.integer "stock_article_id"
|
||||
|
@ -469,7 +476,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["stock_event_id"], name: "index_stock_changes_on_stock_event_id"
|
||||
end
|
||||
|
||||
create_table "stock_events", id: :integer, force: :cascade do |t|
|
||||
create_table "stock_events", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.integer "supplier_id"
|
||||
t.date "date"
|
||||
t.datetime "created_at"
|
||||
|
@ -479,14 +486,14 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["supplier_id"], name: "index_stock_events_on_supplier_id"
|
||||
end
|
||||
|
||||
create_table "supplier_categories", id: :integer, force: :cascade do |t|
|
||||
create_table "supplier_categories", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.string "name", null: false
|
||||
t.string "description"
|
||||
t.integer "financial_transaction_class_id"
|
||||
t.integer "bank_account_id"
|
||||
end
|
||||
|
||||
create_table "suppliers", id: :integer, force: :cascade do |t|
|
||||
create_table "suppliers", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.string "name", default: "", null: false
|
||||
t.string "address", default: "", null: false
|
||||
t.string "phone", default: "", null: false
|
||||
|
@ -508,7 +515,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["name"], name: "index_suppliers_on_name", unique: true
|
||||
end
|
||||
|
||||
create_table "tasks", id: :integer, force: :cascade do |t|
|
||||
create_table "tasks", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.string "name", default: "", null: false
|
||||
t.text "description"
|
||||
t.date "due_date"
|
||||
|
@ -525,7 +532,7 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["workgroup_id"], name: "index_tasks_on_workgroup_id"
|
||||
end
|
||||
|
||||
create_table "users", id: :integer, force: :cascade do |t|
|
||||
create_table "users", id: :integer, charset: "utf8mb4", force: :cascade do |t|
|
||||
t.string "nick"
|
||||
t.string "password_hash", default: "", null: false
|
||||
t.string "password_salt", default: "", null: false
|
||||
|
@ -544,4 +551,5 @@ ActiveRecord::Schema.define(version: 2021_02_05_090257) do
|
|||
t.index ["nick"], name: "index_users_on_nick", unique: true
|
||||
end
|
||||
|
||||
add_foreign_key "active_storage_variant_records", "active_storage_blobs", column: "blob_id"
|
||||
end
|
||||
|
|
|
@ -44,6 +44,8 @@ class FoodsoftConfig
|
|||
# @return [ActiveSupport::HashWithIndifferentAccess] Current configuration from configuration file.
|
||||
mattr_accessor :config
|
||||
|
||||
mattr_accessor :default_config
|
||||
|
||||
# Configuration file location.
|
||||
# Taken from environment variable +FOODSOFT_APP_CONFIG+,
|
||||
# or else +config/app_config.yml+.
|
||||
|
@ -216,7 +218,6 @@ class FoodsoftConfig
|
|||
# end
|
||||
#
|
||||
# @return [Hash] Default configuration values
|
||||
mattr_accessor :default_config
|
||||
|
||||
private
|
||||
|
||||
|
|
|
@ -1,14 +1,13 @@
|
|||
require 'spec_helper'
|
||||
require 'apivore'
|
||||
|
||||
# we want to load a local file in YAML-format instead of a served JSON file
|
||||
class SwaggerCheckerFile < Apivore::SwaggerChecker
|
||||
def fetch_swagger!
|
||||
YAML.load(File.read(swagger_path))
|
||||
end
|
||||
end
|
||||
# # we want to load a local file in YAML-format instead of a served JSON file
|
||||
# class SwaggerCheckerFile < Apivore::SwaggerChecker
|
||||
# def fetch_swagger!
|
||||
# YAML.load(File.read(swagger_path))
|
||||
# end
|
||||
# end
|
||||
|
||||
describe 'API v1', type: :apivore, order: :defined do
|
||||
describe 'API v1', order: :defined do
|
||||
include ApiHelper
|
||||
|
||||
subject { SwaggerCheckerFile.instance_for Rails.root.join('doc', 'swagger.v1.yml') }
|
Loading…
Reference in a new issue