Skip to content

Instantly share code, notes, and snippets.

Mars Hall mars

Block or report user

Report or block mars

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@mars
mars / react-router-1.0.0-pass-router-in-props.js
Created Aug 27, 2015
Pass the `router` instance down to Route children; React 0.13.3, React Router 1.0.0beta-4, ES2015, ES6
View react-router-1.0.0-pass-router-in-props.js
import React from 'react';
// Top-level Route component receives the router in context and passes it onto each child's props
export default class AppView extends React.Component {
render() {
return (
<div className="container">
{
// Add `props.router` to each route component
React.Children.map(this.props.children, c => {
View keybase.md

Keybase proof

I hereby claim:

  • I am mars on github.
  • I am marsi (https://keybase.io/marsi) on keybase.
  • I have a public key whose fingerprint is DFC9 5BAD 42CF D15F 589A 9436 7F70 7FA1 F236 B857

To claim this, I am signing this object:

@mars
mars / capybara_reset_patch.rb
Created Aug 13, 2014
Capybara patch to avoid `@browser.navigate.to('about:blank')` which hangs sometimes.
View capybara_reset_patch.rb
# Monkey-patch on Capybara!!!
#
class Capybara::Selenium::Driver < Capybara::Driver::Base
# Patch to avoid `@browser.navigate.to('about:blank')` which hangs sometimes.
#
def reset!
# Use instance variable directly so we avoid starting the browser just to reset the session
if @browser
begin @browser.manage.delete_all_cookies
@mars
mars / karma-ci.config.js
Last active Aug 29, 2015
example Webpack configs: React runtime & Karma tests
View karma-ci.config.js
var webpackModule = require('./webpack.module.js');
var webpackResolve = require('./webpack.resolve.js');
var Webpack = require('webpack');
var RewirePlugin = require("rewire-webpack");
module.exports = function(config) {
config.set({
// frameworks to use
// available frameworks: https://npmjs.org/browse/keyword/karma-adapter
@mars
mars / wrap-promise.js
Last active Aug 29, 2015
wrap a Promise with Ruby-esque block behavior; ES6/ES2015
View wrap-promise.js
/*
Insert a Promise into a pre-defined Promise chain.
@param promiseBlock [Function] takes a Promise
parameter & returns the continuation of that parameter.
@return [Promise] the fullfilled Promise chain
*/
function wrapPromise(promiseBlock) {
if (typeof promiseBlock !== 'function') {
throw new Error('promiseBlock must be a Function');
@mars
mars / bulk_email.rb
Created Jul 25, 2012
Bulk email via gmail
View bulk_email.rb
require "rubygems"
# gem install ruby-gmail
require 'gmail'
# gather email list
addresses = %w{
email1@domain.com
email2@domain.com
@mars
mars / ember-data-global-ajax-params.js
Last active Dec 16, 2015
Add params to Ember Data's RESTAdapter AJAX requests.
View ember-data-global-ajax-params.js
App.accountId = 'asdf';
App.RESTAdapter = DS.RESTAdapter.extend({
// Scope all ajax calls.
ajax: function(url, type, hash) {
if (Ember.isEmpty(hash)) hash = {};
if (Ember.isEmpty(hash.data)) hash.data = {};
hash.data.account_id = App.accountId;
this._super(url, type, hash);
}
@mars
mars / gist:6086194
Last active Dec 20, 2015
DEPRECATED see comments: ember-testing: select an option (helper)
View gist:6086194
Ember.Test.registerHelper('selectFrom',
function(app, selector, value, description) {
// choose an option
find(selector).val(value);
// trigger the change
find(selector).change();
// assert the selected option
equal(find(selector+" option:selected").val(), value, description||"makes the selection");
// promise
return wait();
@mars
mars / foo-app-test.js
Last active Dec 20, 2015
ember-testing: multiple app compatibility
View foo-app-test.js
// give each tested app its own DOM element
document.write('<div class="ember-testing-container"><div id="foo-app-testing"></div></div>');
FooApp.rootElement = '#foo-app-testing';
// defer readiness
FooApp.setupForTesting();
module("Foo App", {
setup: function() {
FooApp.injectTestHelpers();
// last step, before each test begins, clears the container and advances readiness
View Netflix-Streaming-by-Type-of-Movie.txt
Action & Adventure based on a book from the 1960s (4082)
Action & Adventure based on a book from the 1970s (2410)
Action & Adventure based on a book from the 1980s (704)
Action & Adventure based on real life from the 1980s (1051)
Action & Adventure directed by Andrew V. McLaglen (2282)
Action & Adventure directed by Cirio H. Santiago (4323)
Action & Adventure directed by Clint Eastwood (4998)
Action & Adventure directed by Corey Yuen (291)
Action & Adventure directed by George Archainbaud (3183)
Action & Adventure directed by George Sherman (3198)
You can’t perform that action at this time.