config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect' # for NGINX
# Allow to specify public IP of reverse proxy if it's needed
- config.action_dispatch.trusted_proxies = ENV['TRUSTED_PROXY_IP'].split.map { |item| IPAddr.new(item) } unless ENV['TRUSTED_PROXY_IP'].blank?
+ config.action_dispatch.trusted_proxies = ENV['TRUSTED_PROXY_IP'].split.map { |item| IPAddr.new(item) } if ENV['TRUSTED_PROXY_IP'].present?
# Use the lowest log level to ensure availability of diagnostic information
# when problems arise.
raise "No proxy host" unless proxy.host
host = proxy.host
- host = host[1...-1] if host[0] == '[' #for IPv6 address
+ host = host[1...-1] if host[0] == '[' # for IPv6 address
config.x.http_client_proxy[:proxy] = { proxy_address: host, proxy_port: proxy.port, proxy_username: proxy.user, proxy_password: proxy.password }.compact
end
end
Devise.setup do |config|
- # Devise omniauth strategies
+ # Devise omniauth strategies
options = {}
options[:redirect_at_sign_in] = ENV['OAUTH_REDIRECT_AT_SIGN_IN'] == 'true'
require 'open-uri'
module OpenURI
- def OpenURI.redirectable?(uri1, uri2) # :nodoc:
+ def self.redirectable?(uri1, uri2) # :nodoc:
uri1.scheme.downcase == uri2.scheme.downcase ||
(/\A(?:http|https|ftp)\z/i =~ uri1.scheme && /\A(?:http|https|ftp)\z/i =~ uri2.scheme)
end
# (blocklist & throttles are skipped)
Rack::Attack.safelist('allow from localhost') do |req|
# Requests are allowed if the return value is truthy
- '127.0.0.1' == req.ip || '::1' == req.ip
+ req.ip == '127.0.0.1' || req.ip == '::1'
end
throttle('throttle_authenticated_api', limit: 300, period: 5.minutes) do |req|
config.redis = redis_params
end
-Sidekiq::Logging.logger.level = ::Logger::const_get(ENV.fetch('RAILS_LOG_LEVEL', 'info').upcase.to_s)
+Sidekiq::Logging.logger.level = ::Logger.const_get(ENV.fetch('RAILS_LOG_LEVEL', 'info').upcase.to_s)
threads_count = ENV.fetch('MAX_THREADS') { 5 }.to_i
threads threads_count, threads_count
-if ENV['SOCKET'] then
+if ENV['SOCKET']
bind 'unix://' + ENV['SOCKET']
else
port ENV.fetch('PORT') { 3000 }
add_column :oauth_applications, :owner_type, :string, null: true
add_index :oauth_applications, [:owner_id, :owner_type]
end
-end
\ No newline at end of file
+end
end
def down
- remove_index :media_attachments, :shortcode
- remove_column :media_attachments, :shortcode
+ remove_index :media_attachments, :shortcode
+ remove_column :media_attachments, :shortcode
end
end
end
it 'returns http success with media' do
- get :index, params: { account_id: account.id , media: true }
+ get :index, params: { account_id: account.id, media: true }
statuses = assigns(:statuses).to_a
expect(statuses.size).to eq 1
def index
send_export_file
end
+
def export_data
@export.account.username
end
context 'success (passed scopes as a String)' do
def call_create
post :create, params: {
- doorkeeper_application: {
- name: 'My New App',
- redirect_uri: 'urn:ietf:wg:oauth:2.0:oob',
- website: 'http://google.com',
- scopes: 'read write follow'
- }
- }
+ doorkeeper_application: {
+ name: 'My New App',
+ redirect_uri: 'urn:ietf:wg:oauth:2.0:oob',
+ website: 'http://google.com',
+ scopes: 'read write follow'
+ }
+ }
response
end
context 'success (passed scopes as an Array)' do
def call_create
post :create, params: {
- doorkeeper_application: {
- name: 'My New App',
- redirect_uri: 'urn:ietf:wg:oauth:2.0:oob',
- website: 'http://google.com',
- scopes: [ 'read', 'write', 'follow' ]
- }
- }
+ doorkeeper_application: {
+ name: 'My New App',
+ redirect_uri: 'urn:ietf:wg:oauth:2.0:oob',
+ website: 'http://google.com',
+ scopes: [ 'read', 'write', 'follow' ]
+ }
+ }
response
end
context 'failure' do
before do
post :create, params: {
- doorkeeper_application: {
- name: '',
- redirect_uri: '',
- website: '',
- scopes: []
- }
- }
+ doorkeeper_application: {
+ name: '',
+ redirect_uri: '',
+ website: '',
+ scopes: []
+ }
+ }
end
it 'returns http success' do
def call_update
patch :update, params: {
- id: app.id,
- doorkeeper_application: opts
- }
+ id: app.id,
+ doorkeeper_application: opts
+ }
response
end
context 'failure' do
before do
patch :update, params: {
- id: app.id,
- doorkeeper_application: {
- name: '',
- redirect_uri: '',
- website: '',
- scopes: []
- }
- }
+ id: app.id,
+ doorkeeper_application: {
+ name: '',
+ redirect_uri: '',
+ website: '',
+ scopes: []
+ }
+ }
end
it 'returns http success' do
subject { Fabricate(:account) }
- context 'when the status is a reblog of another status'do
+ context 'when the status is a reblog of another status' do
let(:original_reblog) do
author = Fabricate(:account, username: 'original_reblogger')
Fabricate(:status, reblog: original_status, account: author)
it_behaves_like 'Settings-extended' do
def create!
- User.create!(account: Fabricate(:account), email: 'foo@mastodon.space', password: 'abcd1234' )
+ User.create!(account: Fabricate(:account), email: 'foo@mastodon.space', password: 'abcd1234')
end
def fabricate
assign(:stream_entry, reply.stream_entry)
assign(:account, alice)
assign(:type, reply.stream_entry.activity_type.downcase)
- assign(:ancestors, reply.stream_entry.activity.ancestors(1, bob) )
+ assign(:ancestors, reply.stream_entry.activity.ancestors(1, bob))
assign(:descendant_threads, [{ statuses: reply.stream_entry.activity.descendants(1) }])
render