Module: ConsoleUtils
- Extended by:
- ActiveSupport::Autoload
- Defined in:
- lib/console_utils.rb,
lib/console_utils/railtie.rb,
lib/console_utils/version.rb,
lib/console_utils/bench_utils.rb,
lib/console_utils/other_utils.rb,
lib/console_utils/request_utils.rb,
lib/console_utils/active_record_utils.rb
Overview
:nodoc:
Defined Under Namespace
Modules: ActiveRecordUtils, BenchUtils, OtherUtils, RequestUtils Classes: Railtie
Constant Summary collapse
- MODULES =
[ :ActiveRecordUtils, :RequestUtils, :BenchUtils, :OtherUtils ]
- JSON_FORMATTERS =
i(default jq)
- VERSION =
"0.1.3"
Class Method Summary collapse
- .config ⇒ Object
-
.configure {|config| ... } ⇒ Object
:method: self.configure.
-
.each_enabled_module ⇒ Object
Yields each enabled module with a given block.
- .enabled_modules ⇒ Object
-
.find_user(id, scope: nil) ⇒ Object
Finds
user_modelbyuser_primary_key. -
.setup_modules_to(context = nil) ⇒ Object
Setup enabled modules by extending given context.
-
.user_model ⇒ Object
(also: user_class)
Returns User’s class set in the
:user_class_name.
Instance Method Summary collapse
-
#auto_token ⇒ Object
:attr: Enable the auto-fetching of user’s auth token in requests (default:
true). -
#curl_bin ⇒ Object
:attr: Binary path to
curl(using in remote requests). -
#curl_silence ⇒ Object
:attr: Don’t print generated curl command with remote requests.
-
#default_uid ⇒ Object
:attr: ID of the user which will be used by default in requests (default:
1). -
#disabled_modules ⇒ Object
:attr: An array with disabled modules (default:
[]). -
#jq_command ⇒ Object
:attr: Command for
jqjson formatter (default:"jq . -C"). -
#json_formatter ⇒ Object
:attr: JSON formatter used in API request helpers (
:defaultor:jq). -
#logger ⇒ Object
:attr: Output logger (
Rails.loggerby default). -
#remote_endpoint ⇒ Object
:attr: Remote endpoint used in remote API request helpers (default:
"http://example.com"). -
#token_param ⇒ Object
:attr: A name of the request parameter used to authorize user by a token (default:
:token). -
#user_model_name ⇒ Object
:attr: A name of user’s model (default:
:User). -
#user_primary_key ⇒ Object
:attr: A primary key of user’s model (default:
:id). -
#user_token_column ⇒ Object
:attr: A column name with a user’s token.
Class Method Details
.config ⇒ Object
121 122 123 |
# File 'lib/console_utils.rb', line 121 def config self end |
.configure {|config| ... } ⇒ Object
:method: self.configure
127 128 129 |
# File 'lib/console_utils.rb', line 127 def configure yield(config) end |
.each_enabled_module ⇒ Object
Yields each enabled module with a given block
153 154 155 |
# File 'lib/console_utils.rb', line 153 def each_enabled_module enabled_modules.each { |mod| yield const_get(mod) } end |
.enabled_modules ⇒ Object
148 149 150 |
# File 'lib/console_utils.rb', line 148 def enabled_modules ConsoleUtils::MODULES - disabled_modules end |
.find_user(id, scope: nil) ⇒ Object
Finds user_model by user_primary_key. If the first argument is :any, gets a random user.
139 140 141 142 143 144 145 146 |
# File 'lib/console_utils.rb', line 139 def find_user(id, scope: nil) case id when :any (scope || user_model).anyone else (scope || user_model).where(user_primary_key => id).first! end end |
.setup_modules_to(context = nil) ⇒ Object
Setup enabled modules by extending given context
158 159 160 161 162 |
# File 'lib/console_utils.rb', line 158 def setup_modules_to(context = nil) context = yield() if block_given? puts "Console instance: #{context.inspect}" if ENV["CONSOLE_UTILS_DEBUG"] each_enabled_module { |mod| context.send(:extend, mod) } end |
.user_model ⇒ Object Also known as: user_class
Returns User’s class set in the :user_class_name
132 133 134 |
# File 'lib/console_utils.rb', line 132 def user_model Object.const_get(user_model_name) end |
Instance Method Details
#auto_token ⇒ Object
:attr: Enable the auto-fetching of user’s auth token in requests (default: true)
65 |
# File 'lib/console_utils.rb', line 65 mattr_accessor(:auto_token) { true } |
#curl_bin ⇒ Object
:attr: Binary path to curl (using in remote requests). (default: "curl")
101 |
# File 'lib/console_utils.rb', line 101 mattr_accessor(:curl_bin) { "curl" } |
#curl_silence ⇒ Object
:attr: Don’t print generated curl command with remote requests. (default: false)
106 |
# File 'lib/console_utils.rb', line 106 mattr_accessor(:curl_silence) { false } |
#default_uid ⇒ Object
:attr: ID of the user which will be used by default in requests (default: 1)
70 |
# File 'lib/console_utils.rb', line 70 mattr_accessor(:default_uid) { 1 } |
#disabled_modules ⇒ Object
:attr: An array with disabled modules (default: [])
60 |
# File 'lib/console_utils.rb', line 60 mattr_accessor(:disabled_modules) { [] } |
#jq_command ⇒ Object
:attr: Command for jq json formatter (default: "jq . -C")
97 |
# File 'lib/console_utils.rb', line 97 mattr_accessor(:jq_command) { "jq . -C" } |
#json_formatter ⇒ Object
:attr: JSON formatter used in API request helpers (:default or :jq)
93 |
# File 'lib/console_utils.rb', line 93 mattr_accessor(:json_formatter) { :default } |
#logger ⇒ Object
:attr: Output logger (Rails.logger by default)
115 |
# File 'lib/console_utils.rb', line 115 mattr_accessor :logger |
#remote_endpoint ⇒ Object
:attr: Remote endpoint used in remote API request helpers (default: "http://example.com")
111 |
# File 'lib/console_utils.rb', line 111 mattr_accessor(:remote_endpoint) { "http://example.com" } |
#token_param ⇒ Object
:attr: A name of the request parameter used to authorize user by a token (default: :token)
88 |
# File 'lib/console_utils.rb', line 88 mattr_accessor(:token_param) { :token } |
#user_model_name ⇒ Object
:attr: A name of user’s model (default: :User)
74 |
# File 'lib/console_utils.rb', line 74 mattr_accessor(:user_model_name) { :User } |
#user_primary_key ⇒ Object
:attr: A primary key of user’s model (default: :id)
78 |
# File 'lib/console_utils.rb', line 78 mattr_accessor(:user_primary_key) { :id } |
#user_token_column ⇒ Object
:attr: A column name with a user’s token. Using by request tools. (default: :auth_token)
83 |
# File 'lib/console_utils.rb', line 83 mattr_accessor(:user_token_column) { :auth_token } |