Skip to content

Instantly share code, notes, and snippets.

View nunogoncalves's full-sized avatar

Nuno Gonçalves nunogoncalves

View GitHub Profile
@nunogoncalves
nunogoncalves / AdminEmailExpectation
Created July 7, 2014 07:38
Rspec test which is expecting an email to be sent to email
it 'sends email to admin with error response' do
VCR.use_cassette('external_service_response_cassette/invalid_requests', record: :new_episodes) do
Hash.any_instance.stub(:value_from_params).and_raise(ExceptionType, "Failed to find key in params")
params1 = 'AdminMailer'
params2 = 'errors'
params3 = 'Error message: There has been an error'
SendEmailWorker.should_receive(:perform_async).with(params1, params2, params3).exactly(1).times
@nunogoncalves
nunogoncalves / WeakClosures.playground
Last active August 29, 2015 14:26
Gist to avoid Strong Reference Cycles when using closures
//: Playground - noun: a place where people can play
import UIKit
class LoginView {
var loginSuccessCallback: ((Int)->Void)?
init() {
println("login: - hello")
@nunogoncalves
nunogoncalves / gist:f360c0faafaeea7c46b8
Created October 30, 2015 09:05 — forked from sonsongithub/gist:2868639
Parse Xcode project file, project.pbxproj, in Ruby.
json = JSON.parse(`plutil -convert json -o - "#{filename}"`)
@nunogoncalves
nunogoncalves / MultipleRequesters.swift
Last active December 31, 2015 22:37
Creating multiple requesters with default behaviour using protocol extensions
import Foundation
protocol Getter {
typealias Element
func getUrl() -> String
func getDataFrom(dictionary: NSDictionary) -> Element
func get(success success: Element -> (), failure: () -> ())
}
extension Getter { //Add default behaviour to Getter protocol. This behaviour depends on implementation of other protocol methods.
struct Languages {
func get(success success: [Language] -> (),
failure: NetworkStatus -> ()) {
let qos = Int(QOS_CLASS_USER_INTERACTIVE.rawValue)
dispatch_async(dispatch_get_global_queue(qos, 0)) {
let responseHandler = ResponseHandler()
responseHandler.failureCallback = { status in
struct Languages {
class Get: Getter {
func getUrl() -> String {
return "http://some_languages_website.com"
}
func getDataFrom(dictionary: NSDictionary) -> [Language] {
return extractLanguagesFrom(dictionary)
import Foundation
protocol Getter {
typealias Element
func getUrl() -> String
func getDataFrom(dictionary: NSDictionary) -> Element
func get(success success: Element -> (), failure: NetworkStatus -> ())
@nunogoncalves
nunogoncalves / HOWTO.md
Created March 20, 2016 11:49 — forked from tdantas/HOWTO.md
Too Many Connections Postgresql ( HomeBrew Installation)

HOWTO avoid 'too many connections'


Ask postgresql where is the configuration file

$ psql postgres
 psql (9.2.2)
   Type "help" for help.
protocol Authenticable {
var headers: HeadParams? {
get
}
func fillHeaders()
}
extension Authenticable {
var headers: HeadParams? {
protocol Requestable {
associatedtype Element
var httpMethod: HTTPMethod { get }
var headers: HeadParams? { get }
var bodyParams: BodyParams? { get }
var encoding: RequestEncoding { get }