Skip to content

Instantly share code, notes, and snippets.

View mhenrixon's full-sized avatar
🐢
I may be slow to respond.

Mikael Henriksson mhenrixon

🐢
I may be slow to respond.
View GitHub Profile
@mhenrixon
mhenrixon / async_await_test.rb
Last active May 6, 2019 08:03
A simple test of async locking with redis blocking methods
require 'bundler/setup'
require 'async/await'
require 'async/redis'
require 'securerandom'
require 'pry'
class AsyncAwaitTest
include Async::Await
db.assets.ensureIndex({"tags.callname": 1, "tags.tags": 1}, {background: true})
// index [['tags.callname', 1, ['tags.tags', 1]], { background: true }
db.permalinks.ensureIndex({"linkable_uuid": 1, "_current": 1}, {background: true})
db.matches.ensureIndex({"id": 1, "_id": 1}, {background: true})
db.live_events.ensureIndex({"asset_id": 1, "asset_version": 1, "_id": 1}, {background: true})
db.mediafiles.ensureIndex({"match_id": 1, "filename": 1}, {background: true})
db.users.ensureIndex({"confirmation_token": 1}, {background: true})
db.assets.ensureIndex({"match_id": 1, "created_at": 1}, {background: true})
db.orders.ensureIndex({"customer_id": 1, "order_status": 1}, {background: true})
db.matches.ensureIndex({"sport_id": 1, "name": 1, "starts_at" -1 }, {background: true})
@mhenrixon
mhenrixon / syntax_highlighting.py
Created January 15, 2012 08:39 — forked from davelnewton/syntax_highlighting.py
Ruby on Rails syntax highlight switcher for Sublime Text 2
import sublime, sublime_plugin
import os
class DetectFileTypeCommand(sublime_plugin.EventListener):
""" Detects current file type if the file's extension isn't conclusive """
""" Modified for Ruby on Rails and Sublime Text 2 """
""" Original pastie here: http://pastie.org/private/kz8gtts0cjcvkec0d4quqa """
def on_load(self, view):
filename = view.file_name()
@mhenrixon
mhenrixon / facebook_registration.rb
Created July 15, 2018 14:03 — forked from nicalpi/facebook_registration.rb
Testing Omniauth with Devise, Rspec and Capybara
background do
set_omniauth()
click_link_or_button 'Sign up with Facebook'
end
@mhenrixon
mhenrixon / keybase.md
Created March 29, 2017 08:33
keybase.md

Keybase proof

I hereby claim:

  • I am mhenrixon on github.
  • I am mhenrixon (https://keybase.io/mhenrixon) on keybase.
  • I have a public key whose fingerprint is 8CC8 80A4 ED67 9027 D1FB 0EE7 48CE 83E6 A7B6 5689

To claim this, I am signing this object:

@mhenrixon
mhenrixon / docker-compose.yml
Created March 23, 2017 10:33 — forked from mdub/docker-compose.yml
How to share a /usr/local/bundle cache between Ruby build jobs
version: "2"
services:
dev:
image: ruby:2.3
volumes:
- .:/project
- ruby2.3-bundle-cache:/usr/local/bundle
working_dir: /project
# Author: Pieter Noordhuis
# Description: Simple demo to showcase Redis PubSub with EventMachine
#
# Update 7 Oct 2010:
# - This example does *not* appear to work with Chrome >=6.0. Apparently,
# the WebSocket protocol implementation in the cramp gem does not work
# well with Chrome's (newer) WebSocket implementation.
#
# Requirements:
# - rubygems: eventmachine, thin, cramp, sinatra, yajl-ruby
@mhenrixon
mhenrixon / .travis.yml
Created September 9, 2016 07:46
How to push coverage to code climate from travis-ci when running rspec from docker-compose
sudo: required
language: ruby
services:
- docker
script:
- docker-compose run -e TRAVIS=$TRAVIS -e TRAVIS_BRANCH=$TRAVIS_BRANCH -e TRAVIS_JOB_ID=$TRAVIS_JOB_ID -e TRAVIS_PULL_REQUEST=$TRAVIS_PULL_REQUEST rspec
- docker-compose run -e TRAVIS=$TRAVIS -e TRAVIS_BRANCH=$TRAVIS_BRANCH -e TRAVIS_JOB_ID=$TRAVIS_JOB_ID -e TRAVIS_PULL_REQUEST=$TRAVIS_PULL_REQUEST test_app
$snapins = Get-PSSnapin -Registered
$snapins | Add-PSSnapin
Get-Module -ListAvailable | Import-Module
Get-PSSnapin | Format-Table -autosize PSVersion, Name
Get-Module | Format-Table -autosize ModuleType, Name
function ff ([string] $glob) { get-childitem -recurse -include $glob }
@mhenrixon
mhenrixon / call_for_receive_message_chain.rb
Last active December 27, 2015 22:29
This is my case for why I want to stub a chain of messages. Even if you take a look at the refactored version that test could still contain a bug. What I want to test is that some external object. In the last alternative not only does the test code become ugly but the implementation does too. I only use this for rails associations to keep stuff …
# I usually end up with something like below in my code
def fetch_something
current_something.coll_association.find_by some: 123, other: 'sasd'
end
# I want to test that the finder gets called with the right arguments
it "finds cool_association using the right arguments" do
expect(current_something).to receive_message_chain('cool_association.find_by').
with(some: 123, other: 'sasd') { cool_association }
end