Skip to content

Instantly share code, notes, and snippets.

View pyykkis's full-sized avatar

Jarno Keskikangas pyykkis

  • Subtle Insights Oy
  • Finland
View GitHub Profile
@pyykkis
pyykkis / capybara-select2.rb
Created July 1, 2013 13:46
Select2 helper for capybara-webkit
module Helpers
def select2(scope, opts)
scope.find('.select2-choice').click
if opts.has_key? :type_in
input = find '.select2-drop-active:not(.select2-offscreen) .select2-search .select2-input'
input.set opts[:type_in]
input.trigger('keyup-change')
end
@pyykkis
pyykkis / scalePhotos.coffee
Last active December 19, 2015 03:49
Run n async operations concurrently
Q = require 'q'
_ = require 'underscore'
photos = [1..100]
partition = (n, coll) ->
_.values(_.groupBy(coll, (x, i) -> Math.floor i/n))
scaleImage = (img, i) ->
Q.delay(200).then -> console.log "processed image #{i}"
@pyykkis
pyykkis / mockserver.coffee
Last active December 19, 2015 02:28
Simple mock server with node.js
express = require 'express'
path = require 'path'
http = require 'http'
logger = require 'winston'
app = express()
logger.setLevels logger.config.syslog.levels
logger.remove logger.transports.Console
logger.add logger.transports.Console,
@pyykkis
pyykkis / Jamesfile.js
Last active December 15, 2015 10:09
Test runner with James.js
var phantom = require('james-phantomjs'),
mocha = require('james-mocha'),
dotReporter = require('james-dot-reporter');
mocha(james.list('test/*Helper.js', 'test/*Spec.js'))
.transform(phantom)
.transform(dotReporter);
@pyykkis
pyykkis / bindthis
Created March 21, 2013 21:31
Browserify transformer to bind 'this' to module.exports.
through = require('through');
module.exports = function (file) {
var tr = through(null, function () {
this.queue('}).call(module.exports)'); this.queue(null) }); tr.pause();
tr.queue('(function(){'); process.nextTick(tr.resume.bind(tr)); return tr;
}
@pyykkis
pyykkis / StringStream.js
Created March 11, 2013 21:34
String -> Stream -> String
var assert = require('assert'),
StringStream = require('../index'),
data = "Hello World!",
src = new StringStream(data),
dest = new StringStream();
src.pipe(dest);
dest.on('finish', function() {
assert.equal(src.data, '');
@pyykkis
pyykkis / example.js
Created February 27, 2013 17:18
Append and prepend for transparency.js
/*
<div class="template">
<div class="todo"></div>
<div>
*/
data = [
@pyykkis
pyykkis / bar.js
Created February 25, 2013 20:47 — forked from anonymous/dist.js
exports.hello = function(name) {
console.log("Hello, " + name);
}
# Do something before the method
before = (decorator) -> (method) -> ->
decorator.apply this, arguments
method.apply this, arguments
# Do something after the method
after = (decorator) -> (method) -> ->
method.apply this, arguments
decorator.apply this, arguments
{
"name": "jee",
"version": "0.0.0",
"dependencies": {
"bowling": "git://github.com/pyykkis/bowling.git"
}
}