Commit 743234271e8c5082b5a80a366a00f1e3be23295e

Authored by Spencer Alan
0 parents
Exists in master

commit committed

Showing 82 changed files with 1224 additions and 0 deletions   Show diff stats
.gitignore 0 → 100644
  1 +++ a/.gitignore
... ... @@ -0,0 +1,7 @@
  1 +.bundle/
  2 +log/*.log
  3 +pkg/
  4 +test/dummy/db/*.sqlite3
  5 +test/dummy/db/*.sqlite3-journal
  6 +test/dummy/log/*.log
  7 +test/dummy/tmp/
... ...
Gemfile 0 → 100644
  1 +++ a/Gemfile
... ... @@ -0,0 +1,14 @@
  1 +source 'https://rubygems.org'
  2 +
  3 +# Declare your gem's dependencies in scim_rails.gemspec.
  4 +# Bundler will treat runtime dependencies like base dependencies, and
  5 +# development dependencies will be added by default to the :development group.
  6 +gemspec
  7 +
  8 +# Declare any dependencies that are still in development here instead of in
  9 +# your gemspec. These might include edge Rails or gems from your path or
  10 +# Git. Remember to move these dependencies to your gemspec before releasing
  11 +# your gem to rubygems.org.
  12 +
  13 +# To use a debugger
  14 +# gem 'byebug', group: [:development, :test]
... ...
Gemfile.lock 0 → 100644
  1 +++ a/Gemfile.lock
... ... @@ -0,0 +1,142 @@
  1 +PATH
  2 + remote: .
  3 + specs:
  4 + scim_rails (0.1.0)
  5 + rails (~> 5.0)
  6 +
  7 +GEM
  8 + remote: https://rubygems.org/
  9 + specs:
  10 + actioncable (5.2.0)
  11 + actionpack (= 5.2.0)
  12 + nio4r (~> 2.0)
  13 + websocket-driver (>= 0.6.1)
  14 + actionmailer (5.2.0)
  15 + actionpack (= 5.2.0)
  16 + actionview (= 5.2.0)
  17 + activejob (= 5.2.0)
  18 + mail (~> 2.5, >= 2.5.4)
  19 + rails-dom-testing (~> 2.0)
  20 + actionpack (5.2.0)
  21 + actionview (= 5.2.0)
  22 + activesupport (= 5.2.0)
  23 + rack (~> 2.0)
  24 + rack-test (>= 0.6.3)
  25 + rails-dom-testing (~> 2.0)
  26 + rails-html-sanitizer (~> 1.0, >= 1.0.2)
  27 + actionview (5.2.0)
  28 + activesupport (= 5.2.0)
  29 + builder (~> 3.1)
  30 + erubi (~> 1.4)
  31 + rails-dom-testing (~> 2.0)
  32 + rails-html-sanitizer (~> 1.0, >= 1.0.3)
  33 + activejob (5.2.0)
  34 + activesupport (= 5.2.0)
  35 + globalid (>= 0.3.6)
  36 + activemodel (5.2.0)
  37 + activesupport (= 5.2.0)
  38 + activerecord (5.2.0)
  39 + activemodel (= 5.2.0)
  40 + activesupport (= 5.2.0)
  41 + arel (>= 9.0)
  42 + activestorage (5.2.0)
  43 + actionpack (= 5.2.0)
  44 + activerecord (= 5.2.0)
  45 + marcel (~> 0.3.1)
  46 + activesupport (5.2.0)
  47 + concurrent-ruby (~> 1.0, >= 1.0.2)
  48 + i18n (>= 0.7, < 2)
  49 + minitest (~> 5.1)
  50 + tzinfo (~> 1.1)
  51 + arel (9.0.0)
  52 + builder (3.2.3)
  53 + concurrent-ruby (1.0.5)
  54 + crass (1.0.4)
  55 + diff-lcs (1.3)
  56 + erubi (1.7.1)
  57 + globalid (0.4.1)
  58 + activesupport (>= 4.2.0)
  59 + i18n (1.1.1)
  60 + concurrent-ruby (~> 1.0)
  61 + loofah (2.2.2)
  62 + crass (~> 1.0.2)
  63 + nokogiri (>= 1.5.9)
  64 + mail (2.7.0)
  65 + mini_mime (>= 0.1.1)
  66 + marcel (0.3.2)
  67 + mimemagic (~> 0.3.2)
  68 + method_source (0.9.0)
  69 + mimemagic (0.3.2)
  70 + mini_mime (1.0.0)
  71 + mini_portile2 (2.3.0)
  72 + minitest (5.11.3)
  73 + nio4r (2.3.1)
  74 + nokogiri (1.8.2)
  75 + mini_portile2 (~> 2.3.0)
  76 + rack (2.0.5)
  77 + rack-test (1.0.0)
  78 + rack (>= 1.0, < 3)
  79 + rails (5.2.0)
  80 + actioncable (= 5.2.0)
  81 + actionmailer (= 5.2.0)
  82 + actionpack (= 5.2.0)
  83 + actionview (= 5.2.0)
  84 + activejob (= 5.2.0)
  85 + activemodel (= 5.2.0)
  86 + activerecord (= 5.2.0)
  87 + activestorage (= 5.2.0)
  88 + activesupport (= 5.2.0)
  89 + bundler (>= 1.3.0)
  90 + railties (= 5.2.0)
  91 + sprockets-rails (>= 2.0.0)
  92 + rails-dom-testing (2.0.3)
  93 + activesupport (>= 4.2.0)
  94 + nokogiri (>= 1.6)
  95 + rails-html-sanitizer (1.0.4)
  96 + loofah (~> 2.2, >= 2.2.2)
  97 + railties (5.2.0)
  98 + actionpack (= 5.2.0)
  99 + activesupport (= 5.2.0)
  100 + method_source
  101 + rake (>= 0.8.7)
  102 + thor (>= 0.18.1, < 2.0)
  103 + rake (10.5.0)
  104 + rspec (3.8.0)
  105 + rspec-core (~> 3.8.0)
  106 + rspec-expectations (~> 3.8.0)
  107 + rspec-mocks (~> 3.8.0)
  108 + rspec-core (3.8.0)
  109 + rspec-support (~> 3.8.0)
  110 + rspec-expectations (3.8.2)
  111 + diff-lcs (>= 1.2.0, < 2.0)
  112 + rspec-support (~> 3.8.0)
  113 + rspec-mocks (3.8.0)
  114 + diff-lcs (>= 1.2.0, < 2.0)
  115 + rspec-support (~> 3.8.0)
  116 + rspec-support (3.8.0)
  117 + sprockets (3.7.1)
  118 + concurrent-ruby (~> 1.0)
  119 + rack (> 1, < 3)
  120 + sprockets-rails (3.2.1)
  121 + actionpack (>= 4.0)
  122 + activesupport (>= 4.0)
  123 + sprockets (>= 3.0.0)
  124 + thor (0.20.0)
  125 + thread_safe (0.3.6)
  126 + tzinfo (1.2.5)
  127 + thread_safe (~> 0.1)
  128 + websocket-driver (0.7.0)
  129 + websocket-extensions (>= 0.1.0)
  130 + websocket-extensions (0.1.3)
  131 +
  132 +PLATFORMS
  133 + ruby
  134 +
  135 +DEPENDENCIES
  136 + bundler (~> 1.16)
  137 + rake (~> 10.0)
  138 + rspec (~> 3.0)
  139 + scim_rails!
  140 +
  141 +BUNDLED WITH
  142 + 1.16.1
... ...
MIT-LICENSE 0 → 100644
  1 +++ a/MIT-LICENSE
... ... @@ -0,0 +1,20 @@
  1 +Copyright 2018 Lessonly
  2 +
  3 +Permission is hereby granted, free of charge, to any person obtaining
  4 +a copy of this software and associated documentation files (the
  5 +"Software"), to deal in the Software without restriction, including
  6 +without limitation the rights to use, copy, modify, merge, publish,
  7 +distribute, sublicense, and/or sell copies of the Software, and to
  8 +permit persons to whom the Software is furnished to do so, subject to
  9 +the following conditions:
  10 +
  11 +The above copyright notice and this permission notice shall be
  12 +included in all copies or substantial portions of the Software.
  13 +
  14 +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
  15 +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
  16 +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
  17 +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
  18 +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
  19 +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
  20 +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
... ...
README.md 0 → 100644
  1 +++ a/README.md
... ... @@ -0,0 +1,28 @@
  1 +# ScimRails
  2 +Short description and motivation.
  3 +
  4 +## Usage
  5 +How to use my plugin.
  6 +
  7 +## Installation
  8 +Add this line to your application's Gemfile:
  9 +
  10 +```ruby
  11 +gem 'scim_rails'
  12 +```
  13 +
  14 +And then execute:
  15 +```bash
  16 +$ bundle
  17 +```
  18 +
  19 +Or install it yourself as:
  20 +```bash
  21 +$ gem install scim_rails
  22 +```
  23 +
  24 +## Contributing
  25 +Contribution directions go here.
  26 +
  27 +## License
  28 +The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
... ...
Rakefile 0 → 100644
  1 +++ a/Rakefile
... ... @@ -0,0 +1,37 @@
  1 +begin
  2 + require 'bundler/setup'
  3 +rescue LoadError
  4 + puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
  5 +end
  6 +
  7 +require 'rdoc/task'
  8 +
  9 +RDoc::Task.new(:rdoc) do |rdoc|
  10 + rdoc.rdoc_dir = 'rdoc'
  11 + rdoc.title = 'ScimRails'
  12 + rdoc.options << '--line-numbers'
  13 + rdoc.rdoc_files.include('README.md')
  14 + rdoc.rdoc_files.include('lib/**/*.rb')
  15 +end
  16 +
  17 +APP_RAKEFILE = File.expand_path("../test/dummy/Rakefile", __FILE__)
  18 +load 'rails/tasks/engine.rake'
  19 +
  20 +
  21 +load 'rails/tasks/statistics.rake'
  22 +
  23 +
  24 +
  25 +require 'bundler/gem_tasks'
  26 +
  27 +require 'rake/testtask'
  28 +
  29 +Rake::TestTask.new(:test) do |t|
  30 + t.libs << 'lib'
  31 + t.libs << 'test'
  32 + t.pattern = 'test/**/*_test.rb'
  33 + t.verbose = false
  34 +end
  35 +
  36 +
  37 +task default: :test
... ...
app/assets/config/scim_rails_manifest.js 0 → 100644
  1 +++ a/app/assets/config/scim_rails_manifest.js
... ... @@ -0,0 +1,2 @@
  1 +//= link_directory ../javascripts/scim_rails .js
  2 +//= link_directory ../stylesheets/scim_rails .css
... ...
app/assets/images/scim_rails/.keep 0 → 100644
  1 +++ a/app/assets/images/scim_rails/.keep
... ...
app/assets/javascripts/scim_rails/application.js 0 → 100644
  1 +++ a/app/assets/javascripts/scim_rails/application.js
... ... @@ -0,0 +1,13 @@
  1 +// This is a manifest file that'll be compiled into application.js, which will include all the files
  2 +// listed below.
  3 +//
  4 +// Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
  5 +// or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path.
  6 +//
  7 +// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
  8 +// compiled file. JavaScript code in this file should be added after the last require_* statement.
  9 +//
  10 +// Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
  11 +// about supported directives.
  12 +//
  13 +//= require_tree .
... ...
app/assets/stylesheets/scim_rails/application.css 0 → 100644
  1 +++ a/app/assets/stylesheets/scim_rails/application.css
... ... @@ -0,0 +1,15 @@
  1 +/*
  2 + * This is a manifest file that'll be compiled into application.css, which will include all the files
  3 + * listed below.
  4 + *
  5 + * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
  6 + * or any plugin's vendor/assets/stylesheets directory can be referenced here using a relative path.
  7 + *
  8 + * You're free to add application-wide styles to this file and they'll appear at the bottom of the
  9 + * compiled file so the styles you add here take precedence over styles defined in any other CSS/SCSS
  10 + * files in this directory. Styles in this file should be added after the last require_* statement.
  11 + * It is generally better to create a new file per style scope.
  12 + *
  13 + *= require_tree .
  14 + *= require_self
  15 + */
... ...
app/controllers/scim_rails/application_controller.rb 0 → 100644
  1 +++ a/app/controllers/scim_rails/application_controller.rb
... ... @@ -0,0 +1,5 @@
  1 +module ScimRails
  2 + class ApplicationController < ActionController::Base
  3 + protect_from_forgery with: :exception
  4 + end
  5 +end
... ...
app/helpers/scim_rails/application_helper.rb 0 → 100644
  1 +++ a/app/helpers/scim_rails/application_helper.rb
... ... @@ -0,0 +1,4 @@
  1 +module ScimRails
  2 + module ApplicationHelper
  3 + end
  4 +end
... ...
app/jobs/scim_rails/application_job.rb 0 → 100644
  1 +++ a/app/jobs/scim_rails/application_job.rb
... ... @@ -0,0 +1,4 @@
  1 +module ScimRails
  2 + class ApplicationJob < ActiveJob::Base
  3 + end
  4 +end
... ...
app/mailers/scim_rails/application_mailer.rb 0 → 100644
  1 +++ a/app/mailers/scim_rails/application_mailer.rb
... ... @@ -0,0 +1,6 @@
  1 +module ScimRails
  2 + class ApplicationMailer < ActionMailer::Base
  3 + default from: 'from@example.com'
  4 + layout 'mailer'
  5 + end
  6 +end
... ...
app/models/scim_rails/application_record.rb 0 → 100644
  1 +++ a/app/models/scim_rails/application_record.rb
... ... @@ -0,0 +1,5 @@
  1 +module ScimRails
  2 + class ApplicationRecord < ActiveRecord::Base
  3 + self.abstract_class = true
  4 + end
  5 +end
... ...
app/views/layouts/scim_rails/application.html.erb 0 → 100644
  1 +++ a/app/views/layouts/scim_rails/application.html.erb
... ... @@ -0,0 +1,14 @@
  1 +<!DOCTYPE html>
  2 +<html>
  3 +<head>
  4 + <title>Scim rails</title>
  5 + <%= stylesheet_link_tag "scim_rails/application", media: "all" %>
  6 + <%= javascript_include_tag "scim_rails/application" %>
  7 + <%= csrf_meta_tags %>
  8 +</head>
  9 +<body>
  10 +
  11 +<%= yield %>
  12 +
  13 +</body>
  14 +</html>
... ...
bin/rails 0 → 100755
  1 +++ a/bin/rails
... ... @@ -0,0 +1,13 @@
  1 +#!/usr/bin/env ruby
  2 +# This command will automatically be run when you run "rails" with Rails gems
  3 +# installed from the root of your application.
  4 +
  5 +ENGINE_ROOT = File.expand_path('../..', __FILE__)
  6 +ENGINE_PATH = File.expand_path('../../lib/scim_rails/engine', __FILE__)
  7 +
  8 +# Set up gems listed in the Gemfile.
  9 +ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)
  10 +require 'bundler/setup' if File.exist?(ENV['BUNDLE_GEMFILE'])
  11 +
  12 +require 'rails/all'
  13 +require 'rails/engine/commands'
... ...
config/routes.rb 0 → 100644
  1 +++ a/config/routes.rb
... ... @@ -0,0 +1,2 @@
  1 +ScimRails::Engine.routes.draw do
  2 +end
... ...
lib/scim_rails.rb 0 → 100644
  1 +++ a/lib/scim_rails.rb
... ... @@ -0,0 +1,5 @@
  1 +require "scim_rails/engine"
  2 +
  3 +module ScimRails
  4 + # Your code goes here...
  5 +end
... ...
lib/scim_rails/engine.rb 0 → 100644
  1 +++ a/lib/scim_rails/engine.rb
... ... @@ -0,0 +1,5 @@
  1 +module ScimRails
  2 + class Engine < ::Rails::Engine
  3 + isolate_namespace ScimRails
  4 + end
  5 +end
... ...
lib/scim_rails/version.rb 0 → 100644
  1 +++ a/lib/scim_rails/version.rb
... ... @@ -0,0 +1,3 @@
  1 +module ScimRails
  2 + VERSION = '0.1.0'
  3 +end
... ...
lib/tasks/scim_rails_tasks.rake 0 → 100644
  1 +++ a/lib/tasks/scim_rails_tasks.rake
... ... @@ -0,0 +1,4 @@
  1 +# desc "Explaining what the task does"
  2 +# task :scim_rails do
  3 +# # Task goes here
  4 +# end
... ...
scim_rails.gemspec 0 → 100644
  1 +++ a/scim_rails.gemspec
... ... @@ -0,0 +1,24 @@
  1 +$:.push File.expand_path("../lib", __FILE__)
  2 +
  3 +# Maintain your gem's version:
  4 +require "scim_rails/version"
  5 +
  6 +# Describe your gem and declare its dependencies:
  7 +Gem::Specification.new do |s|
  8 + s.name = "scim_rails"
  9 + s.version = ScimRails::VERSION
  10 + s.authors = ["Spencer Alan"]
  11 + s.email = ["devops@lessonly.com"]
  12 + s.homepage = "https://github.com/lessonly/scim_rails"
  13 + s.summary = "SCIM Adapter for Rails."
  14 + s.description = "SCIM Adapter for Rails."
  15 + s.license = "MIT"
  16 +
  17 + s.files = Dir["{app,config,db,lib}/**/*", "MIT-LICENSE", "Rakefile", "README.md"]
  18 +
  19 + s.add_dependency "rails", "~> 5.0"
  20 +
  21 + s.add_development_dependency "bundler", "~> 1.16"
  22 + s.add_development_dependency "rake", "~> 10.0"
  23 + s.add_development_dependency "rspec", "~> 3.0"
  24 +end
... ...
test/dummy/Rakefile 0 → 100644
  1 +++ a/test/dummy/Rakefile
... ... @@ -0,0 +1,6 @@
  1 +# Add your own tasks in files placed in lib/tasks ending in .rake,
  2 +# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
  3 +
  4 +require_relative 'config/application'
  5 +
  6 +Rails.application.load_tasks
... ...
test/dummy/app/assets/config/manifest.js 0 → 100644
  1 +++ a/test/dummy/app/assets/config/manifest.js
... ... @@ -0,0 +1,5 @@
  1 +
  2 +//= link_tree ../images
  3 +//= link_directory ../javascripts .js
  4 +//= link_directory ../stylesheets .css
  5 +//= link scim_rails_manifest.js
... ...
test/dummy/app/assets/images/.keep 0 → 100644
  1 +++ a/test/dummy/app/assets/images/.keep
... ...
test/dummy/app/assets/javascripts/application.js 0 → 100644
  1 +++ a/test/dummy/app/assets/javascripts/application.js
... ... @@ -0,0 +1,13 @@
  1 +// This is a manifest file that'll be compiled into application.js, which will include all the files
  2 +// listed below.
  3 +//
  4 +// Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
  5 +// or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path.
  6 +//
  7 +// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
  8 +// compiled file. JavaScript code in this file should be added after the last require_* statement.
  9 +//
  10 +// Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
  11 +// about supported directives.
  12 +//
  13 +//= require_tree .
... ...
test/dummy/app/assets/javascripts/cable.js 0 → 100644
  1 +++ a/test/dummy/app/assets/javascripts/cable.js
... ... @@ -0,0 +1,13 @@
  1 +// Action Cable provides the framework to deal with WebSockets in Rails.
  2 +// You can generate new channels where WebSocket features live using the rails generate channel command.
  3 +//
  4 +//= require action_cable
  5 +//= require_self
  6 +//= require_tree ./channels
  7 +
  8 +(function() {
  9 + this.App || (this.App = {});
  10 +
  11 + App.cable = ActionCable.createConsumer();
  12 +
  13 +}).call(this);
... ...
test/dummy/app/assets/javascripts/channels/.keep 0 → 100644
  1 +++ a/test/dummy/app/assets/javascripts/channels/.keep
... ...
test/dummy/app/assets/stylesheets/application.css 0 → 100644
  1 +++ a/test/dummy/app/assets/stylesheets/application.css
... ... @@ -0,0 +1,15 @@
  1 +/*
  2 + * This is a manifest file that'll be compiled into application.css, which will include all the files
  3 + * listed below.
  4 + *
  5 + * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
  6 + * or any plugin's vendor/assets/stylesheets directory can be referenced here using a relative path.
  7 + *
  8 + * You're free to add application-wide styles to this file and they'll appear at the bottom of the
  9 + * compiled file so the styles you add here take precedence over styles defined in any other CSS/SCSS
  10 + * files in this directory. Styles in this file should be added after the last require_* statement.
  11 + * It is generally better to create a new file per style scope.
  12 + *
  13 + *= require_tree .
  14 + *= require_self
  15 + */
... ...
test/dummy/app/channels/application_cable/channel.rb 0 → 100644
  1 +++ a/test/dummy/app/channels/application_cable/channel.rb
... ... @@ -0,0 +1,4 @@
  1 +module ApplicationCable
  2 + class Channel < ActionCable::Channel::Base
  3 + end
  4 +end
... ...
test/dummy/app/channels/application_cable/connection.rb 0 → 100644
  1 +++ a/test/dummy/app/channels/application_cable/connection.rb
... ... @@ -0,0 +1,4 @@
  1 +module ApplicationCable
  2 + class Connection < ActionCable::Connection::Base
  3 + end
  4 +end
... ...
test/dummy/app/controllers/application_controller.rb 0 → 100644
  1 +++ a/test/dummy/app/controllers/application_controller.rb
... ... @@ -0,0 +1,3 @@
  1 +class ApplicationController < ActionController::Base
  2 + protect_from_forgery with: :exception
  3 +end
... ...
test/dummy/app/controllers/concerns/.keep 0 → 100644
  1 +++ a/test/dummy/app/controllers/concerns/.keep
... ...
test/dummy/app/helpers/application_helper.rb 0 → 100644
  1 +++ a/test/dummy/app/helpers/application_helper.rb
... ... @@ -0,0 +1,2 @@
  1 +module ApplicationHelper
  2 +end
... ...
test/dummy/app/jobs/application_job.rb 0 → 100644
  1 +++ a/test/dummy/app/jobs/application_job.rb
... ... @@ -0,0 +1,2 @@
  1 +class ApplicationJob < ActiveJob::Base
  2 +end
... ...
test/dummy/app/mailers/application_mailer.rb 0 → 100644
  1 +++ a/test/dummy/app/mailers/application_mailer.rb
... ... @@ -0,0 +1,4 @@
  1 +class ApplicationMailer < ActionMailer::Base
  2 + default from: 'from@example.com'
  3 + layout 'mailer'
  4 +end
... ...
test/dummy/app/models/application_record.rb 0 → 100644
  1 +++ a/test/dummy/app/models/application_record.rb
... ... @@ -0,0 +1,3 @@
  1 +class ApplicationRecord < ActiveRecord::Base
  2 + self.abstract_class = true
  3 +end
... ...
test/dummy/app/models/concerns/.keep 0 → 100644
  1 +++ a/test/dummy/app/models/concerns/.keep
... ...
test/dummy/app/views/layouts/application.html.erb 0 → 100644
  1 +++ a/test/dummy/app/views/layouts/application.html.erb
... ... @@ -0,0 +1,14 @@
  1 +<!DOCTYPE html>
  2 +<html>
  3 + <head>
  4 + <title>Dummy</title>
  5 + <%= csrf_meta_tags %>
  6 +
  7 + <%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
  8 + <%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
  9 + </head>
  10 +
  11 + <body>
  12 + <%= yield %>
  13 + </body>
  14 +</html>
... ...
test/dummy/app/views/layouts/mailer.html.erb 0 → 100644
  1 +++ a/test/dummy/app/views/layouts/mailer.html.erb
... ... @@ -0,0 +1,13 @@
  1 +<!DOCTYPE html>
  2 +<html>
  3 + <head>
  4 + <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5 + <style>
  6 + /* Email styles need to be inline */
  7 + </style>
  8 + </head>
  9 +
  10 + <body>
  11 + <%= yield %>
  12 + </body>
  13 +</html>
... ...
test/dummy/app/views/layouts/mailer.text.erb 0 → 100644
  1 +++ a/test/dummy/app/views/layouts/mailer.text.erb
... ... @@ -0,0 +1 @@
  1 +<%= yield %>
... ...
test/dummy/bin/bundle 0 → 100755
  1 +++ a/test/dummy/bin/bundle
... ... @@ -0,0 +1,3 @@
  1 +#!/usr/bin/env ruby
  2 +ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)
  3 +load Gem.bin_path('bundler', 'bundle')
... ...
test/dummy/bin/rails 0 → 100755
  1 +++ a/test/dummy/bin/rails
... ... @@ -0,0 +1,4 @@
  1 +#!/usr/bin/env ruby
  2 +APP_PATH = File.expand_path('../config/application', __dir__)
  3 +require_relative '../config/boot'
  4 +require 'rails/commands'
... ...
test/dummy/bin/rake 0 → 100755
  1 +++ a/test/dummy/bin/rake
... ... @@ -0,0 +1,4 @@
  1 +#!/usr/bin/env ruby
  2 +require_relative '../config/boot'
  3 +require 'rake'
  4 +Rake.application.run
... ...
test/dummy/bin/setup 0 → 100755
  1 +++ a/test/dummy/bin/setup
... ... @@ -0,0 +1,34 @@
  1 +#!/usr/bin/env ruby
  2 +require 'pathname'
  3 +require 'fileutils'
  4 +include FileUtils
  5 +
  6 +# path to your application root.
  7 +APP_ROOT = Pathname.new File.expand_path('../../', __FILE__)
  8 +
  9 +def system!(*args)
  10 + system(*args) || abort("\n== Command #{args} failed ==")
  11 +end
  12 +
  13 +chdir APP_ROOT do
  14 + # This script is a starting point to setup your application.
  15 + # Add necessary setup steps to this file.
  16 +
  17 + puts '== Installing dependencies =='
  18 + system! 'gem install bundler --conservative'
  19 + system('bundle check') || system!('bundle install')
  20 +
  21 + # puts "\n== Copying sample files =="
  22 + # unless File.exist?('config/database.yml')
  23 + # cp 'config/database.yml.sample', 'config/database.yml'
  24 + # end
  25 +
  26 + puts "\n== Preparing database =="
  27 + system! 'bin/rails db:setup'
  28 +
  29 + puts "\n== Removing old logs and tempfiles =="
  30 + system! 'bin/rails log:clear tmp:clear'
  31 +
  32 + puts "\n== Restarting application server =="
  33 + system! 'bin/rails restart'
  34 +end
... ...
test/dummy/bin/update 0 → 100755
  1 +++ a/test/dummy/bin/update
... ... @@ -0,0 +1,29 @@
  1 +#!/usr/bin/env ruby
  2 +require 'pathname'
  3 +require 'fileutils'
  4 +include FileUtils
  5 +
  6 +# path to your application root.
  7 +APP_ROOT = Pathname.new File.expand_path('../../', __FILE__)
  8 +
  9 +def system!(*args)
  10 + system(*args) || abort("\n== Command #{args} failed ==")
  11 +end
  12 +
  13 +chdir APP_ROOT do
  14 + # This script is a way to update your development environment automatically.
  15 + # Add necessary update steps to this file.
  16 +
  17 + puts '== Installing dependencies =='
  18 + system! 'gem install bundler --conservative'
  19 + system('bundle check') || system!('bundle install')
  20 +
  21 + puts "\n== Updating database =="
  22 + system! 'bin/rails db:migrate'
  23 +
  24 + puts "\n== Removing old logs and tempfiles =="
  25 + system! 'bin/rails log:clear tmp:clear'
  26 +
  27 + puts "\n== Restarting application server =="
  28 + system! 'bin/rails restart'
  29 +end
... ...
test/dummy/config.ru 0 → 100644
  1 +++ a/test/dummy/config.ru
... ... @@ -0,0 +1,5 @@
  1 +# This file is used by Rack-based servers to start the application.
  2 +
  3 +require_relative 'config/environment'
  4 +
  5 +run Rails.application
... ...
test/dummy/config/application.rb 0 → 100644
  1 +++ a/test/dummy/config/application.rb
... ... @@ -0,0 +1,15 @@
  1 +require_relative 'boot'
  2 +
  3 +require 'rails/all'
  4 +
  5 +Bundler.require(*Rails.groups)
  6 +require "scim_rails"
  7 +
  8 +module Dummy
  9 + class Application < Rails::Application
  10 + # Settings in config/environments/* take precedence over those specified here.
  11 + # Application configuration should go into files in config/initializers
  12 + # -- all .rb files in that directory are automatically loaded.
  13 + end
  14 +end
  15 +
... ...
test/dummy/config/boot.rb 0 → 100644
  1 +++ a/test/dummy/config/boot.rb
... ... @@ -0,0 +1,5 @@
  1 +# Set up gems listed in the Gemfile.
  2 +ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../../Gemfile', __dir__)
  3 +
  4 +require 'bundler/setup' if File.exist?(ENV['BUNDLE_GEMFILE'])
  5 +$LOAD_PATH.unshift File.expand_path('../../../lib', __dir__)
... ...
test/dummy/config/cable.yml 0 → 100644
  1 +++ a/test/dummy/config/cable.yml
... ... @@ -0,0 +1,9 @@
  1 +development:
  2 + adapter: async
  3 +
  4 +test:
  5 + adapter: async
  6 +
  7 +production:
  8 + adapter: redis
  9 + url: redis://localhost:6379/1
... ...
test/dummy/config/database.yml 0 → 100644
  1 +++ a/test/dummy/config/database.yml
... ... @@ -0,0 +1,25 @@
  1 +# SQLite version 3.x
  2 +# gem install sqlite3
  3 +#
  4 +# Ensure the SQLite 3 gem is defined in your Gemfile
  5 +# gem 'sqlite3'
  6 +#
  7 +default: &default
  8 + adapter: sqlite3
  9 + pool: 5
  10 + timeout: 5000
  11 +
  12 +development:
  13 + <<: *default
  14 + database: db/development.sqlite3
  15 +
  16 +# Warning: The database defined as "test" will be erased and
  17 +# re-generated from your development database when you run "rake".
  18 +# Do not set this db to the same as development or production.
  19 +test:
  20 + <<: *default
  21 + database: db/test.sqlite3
  22 +
  23 +production:
  24 + <<: *default
  25 + database: db/production.sqlite3
... ...
test/dummy/config/environment.rb 0 → 100644
  1 +++ a/test/dummy/config/environment.rb
... ... @@ -0,0 +1,5 @@
  1 +# Load the Rails application.
  2 +require_relative 'application'
  3 +
  4 +# Initialize the Rails application.
  5 +Rails.application.initialize!
... ...
test/dummy/config/environments/development.rb 0 → 100644
  1 +++ a/test/dummy/config/environments/development.rb
... ... @@ -0,0 +1,54 @@
  1 +Rails.application.configure do
  2 + # Settings specified here will take precedence over those in config/application.rb.
  3 +
  4 + # In the development environment your application's code is reloaded on
  5 + # every request. This slows down response time but is perfect for development
  6 + # since you don't have to restart the web server when you make code changes.
  7 + config.cache_classes = false
  8 +
  9 + # Do not eager load code on boot.
  10 + config.eager_load = false
  11 +
  12 + # Show full error reports.
  13 + config.consider_all_requests_local = true
  14 +
  15 + # Enable/disable caching. By default caching is disabled.
  16 + if Rails.root.join('tmp/caching-dev.txt').exist?
  17 + config.action_controller.perform_caching = true
  18 +
  19 + config.cache_store = :memory_store
  20 + config.public_file_server.headers = {
  21 + 'Cache-Control' => 'public, max-age=172800'
  22 + }
  23 + else
  24 + config.action_controller.perform_caching = false
  25 +
  26 + config.cache_store = :null_store
  27 + end
  28 +
  29 + # Don't care if the mailer can't send.
  30 + config.action_mailer.raise_delivery_errors = false
  31 +
  32 + config.action_mailer.perform_caching = false
  33 +
  34 + # Print deprecation notices to the Rails logger.
  35 + config.active_support.deprecation = :log
  36 +
  37 + # Raise an error on page load if there are pending migrations.
  38 + config.active_record.migration_error = :page_load
  39 +
  40 + # Debug mode disables concatenation and preprocessing of assets.
  41 + # This option may cause significant delays in view rendering with a large
  42 + # number of complex assets.
  43 + config.assets.debug = true
  44 +
  45 + # Suppress logger output for asset requests.
  46 + config.assets.quiet = true
  47 +
  48 + # Raises error for missing translations
  49 + # config.action_view.raise_on_missing_translations = true
  50 +
  51 + # Use an evented file watcher to asynchronously detect changes in source code,
  52 + # routes, locales, etc. This feature depends on the listen gem.
  53 + # config.file_watcher = ActiveSupport::EventedFileUpdateChecker
  54 +end
... ...
test/dummy/config/environments/production.rb 0 → 100644
  1 +++ a/test/dummy/config/environments/production.rb
... ... @@ -0,0 +1,86 @@
  1 +Rails.application.configure do
  2 + # Settings specified here will take precedence over those in config/application.rb.
  3 +
  4 + # Code is not reloaded between requests.
  5 + config.cache_classes = true
  6 +
  7 + # Eager load code on boot. This eager loads most of Rails and
  8 + # your application in memory, allowing both threaded web servers
  9 + # and those relying on copy on write to perform better.
  10 + # Rake tasks automatically ignore this option for performance.
  11 + config.eager_load = true
  12 +
  13 + # Full error reports are disabled and caching is turned on.
  14 + config.consider_all_requests_local = false
  15 + config.action_controller.perform_caching = true
  16 +
  17 + # Disable serving static files from the `/public` folder by default since
  18 + # Apache or NGINX already handles this.
  19 + config.public_file_server.enabled = ENV['RAILS_SERVE_STATIC_FILES'].present?
  20 +
  21 + # Compress JavaScripts and CSS.
  22 + config.assets.js_compressor = :uglifier
  23 + # config.assets.css_compressor = :sass
  24 +
  25 + # Do not fallback to assets pipeline if a precompiled asset is missed.
  26 + config.assets.compile = false
  27 +
  28 + # `config.assets.precompile` and `config.assets.version` have moved to config/initializers/assets.rb
  29 +
  30 + # Enable serving of images, stylesheets, and JavaScripts from an asset server.
  31 + # config.action_controller.asset_host = 'http://assets.example.com'
  32 +
  33 + # Specifies the header that your server uses for sending files.
  34 + # config.action_dispatch.x_sendfile_header = 'X-Sendfile' # for Apache
  35 + # config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect' # for NGINX
  36 +
  37 + # Mount Action Cable outside main process or domain
  38 + # config.action_cable.mount_path = nil
  39 + # config.action_cable.url = 'wss://example.com/cable'
  40 + # config.action_cable.allowed_request_origins = [ 'http://example.com', /http:\/\/example.*/ ]
  41 +
  42 + # Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies.
  43 + # config.force_ssl = true
  44 +
  45 + # Use the lowest log level to ensure availability of diagnostic information
  46 + # when problems arise.
  47 + config.log_level = :debug
  48 +
  49 + # Prepend all log lines with the following tags.
  50 + config.log_tags = [ :request_id ]
  51 +
  52 + # Use a different cache store in production.
  53 + # config.cache_store = :mem_cache_store
  54 +
  55 + # Use a real queuing backend for Active Job (and separate queues per environment)
  56 + # config.active_job.queue_adapter = :resque
  57 + # config.active_job.queue_name_prefix = "dummy_#{Rails.env}"
  58 + config.action_mailer.perform_caching = false
  59 +
  60 + # Ignore bad email addresses and do not raise email delivery errors.
  61 + # Set this to true and configure the email server for immediate delivery to raise delivery errors.
  62 + # config.action_mailer.raise_delivery_errors = false
  63 +
  64 + # Enable locale fallbacks for I18n (makes lookups for any locale fall back to
  65 + # the I18n.default_locale when a translation cannot be found).
  66 + config.i18n.fallbacks = true
  67 +
  68 + # Send deprecation notices to registered listeners.
  69 + config.active_support.deprecation = :notify
  70 +
  71 + # Use default logging formatter so that PID and timestamp are not suppressed.
  72 + config.log_formatter = ::Logger::Formatter.new
  73 +
  74 + # Use a different logger for distributed setups.
  75 + # require 'syslog/logger'
  76 + # config.logger = ActiveSupport::TaggedLogging.new(Syslog::Logger.new 'app-name')
  77 +
  78 + if ENV["RAILS_LOG_TO_STDOUT"].present?
  79 + logger = ActiveSupport::Logger.new(STDOUT)
  80 + logger.formatter = config.log_formatter
  81 + config.logger = ActiveSupport::TaggedLogging.new(logger)
  82 + end
  83 +
  84 + # Do not dump schema after migrations.
  85 + config.active_record.dump_schema_after_migration = false
  86 +end
... ...
test/dummy/config/environments/test.rb 0 → 100644
  1 +++ a/test/dummy/config/environments/test.rb
... ... @@ -0,0 +1,42 @@
  1 +Rails.application.configure do
  2 + # Settings specified here will take precedence over those in config/application.rb.
  3 +
  4 + # The test environment is used exclusively to run your application's
  5 + # test suite. You never need to work with it otherwise. Remember that
  6 + # your test database is "scratch space" for the test suite and is wiped
  7 + # and recreated between test runs. Don't rely on the data there!
  8 + config.cache_classes = true
  9 +
  10 + # Do not eager load code on boot. This avoids loading your whole application
  11 + # just for the purpose of running a single test. If you are using a tool that
  12 + # preloads Rails for running tests, you may have to set it to true.
  13 + config.eager_load = false
  14 +
  15 + # Configure public file server for tests with Cache-Control for performance.
  16 + config.public_file_server.enabled = true
  17 + config.public_file_server.headers = {
  18 + 'Cache-Control' => 'public, max-age=3600'
  19 + }
  20 +
  21 + # Show full error reports and disable caching.
  22 + config.consider_all_requests_local = true
  23 + config.action_controller.perform_caching = false
  24 +
  25 + # Raise exceptions instead of rendering exception templates.
  26 + config.action_dispatch.show_exceptions = false
  27 +
  28 + # Disable request forgery protection in test environment.
  29 + config.action_controller.allow_forgery_protection = false
  30 + config.action_mailer.perform_caching = false
  31 +
  32 + # Tell Action Mailer not to deliver emails to the real world.
  33 + # The :test delivery method accumulates sent emails in the
  34 + # ActionMailer::Base.deliveries array.
  35 + config.action_mailer.delivery_method = :test
  36 +
  37 + # Print deprecation notices to the stderr.
  38 + config.active_support.deprecation = :stderr
  39 +
  40 + # Raises error for missing translations
  41 + # config.action_view.raise_on_missing_translations = true
  42 +end
... ...
test/dummy/config/initializers/application_controller_renderer.rb 0 → 100644
  1 +++ a/test/dummy/config/initializers/application_controller_renderer.rb
... ... @@ -0,0 +1,6 @@
  1 +# Be sure to restart your server when you modify this file.
  2 +
  3 +# ApplicationController.renderer.defaults.merge!(
  4 +# http_host: 'example.org',
  5 +# https: false
  6 +# )
... ...
test/dummy/config/initializers/assets.rb 0 → 100644
  1 +++ a/test/dummy/config/initializers/assets.rb
... ... @@ -0,0 +1,11 @@
  1 +# Be sure to restart your server when you modify this file.
  2 +
  3 +# Version of your assets, change this if you want to expire all your assets.
  4 +Rails.application.config.assets.version = '1.0'
  5 +
  6 +# Add additional assets to the asset load path
  7 +# Rails.application.config.assets.paths << Emoji.images_path
  8 +
  9 +# Precompile additional assets.
  10 +# application.js, application.css, and all non-JS/CSS in app/assets folder are already added.
  11 +# Rails.application.config.assets.precompile += %w( search.js )
... ...
test/dummy/config/initializers/backtrace_silencers.rb 0 → 100644
  1 +++ a/test/dummy/config/initializers/backtrace_silencers.rb
... ... @@ -0,0 +1,7 @@
  1 +# Be sure to restart your server when you modify this file.
  2 +
  3 +# You can add backtrace silencers for libraries that you're using but don't wish to see in your backtraces.
  4 +# Rails.backtrace_cleaner.add_silencer { |line| line =~ /my_noisy_library/ }
  5 +
  6 +# You can also remove all the silencers if you're trying to debug a problem that might stem from framework code.
  7 +# Rails.backtrace_cleaner.remove_silencers!
... ...
test/dummy/config/initializers/cookies_serializer.rb 0 → 100644
  1 +++ a/test/dummy/config/initializers/cookies_serializer.rb
... ... @@ -0,0 +1,5 @@
  1 +# Be sure to restart your server when you modify this file.
  2 +
  3 +# Specify a serializer for the signed and encrypted cookie jars.
  4 +# Valid options are :json, :marshal, and :hybrid.
  5 +Rails.application.config.action_dispatch.cookies_serializer = :json
... ...
test/dummy/config/initializers/filter_parameter_logging.rb 0 → 100644
  1 +++ a/test/dummy/config/initializers/filter_parameter_logging.rb
... ... @@ -0,0 +1,4 @@
  1 +# Be sure to restart your server when you modify this file.
  2 +
  3 +# Configure sensitive parameters which will be filtered from the log file.
  4 +Rails.application.config.filter_parameters += [:password]
... ...
test/dummy/config/initializers/inflections.rb 0 → 100644
  1 +++ a/test/dummy/config/initializers/inflections.rb
... ... @@ -0,0 +1,16 @@
  1 +# Be sure to restart your server when you modify this file.
  2 +
  3 +# Add new inflection rules using the following format. Inflections
  4 +# are locale specific, and you may define rules for as many different
  5 +# locales as you wish. All of these examples are active by default:
  6 +# ActiveSupport::Inflector.inflections(:en) do |inflect|
  7 +# inflect.plural /^(ox)$/i, '\1en'
  8 +# inflect.singular /^(ox)en/i, '\1'
  9 +# inflect.irregular 'person', 'people'
  10 +# inflect.uncountable %w( fish sheep )
  11 +# end
  12 +
  13 +# These inflection rules are supported but not enabled by default:
  14 +# ActiveSupport::Inflector.inflections(:en) do |inflect|
  15 +# inflect.acronym 'RESTful'
  16 +# end
... ...
test/dummy/config/initializers/mime_types.rb 0 → 100644
  1 +++ a/test/dummy/config/initializers/mime_types.rb
... ... @@ -0,0 +1,4 @@
  1 +# Be sure to restart your server when you modify this file.
  2 +
  3 +# Add new mime types for use in respond_to blocks:
  4 +# Mime::Type.register "text/richtext", :rtf
... ...
test/dummy/config/initializers/new_framework_defaults.rb 0 → 100644
  1 +++ a/test/dummy/config/initializers/new_framework_defaults.rb
... ... @@ -0,0 +1,24 @@
  1 +# Be sure to restart your server when you modify this file.
  2 +#
  3 +# This file contains migration options to ease your Rails 5.0 upgrade.
  4 +#
  5 +# Read the Rails 5.0 release notes for more info on each option.
  6 +
  7 +# Enable per-form CSRF tokens. Previous versions had false.
  8 +Rails.application.config.action_controller.per_form_csrf_tokens = true
  9 +
  10 +# Enable origin-checking CSRF mitigation. Previous versions had false.
  11 +Rails.application.config.action_controller.forgery_protection_origin_check = true
  12 +
  13 +# Make Ruby 2.4 preserve the timezone of the receiver when calling `to_time`.
  14 +# Previous versions had false.
  15 +ActiveSupport.to_time_preserves_timezone = true
  16 +
  17 +# Require `belongs_to` associations by default. Previous versions had false.
  18 +Rails.application.config.active_record.belongs_to_required_by_default = true
  19 +
  20 +# Do not halt callback chains when a callback returns false. Previous versions had true.
  21 +ActiveSupport.halt_callback_chains_on_return_false = false
  22 +
  23 +# Configure SSL options to enable HSTS with subdomains. Previous versions had false.
  24 +Rails.application.config.ssl_options = { hsts: { subdomains: true } }
... ...
test/dummy/config/initializers/session_store.rb 0 → 100644
  1 +++ a/test/dummy/config/initializers/session_store.rb
... ... @@ -0,0 +1,3 @@
  1 +# Be sure to restart your server when you modify this file.
  2 +
  3 +Rails.application.config.session_store :cookie_store, key: '_dummy_session'
... ...
test/dummy/config/initializers/wrap_parameters.rb 0 → 100644
  1 +++ a/test/dummy/config/initializers/wrap_parameters.rb
... ... @@ -0,0 +1,14 @@
  1 +# Be sure to restart your server when you modify this file.
  2 +
  3 +# This file contains settings for ActionController::ParamsWrapper which
  4 +# is enabled by default.
  5 +
  6 +# Enable parameter wrapping for JSON. You can disable this by setting :format to an empty array.
  7 +ActiveSupport.on_load(:action_controller) do
  8 + wrap_parameters format: [:json]
  9 +end
  10 +
  11 +# To enable root element in JSON for ActiveRecord objects.
  12 +# ActiveSupport.on_load(:active_record) do
  13 +# self.include_root_in_json = true
  14 +# end
... ...
test/dummy/config/locales/en.yml 0 → 100644
  1 +++ a/test/dummy/config/locales/en.yml
... ... @@ -0,0 +1,23 @@
  1 +# Files in the config/locales directory are used for internationalization
  2 +# and are automatically loaded by Rails. If you want to use locales other
  3 +# than English, add the necessary files in this directory.
  4 +#
  5 +# To use the locales, use `I18n.t`:
  6 +#
  7 +# I18n.t 'hello'
  8 +#
  9 +# In views, this is aliased to just `t`:
  10 +#
  11 +# <%= t('hello') %>
  12 +#
  13 +# To use a different locale, set it with `I18n.locale`:
  14 +#
  15 +# I18n.locale = :es
  16 +#
  17 +# This would use the information in config/locales/es.yml.
  18 +#
  19 +# To learn more, please read the Rails Internationalization guide
  20 +# available at http://guides.rubyonrails.org/i18n.html.
  21 +
  22 +en:
  23 + hello: "Hello world"
... ...
test/dummy/config/puma.rb 0 → 100644
  1 +++ a/test/dummy/config/puma.rb
... ... @@ -0,0 +1,47 @@
  1 +# Puma can serve each request in a thread from an internal thread pool.
  2 +# The `threads` method setting takes two numbers a minimum and maximum.
  3 +# Any libraries that use thread pools should be configured to match
  4 +# the maximum value specified for Puma. Default is set to 5 threads for minimum
  5 +# and maximum, this matches the default thread size of Active Record.
  6 +#
  7 +threads_count = ENV.fetch("RAILS_MAX_THREADS") { 5 }.to_i
  8 +threads threads_count, threads_count
  9 +
  10 +# Specifies the `port` that Puma will listen on to receive requests, default is 3000.
  11 +#
  12 +port ENV.fetch("PORT") { 3000 }
  13 +
  14 +# Specifies the `environment` that Puma will run in.
  15 +#
  16 +environment ENV.fetch("RAILS_ENV") { "development" }
  17 +
  18 +# Specifies the number of `workers` to boot in clustered mode.
  19 +# Workers are forked webserver processes. If using threads and workers together
  20 +# the concurrency of the application would be max `threads` * `workers`.
  21 +# Workers do not work on JRuby or Windows (both of which do not support
  22 +# processes).
  23 +#
  24 +# workers ENV.fetch("WEB_CONCURRENCY") { 2 }
  25 +
  26 +# Use the `preload_app!` method when specifying a `workers` number.
  27 +# This directive tells Puma to first boot the application and load code
  28 +# before forking the application. This takes advantage of Copy On Write
  29 +# process behavior so workers use less memory. If you use this option
  30 +# you need to make sure to reconnect any threads in the `on_worker_boot`
  31 +# block.
  32 +#
  33 +# preload_app!
  34 +
  35 +# The code in the `on_worker_boot` will be called if you are using
  36 +# clustered mode by specifying a number of `workers`. After each worker
  37 +# process is booted this block will be run, if you are using `preload_app!`
  38 +# option you will want to use this block to reconnect to any threads
  39 +# or connections that may have been created at application boot, Ruby
  40 +# cannot share connections between processes.
  41 +#
  42 +# on_worker_boot do
  43 +# ActiveRecord::Base.establish_connection if defined?(ActiveRecord)
  44 +# end
  45 +
  46 +# Allow puma to be restarted by `rails restart` command.
  47 +plugin :tmp_restart
... ...
test/dummy/config/routes.rb 0 → 100644
  1 +++ a/test/dummy/config/routes.rb
... ... @@ -0,0 +1,3 @@
  1 +Rails.application.routes.draw do
  2 + mount ScimRails::Engine => "/scim_rails"
  3 +end
... ...
test/dummy/config/secrets.yml 0 → 100644
  1 +++ a/test/dummy/config/secrets.yml
... ... @@ -0,0 +1,22 @@
  1 +# Be sure to restart your server when you modify this file.
  2 +
  3 +# Your secret key is used for verifying the integrity of signed cookies.
  4 +# If you change this key, all old signed cookies will become invalid!
  5 +
  6 +# Make sure the secret is at least 30 characters and all random,
  7 +# no regular words or you'll be exposed to dictionary attacks.
  8 +# You can use `rails secret` to generate a secure secret key.
  9 +
  10 +# Make sure the secrets in this file are kept private
  11 +# if you're sharing your code publicly.
  12 +
  13 +development:
  14 + secret_key_base: 57bd54316c4891fb7f568e3e3d7d1d358ad5c02b10ea6938705fc16a0ad3c459b97d93d88b9d29cdaa326404f3bcacdf1bb12b13bdd78778a0e4c7284180ad1d
  15 +
  16 +test:
  17 + secret_key_base: 5bd661937b4ded6f6077df28ec6256813e626ed73550ca006897e809e1dc70630e5d7de07d6199abbeb6aea397fc031313c0c44f13c43773e44904e8fd92fcc8
  18 +
  19 +# Do not keep production secrets in the repository,
  20 +# instead read values from the environment.
  21 +production:
  22 + secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>
... ...
test/dummy/config/spring.rb 0 → 100644
  1 +++ a/test/dummy/config/spring.rb
... ... @@ -0,0 +1,6 @@
  1 +%w(
  2 + .ruby-version
  3 + .rbenv-vars
  4 + tmp/restart.txt
  5 + tmp/caching-dev.txt
  6 +).each { |path| Spring.watch(path) }
... ...
test/dummy/lib/assets/.keep 0 → 100644
  1 +++ a/test/dummy/lib/assets/.keep
... ...
test/dummy/log/.keep 0 → 100644
  1 +++ a/test/dummy/log/.keep
... ...
test/dummy/public/404.html 0 → 100644
  1 +++ a/test/dummy/public/404.html
... ... @@ -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>
... ...
test/dummy/public/422.html 0 → 100644
  1 +++ a/test/dummy/public/422.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>
... ...
test/dummy/public/500.html 0 → 100644
  1 +++ a/test/dummy/public/500.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>
... ...
test/dummy/public/apple-touch-icon-precomposed.png 0 → 100644
  1 +++ a/test/dummy/public/apple-touch-icon-precomposed.png
... ...
test/dummy/public/apple-touch-icon.png 0 → 100644
  1 +++ a/test/dummy/public/apple-touch-icon.png
... ...
test/dummy/public/favicon.ico 0 → 100644
  1 +++ a/test/dummy/public/favicon.ico
... ...
test/integration/navigation_test.rb 0 → 100644
  1 +++ a/test/integration/navigation_test.rb
... ... @@ -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 +
... ...
test/scim_rails_test.rb 0 → 100644
  1 +++ a/test/scim_rails_test.rb
... ... @@ -0,0 +1,7 @@
  1 +require 'test_helper'
  2 +
  3 +class ScimRails::Test < ActiveSupport::TestCase
  4 + test "truth" do
  5 + assert_kind_of Module, ScimRails
  6 + end
  7 +end
... ...
test/test_helper.rb 0 → 100644
  1 +++ a/test/test_helper.rb
... ... @@ -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 +
  14 +# Load fixtures from the engine
  15 +if ActiveSupport::TestCase.respond_to?(:fixture_path=)
  16 + ActiveSupport::TestCase.fixture_path = File.expand_path("../fixtures", __FILE__)
  17 + ActionDispatch::IntegrationTest.fixture_path = ActiveSupport::TestCase.fixture_path
  18 + ActiveSupport::TestCase.file_fixture_path = ActiveSupport::TestCase.fixture_path + "/files"
  19 + ActiveSupport::TestCase.fixtures :all
  20 +end
... ...