Skip to content

Instantly share code, notes, and snippets.

Avatar

Darren Terhune darrenterhune

View GitHub Profile
View cops_or_classes.rb
#<RuboCop::Cop::Registry:0x00007fec7340f7b0
@cops_by_cop_name=
{"Migration/DepartmentName"=>[RuboCop::Cop::Migration::DepartmentName],
"Bundler/DuplicatedGem"=>[RuboCop::Cop::Bundler::DuplicatedGem],
"Bundler/GemComment"=>[RuboCop::Cop::Bundler::GemComment],
"Bundler/InsecureProtocolSource"=>[RuboCop::Cop::Bundler::InsecureProtocolSource],
"Bundler/OrderedGems"=>[RuboCop::Cop::Bundler::OrderedGems],
"Gemspec/DuplicatedAssignment"=>[RuboCop::Cop::Gemspec::DuplicatedAssignment],
"Gemspec/OrderedDependencies"=>[RuboCop::Cop::Gemspec::OrderedDependencies],
"Gemspec/RequiredRubyVersion"=>[RuboCop::Cop::Gemspec::RequiredRubyVersion],
@darrenterhune
darrenterhune / table_helpers.rb
Last active Jan 5, 2020
A rspec expectations helper that makes expecting things in html tables easier
View table_helpers.rb
# frozen_string_literal: true
module WithinTables
# Use to test the values of columns for certain row
#
# Add <tt>offset</tt> to start matching at a certain column
#
# %tr
# %td Hi
# %td Hello
View compare_less_vs_scss.rb
#!/usr/bin/env ruby
# frozen_string_literal: true
class String
def underscore
return self unless /[A-Z-]|::/.match?(self)
word = to_s.gsub("::", "/")
word.gsub!(/([A-Z\d]+)([A-Z][a-z])/, '\1_\2')
word.gsub!(/([a-z\d])([A-Z])/, '\1_\2')
word.tr!("-", "_")
@darrenterhune
darrenterhune / hooks_generator.rb
Created Mar 20, 2019
Hook into rails model generators to update a scope that requires changes each time a new model is added
View hooks_generator.rb
# config/environments/development.rb
config.generators do |generator|
generator.orm :hooks
end
# lib/generators/rails/hooks/hooks_generator.rb
require 'rails/generators/active_record/model/model_generator'
@darrenterhune
darrenterhune / quote_csv.rb
Created Oct 11, 2018
Add quotes to a csv file directly in the terminal
View quote_csv.rb
# Run this in terminal, then paste in csv into terminal window
# https://stackoverflow.com/questions/17157850/quotation-mark-into-csv-per-field-awk-sed/17158450#17158450
ruby -rcsv -ne 'puts CSV.generate_line(CSV.parse_line($_), :force_quotes=>true)'
@darrenterhune
darrenterhune / rails_install.md
Last active Jul 11, 2018
Installing rails without the initial gem install rails
View rails_install.md

Installing Rails w/o gem install

mkdir -p ~/Sites/myapp
cd ~/Sites/myapp
echo 2.4.2 > .ruby-version
rbenv install 2.4.2
bundler init
echo "source 'https://rubygems.org'" > Gemfile
echo "ruby '2.4.2'" >> Gemfile
@darrenterhune
darrenterhune / active_admin_export_worker.rb
Last active Jul 20, 2020
Simple activeadmin export full table csv using a sidekiq background worker
View active_admin_export_worker.rb
# app/workers/active_admin_export_worker.rb
class ActiveAdminExportWorker
include Sidekiq::Worker
sidekiq_options queue: 'high'
def perform(options = {})
model = options[:model_name].classify.constantize
path = "#{Rails.root.to_s}/tmp/#{filename(options[:name])}"
columns = model.send(:column_names)
View failure.rb
# frozen_string_literal: true
require 'rails_helper'
feature 'Updating Admin Clinics feature' do
let(:admin) { create(:admin) }
let!(:clinic) { create(:clinic) }
before do
login_as(admin, scope: :user)
View reset mysql root user password
# Found from https://coderwall.com/p/j9btlg/reset-the-mysql-5-7-root-password-in-ubuntu-16-04-lts
# Stop MySQL
sudo service mysql stop
# Make MySQL service directory.
sudo mkdir /var/run/mysqld
# Give MySQL user permission to write to the service directory.
sudo chown mysql: /var/run/mysqld
# Start MySQL manually, without permission checks or networking.
sudo mysqld_safe --skip-grant-tables --skip-networking &
@darrenterhune
darrenterhune / wordpress_wp_config.php
Last active Jan 27, 2018
Wordpress wp-config.php settings
View wordpress_wp_config.php
$table_prefix = 'wp_RANDOMUUID-HERE';
define('WP_AUTO_UPDATE_CORE', true);
define('WP_POST_REVISIONS', false);
define('FORCE_SSL_ADMIN', true);
You can’t perform that action at this time.