Skip to content

Instantly share code, notes, and snippets.

View andyfowler's full-sized avatar

Andy Fowler andyfowler

View GitHub Profile
@andyfowler
andyfowler / php-mocking.md
Last active August 29, 2015 13:56
Frustrating landscape of PHP mocking

Why are PHP's mocking libraries so weak?

Kludgy, disgusting syntax.

Seems to have the most momentum, but I don't like its DSL, which seems more complex than 95% of cases need. Bad docs: a 1,600-line README?

Keybase proof

I hereby claim:

  • I am andyfowler on github.
  • I am andyfowler (https://keybase.io/andyfowler) on keybase.
  • I have a public key whose fingerprint is C729 E43A BE22 52BA 67E8 08E5 D1E2 5574 B09F C6E9

To claim this, I am signing this object:

@andyfowler
andyfowler / gist:10068879
Created April 7, 2014 22:27
testing a libssl update in vagrant for heartbleed
vagrant@vagrant:~$ openssl version -a
OpenSSL 1.0.1 14 Mar 2012
built on: Wed Jan 8 20:45:51 UTC 2014
platform: debian-amd64
options: bn(64,64) rc4(16x,int) des(idx,cisc,16,int) blowfish(idx)
compiler: cc -fPIC -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DL_ENDIAN -DTERMIO -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security -D_FORTIFY_SOURCE=2 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wa,--noexecstack -Wall -DOPENSSL_NO_TLS1_2_CLIENT -DOPENSSL_MAX_TLS1_2_CIPHER_LENGTH=50 -DMD32_REG_T=int -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM
OPENSSLDIR: "/usr/lib/ssl"
vagrant@vagrant:~$ sudo apt-get update
$response = $aboutmeApi->get();
$response->getPage(); // returns `Aboutme_Page` created from API response JSON
// no API consumer needs to know about AboutMe's API structure, only your own implemented methods.
$page->getFirstName();
$page->getBio();
// in testing
$page = Aboutme_Page::createFromResponse($yourfixture);
@andyfowler
andyfowler / merge_post.feature
Created May 23, 2014 20:00
Nutshell REST API merge spec
Feature: Merging entities
Background:
Given a Nutshell with an account
@wip
Scenario: Basic JSON API compliance
When the client requests POST /accounts/1-accounts/merge with the body:
"""
{"accounts": ["336-accounts","337-accounts"] }

Now I'm Trapped Here

  • MacPorts
  • QuickSilver
  • TextMate
  • Xcode
// creates a ticket with a reference to this revision, file, line # and author
// by default, the ticket is assigned to the author who committed it
$temporaryCode = 'hack'; // @TODO Add official code when x module completed....
// optionally assign the ticket to somebody else
$temporaryCode = 'hack'; // @TODO (jsmith@nutshell.com) Figure out the best way to handle this
// looks for references to other tickets to add dependencies
$temporaryCode = 'hack'; // @TODO Can't fix this until #207 is resolved
#!/usr/bin/env ruby -wKU
def UBER_ip_route_match(command, regex)
command.split("\n").select { |l| l =~ regex }.first.to_s[/([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)/] || '0.0.0.0'
end
c = '10.128.0.0/24 dev eth1 proto kernel scope link src 10.128.0.48
127.0.0.0/8 dev lo scope link
default via 10.128.0.254 dev eth1'
# c = %x{/sbin/ip route list match #{ip}}
afowler@owlhouse en $ port installed
The following ports are currently installed:
apache2 @2.2.14_0+darwin+preforkmpm (active)
apr @1.3.9_0 (active)
apr-util @1.3.9_0 (active)
aquaterm @1.0.1_5 (active)
autoconf @2.65_0 (active)
autoconf213 @2.13_1 (active)
automake @1.11.1_0 (active)
bash-completion @1.1_2 (active)
(a poem my little brother posted on his facebook)
I long every day just to see you
Just to talk to you
you don't have to be there boyfriend or girlfriend but always being
there for somone to talk and to listen
Love is amazing
Love is forever
Love is just being a friend
Love is careing