Skip to content

Instantly share code, notes, and snippets.

@JCassiere
JCassiere / dry_controller.rb
Created August 13, 2017 02:20
Refactored Controller
class UsersController < ApplicationController
before_action :set_user, except: [:index, :new, :create]
after_action :notify_channel, only: [:create, :update, :destroy]
def index
@users = User.all
end
def show
end
@JCassiere
JCassiere / one_on_one.rb
Last active August 2, 2017 20:12
Week 5 One-On-One
#Problem 1
directions = ["north", "east", "south", "west"]
#Problem 2
compass = {
n: "north",
e: "east",
s: "south",
w: "west"
}
@JCassiere
JCassiere / rakefile.rb
Last active July 16, 2017 22:38
Website Screenshot Grabber Using Resque
require "resque/tasks"
require "./screenshot_grabber.rb"
@JCassiere
JCassiere / bank_account.rb
Created July 14, 2017 23:03
Bank Account TDD
class BankAccount
@@default_minimum = 3.50
attr_reader :minimum_balance
def initialize(amount, account_holder)
@minimum_balance = @@default_minimum
if amount >= @@default_minimum
@balance = amount
else
raise ArgumentError
@JCassiere
JCassiere / url_parser.rb
Last active July 14, 2017 23:03
URL Parser TDD
class UrlParser
attr_reader :scheme, :domain, :port, :path, :query_string, :fragment_id
def initialize(url)
@url_remaining = url
@scheme = parse_url("://")
post_domain_char = @url_remaining[@url_remaining.index("/")+1]
if @url_remaining.include?(":")
@domain = parse_url(":")
@port = parse_url("/")
@JCassiere
JCassiere / website_screenshots.rb
Last active July 14, 2017 16:59
Website Screenshot Grabber
require 'httparty'
class SiteCopier
include HTTParty
base_uri 'api.page2images.com'
def initialize(sites, key)
@sites = sites
@api_key = key
@screenshots = get_screenshots
@JCassiere
JCassiere / scheduling_challenge.rb
Created July 13, 2017 23:48
Scheduling Challenge
require 'minitest/autorun'
class Scheduler
def initialize(time_array, meeting_length)
@time_array = time_array
@meeting_length = meeting_length
@free_time_hash = make_free_time_hash
end
@JCassiere
JCassiere / flight_checker.rb
Last active July 13, 2017 21:16
Direct Flight Checker
require_relative 'flight_planner'
def test_code(flight_planner_instance)
planner = flight_planner_instance
tests = [
[:can_i_fly?, ["MIA", "JFK"], true],
[:can_i_fly?, ["MIA", "ORD"], false],
[:can_i_fly?, ["MIA", "XXX"], false],
[:can_i_fly?, ["PHX", "AUX"], false],
[:can_i_fly?, ["FLL", "WPB"], true]
@JCassiere
JCassiere / email_sender.rb
Last active July 13, 2017 22:03
CSV Parser and Email Sender
require "csv"
class Mailer
def send_email(name, email_address)
if email_address.strip.end_with? "securedomain.net"
@attempts_to_secure = @attempts_to_secure ? @attempts_to_secure+1 : 1
if @attempts_to_secure < 2
return false
end
end
@JCassiere
JCassiere / level_1_max.rb
Last active July 13, 2017 18:45
Finding the max number in an array
def max(items)
max_num = items[0]
items.slice(1, items.length-1).each do |num|
if (num > max_num)
max_num = num
end
end
max_num
end