Skip to content

Instantly share code, notes, and snippets.

@dskrepps
Created March 15, 2014 18:25
Show Gist options
  • Save dskrepps/9571698 to your computer and use it in GitHub Desktop.
Save dskrepps/9571698 to your computer and use it in GitHub Desktop.
requirebin sketch
var _ = require('underscore');
var fixture1 = ['hello', 'world'];
var fixture2 = ['world', 'hello'];
var fixture3 = ['hello', 'mars'];
var tests = [
function(a1, a2){
return _.every(a1, function(v){
return _.contains(a2, v);
});
},
function(a1, a2){
return _(a1).difference(a2).length === 0;
},
function(a1, a2){
return _.intersection(a1,a2).length == a1.length
},
];
for(test in tests){
console.log('Test %s %s', test,
tests[test](fixture1, fixture2) && !tests[test](fixture1, fixture3)
);
}
require=function e(n,r,t){function u(a,o){if(!r[a]){if(!n[a]){var c="function"==typeof require&&require;if(!o&&c)return c(a,!0);if(i)return i(a,!0);throw Error("Cannot find module '"+a+"'")}var l=r[a]={exports:{}};n[a][0].call(l.exports,function(r){var t=n[a][1][r];return u(t?t:r)},l,l.exports,e,n,r,t)}return r[a].exports}for(var i="function"==typeof require&&require,a=0;t.length>a;a++)u(t[a]);return u}({ZKusGn:[function(n,r,t){(function(){var n=this,e=n._,u={},i=Array.prototype,a=Object.prototype,o=Function.prototype,c=i.push,l=i.slice,f=i.concat,s=a.toString,p=a.hasOwnProperty,h=i.forEach,v=i.map,g=i.reduce,d=i.reduceRight,y=i.filter,m=i.every,x=i.some,_=i.indexOf,b=i.lastIndexOf,w=Array.isArray,j=Object.keys,A=o.bind,O=function(n){return n instanceof O?n:this instanceof O?(this._wrapped=n,void 0):new O(n)};t!==void 0?(r!==void 0&&r.exports&&(t=r.exports=O),t._=O):n._=O,O.VERSION="1.6.0";var k=O.each=O.forEach=function(n,r,t){if(null==n)return n;if(h&&n.forEach===h)n.forEach(r,t);else if(n.length===+n.length){for(var e=0,i=n.length;i>e;e++)if(r.call(t,n[e],e,n)===u)return}else for(var a=O.keys(n),e=0,i=a.length;i>e;e++)if(r.call(t,n[a[e]],a[e],n)===u)return;return n};O.map=O.collect=function(n,r,t){var e=[];return null==n?e:v&&n.map===v?n.map(r,t):(k(n,function(n,u,i){e.push(r.call(t,n,u,i))}),e)};var E="Reduce of empty array with no initial value";O.reduce=O.foldl=O.inject=function(n,r,t,e){var u=arguments.length>2;if(null==n&&(n=[]),g&&n.reduce===g)return e&&(r=O.bind(r,e)),u?n.reduce(r,t):n.reduce(r);if(k(n,function(n,i,a){u?t=r.call(e,t,n,i,a):(t=n,u=!0)}),!u)throw new TypeError(E);return t},O.reduceRight=O.foldr=function(n,r,t,e){var u=arguments.length>2;if(null==n&&(n=[]),d&&n.reduceRight===d)return e&&(r=O.bind(r,e)),u?n.reduceRight(r,t):n.reduceRight(r);var i=n.length;if(i!==+i){var a=O.keys(n);i=a.length}if(k(n,function(o,c,l){c=a?a[--i]:--i,u?t=r.call(e,t,n[c],c,l):(t=n[c],u=!0)}),!u)throw new TypeError(E);return t},O.find=O.detect=function(n,r,t){var e;return F(n,function(n,u,i){return r.call(t,n,u,i)?(e=n,!0):void 0}),e},O.filter=O.select=function(n,r,t){var e=[];return null==n?e:y&&n.filter===y?n.filter(r,t):(k(n,function(n,u,i){r.call(t,n,u,i)&&e.push(n)}),e)},O.reject=function(n,r,t){return O.filter(n,function(n,e,u){return!r.call(t,n,e,u)},t)},O.every=O.all=function(n,r,t){r||(r=O.identity);var e=!0;return null==n?e:m&&n.every===m?n.every(r,t):(k(n,function(n,i,a){return(e=e&&r.call(t,n,i,a))?void 0:u}),!!e)};var F=O.some=O.any=function(n,r,t){r||(r=O.identity);var e=!1;return null==n?e:x&&n.some===x?n.some(r,t):(k(n,function(n,i,a){return e||(e=r.call(t,n,i,a))?u:void 0}),!!e)};O.contains=O.include=function(n,r){return null==n?!1:_&&n.indexOf===_?-1!=n.indexOf(r):F(n,function(n){return n===r})},O.invoke=function(n,r){var t=l.call(arguments,2),e=O.isFunction(r);return O.map(n,function(n){return(e?r:n[r]).apply(n,t)})},O.pluck=function(n,r){return O.map(n,O.property(r))},O.where=function(n,r){return O.filter(n,O.matches(r))},O.findWhere=function(n,r){return O.find(n,O.matches(r))},O.max=function(n,r,t){if(!r&&O.isArray(n)&&n[0]===+n[0]&&65535>n.length)return Math.max.apply(Math,n);var e=-1/0,u=-1/0;return k(n,function(n,i,a){var o=r?r.call(t,n,i,a):n;o>u&&(e=n,u=o)}),e},O.min=function(n,r,t){if(!r&&O.isArray(n)&&n[0]===+n[0]&&65535>n.length)return Math.min.apply(Math,n);var e=1/0,u=1/0;return k(n,function(n,i,a){var o=r?r.call(t,n,i,a):n;u>o&&(e=n,u=o)}),e},O.shuffle=function(n){var r,t=0,e=[];return k(n,function(n){r=O.random(t++),e[t-1]=e[r],e[r]=n}),e},O.sample=function(n,r,t){return null==r||t?(n.length!==+n.length&&(n=O.values(n)),n[O.random(n.length-1)]):O.shuffle(n).slice(0,Math.max(0,r))};var q=function(n){return null==n?O.identity:O.isFunction(n)?n:O.property(n)};O.sortBy=function(n,r,t){return r=q(r),O.pluck(O.map(n,function(n,e,u){return{value:n,index:e,criteria:r.call(t,n,e,u)}}).sort(function(n,r){var t=n.criteria,e=r.criteria;if(t!==e){if(t>e||void 0===t)return 1;if(e>t||void 0===e)return-1}return n.index-r.index}),"value")};var M=function(n){return function(r,t,e){var u={};return t=q(t),k(r,function(i,a){var o=t.call(e,i,a,r);n(u,o,i)}),u}};O.groupBy=M(function(n,r,t){O.has(n,r)?n[r].push(t):n[r]=[t]}),O.indexBy=M(function(n,r,t){n[r]=t}),O.countBy=M(function(n,r){O.has(n,r)?n[r]++:n[r]=1}),O.sortedIndex=function(n,r,t,e){t=q(t);for(var u=t.call(e,r),i=0,a=n.length;a>i;){var o=i+a>>>1;u>t.call(e,n[o])?i=o+1:a=o}return i},O.toArray=function(n){return n?O.isArray(n)?l.call(n):n.length===+n.length?O.map(n,O.identity):O.values(n):[]},O.size=function(n){return null==n?0:n.length===+n.length?n.length:O.keys(n).length},O.first=O.head=O.take=function(n,r,t){return null==n?void 0:null==r||t?n[0]:0>r?[]:l.call(n,0,r)},O.initial=function(n,r,t){return l.call(n,0,n.length-(null==r||t?1:r))},O.last=function(n,r,t){return null==n?void 0:null==r||t?n[n.length-1]:l.call(n,Math.max(n.length-r,0))},O.rest=O.tail=O.drop=function(n,r,t){return l.call(n,null==r||t?1:r)},O.compact=function(n){return O.filter(n,O.identity)};var R=function(n,r,t){return r&&O.every(n,O.isArray)?f.apply(t,n):(k(n,function(n){O.isArray(n)||O.isArguments(n)?r?c.apply(t,n):R(n,r,t):t.push(n)}),t)};O.flatten=function(n,r){return R(n,r,[])},O.without=function(n){return O.difference(n,l.call(arguments,1))},O.partition=function(n,r){var t=[],e=[];return k(n,function(n){(r(n)?t:e).push(n)}),[t,e]},O.uniq=O.unique=function(n,r,t,e){O.isFunction(r)&&(e=t,t=r,r=!1);var u=t?O.map(n,t,e):n,i=[],a=[];return k(u,function(t,e){(r?e&&a[a.length-1]===t:O.contains(a,t))||(a.push(t),i.push(n[e]))}),i},O.union=function(){return O.uniq(O.flatten(arguments,!0))},O.intersection=function(n){var r=l.call(arguments,1);return O.filter(O.uniq(n),function(n){return O.every(r,function(r){return O.contains(r,n)})})},O.difference=function(n){var r=f.apply(i,l.call(arguments,1));return O.filter(n,function(n){return!O.contains(r,n)})},O.zip=function(){for(var n=O.max(O.pluck(arguments,"length").concat(0)),r=Array(n),t=0;n>t;t++)r[t]=O.pluck(arguments,""+t);return r},O.object=function(n,r){if(null==n)return{};for(var t={},e=0,u=n.length;u>e;e++)r?t[n[e]]=r[e]:t[n[e][0]]=n[e][1];return t},O.indexOf=function(n,r,t){if(null==n)return-1;var e=0,u=n.length;if(t){if("number"!=typeof t)return e=O.sortedIndex(n,r),n[e]===r?e:-1;e=0>t?Math.max(0,u+t):t}if(_&&n.indexOf===_)return n.indexOf(r,t);for(;u>e;e++)if(n[e]===r)return e;return-1},O.lastIndexOf=function(n,r,t){if(null==n)return-1;var e=null!=t;if(b&&n.lastIndexOf===b)return e?n.lastIndexOf(r,t):n.lastIndexOf(r);for(var u=e?t:n.length;u--;)if(n[u]===r)return u;return-1},O.range=function(n,r,t){1>=arguments.length&&(r=n||0,n=0),t=arguments[2]||1;for(var e=Math.max(Math.ceil((r-n)/t),0),u=0,i=Array(e);e>u;)i[u++]=n,n+=t;return i};var T=function(){};O.bind=function(n,r){var t,e;if(A&&n.bind===A)return A.apply(n,l.call(arguments,1));if(!O.isFunction(n))throw new TypeError;return t=l.call(arguments,2),e=function(){if(!(this instanceof e))return n.apply(r,t.concat(l.call(arguments)));T.prototype=n.prototype;var u=new T;T.prototype=null;var i=n.apply(u,t.concat(l.call(arguments)));return Object(i)===i?i:u}},O.partial=function(n){var r=l.call(arguments,1);return function(){for(var t=0,e=r.slice(),u=0,i=e.length;i>u;u++)e[u]===O&&(e[u]=arguments[t++]);for(;arguments.length>t;)e.push(arguments[t++]);return n.apply(this,e)}},O.bindAll=function(n){var r=l.call(arguments,1);if(0===r.length)throw Error("bindAll must be passed function names");return k(r,function(r){n[r]=O.bind(n[r],n)}),n},O.memoize=function(n,r){var t={};return r||(r=O.identity),function(){var e=r.apply(this,arguments);return O.has(t,e)?t[e]:t[e]=n.apply(this,arguments)}},O.delay=function(n,r){var t=l.call(arguments,2);return setTimeout(function(){return n.apply(null,t)},r)},O.defer=function(n){return O.delay.apply(O,[n,1].concat(l.call(arguments,1)))},O.throttle=function(n,r,t){var e,u,i,a=null,o=0;t||(t={});var c=function(){o=t.leading===!1?0:O.now(),a=null,i=n.apply(e,u),e=u=null};return function(){var l=O.now();o||t.leading!==!1||(o=l);var f=r-(l-o);return e=this,u=arguments,0>=f?(clearTimeout(a),a=null,o=l,i=n.apply(e,u),e=u=null):a||t.trailing===!1||(a=setTimeout(c,f)),i}},O.debounce=function(n,r,t){var e,u,i,a,o,c=function(){var l=O.now()-a;r>l?e=setTimeout(c,r-l):(e=null,t||(o=n.apply(i,u),i=u=null))};return function(){i=this,u=arguments,a=O.now();var l=t&&!e;return e||(e=setTimeout(c,r)),l&&(o=n.apply(i,u),i=u=null),o}},O.once=function(n){var r,t=!1;return function(){return t?r:(t=!0,r=n.apply(this,arguments),n=null,r)}},O.wrap=function(n,r){return O.partial(r,n)},O.compose=function(){var n=arguments;return function(){for(var r=arguments,t=n.length-1;t>=0;t--)r=[n[t].apply(this,r)];return r[0]}},O.after=function(n,r){return function(){return 1>--n?r.apply(this,arguments):void 0}},O.keys=function(n){if(!O.isObject(n))return[];if(j)return j(n);var r=[];for(var t in n)O.has(n,t)&&r.push(t);return r},O.values=function(n){for(var r=O.keys(n),t=r.length,e=Array(t),u=0;t>u;u++)e[u]=n[r[u]];return e},O.pairs=function(n){for(var r=O.keys(n),t=r.length,e=Array(t),u=0;t>u;u++)e[u]=[r[u],n[r[u]]];return e},O.invert=function(n){for(var r={},t=O.keys(n),e=0,u=t.length;u>e;e++)r[n[t[e]]]=t[e];return r},O.functions=O.methods=function(n){var r=[];for(var t in n)O.isFunction(n[t])&&r.push(t);return r.sort()},O.extend=function(n){return k(l.call(arguments,1),function(r){if(r)for(var t in r)n[t]=r[t]}),n},O.pick=function(n){var r={},t=f.apply(i,l.call(arguments,1));return k(t,function(t){t in n&&(r[t]=n[t])}),r},O.omit=function(n){var r={},t=f.apply(i,l.call(arguments,1));for(var e in n)O.contains(t,e)||(r[e]=n[e]);return r},O.defaults=function(n){return k(l.call(arguments,1),function(r){if(r)for(var t in r)void 0===n[t]&&(n[t]=r[t])}),n},O.clone=function(n){return O.isObject(n)?O.isArray(n)?n.slice():O.extend({},n):n},O.tap=function(n,r){return r(n),n};var S=function(n,r,t,e){if(n===r)return 0!==n||1/n==1/r;if(null==n||null==r)return n===r;n instanceof O&&(n=n._wrapped),r instanceof O&&(r=r._wrapped);var u=s.call(n);if(u!=s.call(r))return!1;switch(u){case"[object String]":return n==r+"";case"[object Number]":return n!=+n?r!=+r:0==n?1/n==1/r:n==+r;case"[object Date]":case"[object Boolean]":return+n==+r;case"[object RegExp]":return n.source==r.source&&n.global==r.global&&n.multiline==r.multiline&&n.ignoreCase==r.ignoreCase}if("object"!=typeof n||"object"!=typeof r)return!1;for(var i=t.length;i--;)if(t[i]==n)return e[i]==r;var a=n.constructor,o=r.constructor;if(a!==o&&!(O.isFunction(a)&&a instanceof a&&O.isFunction(o)&&o instanceof o)&&"constructor"in n&&"constructor"in r)return!1;t.push(n),e.push(r);var c=0,l=!0;if("[object Array]"==u){if(c=n.length,l=c==r.length)for(;c--&&(l=S(n[c],r[c],t,e)););}else{for(var f in n)if(O.has(n,f)&&(c++,!(l=O.has(r,f)&&S(n[f],r[f],t,e))))break;if(l){for(f in r)if(O.has(r,f)&&!c--)break;l=!c}}return t.pop(),e.pop(),l};O.isEqual=function(n,r){return S(n,r,[],[])},O.isEmpty=function(n){if(null==n)return!0;if(O.isArray(n)||O.isString(n))return 0===n.length;for(var r in n)if(O.has(n,r))return!1;return!0},O.isElement=function(n){return!(!n||1!==n.nodeType)},O.isArray=w||function(n){return"[object Array]"==s.call(n)},O.isObject=function(n){return n===Object(n)},k(["Arguments","Function","String","Number","Date","RegExp"],function(n){O["is"+n]=function(r){return s.call(r)=="[object "+n+"]"}}),O.isArguments(arguments)||(O.isArguments=function(n){return!(!n||!O.has(n,"callee"))}),O.isFunction=function(n){return"function"==typeof n},O.isFinite=function(n){return isFinite(n)&&!isNaN(parseFloat(n))},O.isNaN=function(n){return O.isNumber(n)&&n!=+n},O.isBoolean=function(n){return n===!0||n===!1||"[object Boolean]"==s.call(n)},O.isNull=function(n){return null===n},O.isUndefined=function(n){return void 0===n},O.has=function(n,r){return p.call(n,r)},O.noConflict=function(){return n._=e,this},O.identity=function(n){return n},O.constant=function(n){return function(){return n}},O.property=function(n){return function(r){return r[n]}},O.matches=function(n){return function(r){if(r===n)return!0;for(var t in n)if(n[t]!==r[t])return!1;return!0}},O.times=function(n,r,t){for(var e=Array(Math.max(0,n)),u=0;n>u;u++)e[u]=r.call(t,u);return e},O.random=function(n,r){return null==r&&(r=n,n=0),n+Math.floor(Math.random()*(r-n+1))},O.now=Date.now||function(){return(new Date).getTime()};var I={escape:{"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;"}};I.unescape=O.invert(I.escape);var N={escape:RegExp("["+O.keys(I.escape).join("")+"]","g"),unescape:RegExp("("+O.keys(I.unescape).join("|")+")","g")};O.each(["escape","unescape"],function(n){O[n]=function(r){return null==r?"":(""+r).replace(N[n],function(r){return I[n][r]})}}),O.result=function(n,r){if(null==n)return void 0;var t=n[r];return O.isFunction(t)?t.call(n):t},O.mixin=function(n){k(O.functions(n),function(r){var t=O[r]=n[r];O.prototype[r]=function(){var n=[this._wrapped];return c.apply(n,arguments),G.call(this,t.apply(O,n))}})};var B=0;O.uniqueId=function(n){var r=++B+"";return n?n+r:r},O.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var C=/(.)^/,D={"'":"'","\\":"\\","\r":"r","\n":"n"," ":"t","\u2028":"u2028","\u2029":"u2029"},z=/\\|'|\r|\n|\t|\u2028|\u2029/g;O.template=function(n,r,t){var e;t=O.defaults({},t,O.templateSettings);var u=RegExp([(t.escape||C).source,(t.interpolate||C).source,(t.evaluate||C).source].join("|")+"|$","g"),i=0,a="__p+='";n.replace(u,function(r,t,e,u,o){return a+=n.slice(i,o).replace(z,function(n){return"\\"+D[n]}),t&&(a+="'+\n((__t=("+t+"))==null?'':_.escape(__t))+\n'"),e&&(a+="'+\n((__t=("+e+"))==null?'':__t)+\n'"),u&&(a+="';\n"+u+"\n__p+='"),i=o+r.length,r}),a+="';\n",t.variable||(a="with(obj||{}){\n"+a+"}\n"),a="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+a+"return __p;\n";try{e=Function(t.variable||"obj","_",a)}catch(o){throw o.source=a,o}if(r)return e(r,O);var c=function(n){return e.call(this,n,O)};return c.source="function("+(t.variable||"obj")+"){\n"+a+"}",c},O.chain=function(n){return O(n).chain()};var G=function(n){return this._chain?O(n).chain():n};O.mixin(O),k(["pop","push","reverse","shift","sort","splice","unshift"],function(n){var r=i[n];O.prototype[n]=function(){var t=this._wrapped;return r.apply(t,arguments),"shift"!=n&&"splice"!=n||0!==t.length||delete t[0],G.call(this,t)}}),k(["concat","join","slice"],function(n){var r=i[n];O.prototype[n]=function(){return G.call(this,r.apply(this._wrapped,arguments))}}),O.extend(O.prototype,{chain:function(){return this._chain=!0,this},value:function(){return this._wrapped}}),"function"==typeof define&&define.amd&&define("underscore",[],function(){return O})}).call(this)},{}],underscore:[function(n,r){r.exports=n("ZKusGn")},{}]},{},[]);var _=require("underscore"),fixture1=["hello","world"],fixture2=["world","hello"],fixture3=["hello","mars"],tests=[function(n,r){return _.every(n,function(n){return _.contains(r,n)})},function(n,r){return 0===_(n).difference(r).length},function(n,r){return _.intersection(n,r).length==n.length}];for(test in tests)console.log("Test %s %s",test,tests[test](fixture1,fixture2)&&!tests[test](fixture1,fixture3));
{
"name": "requirebin-sketch",
"version": "1.0.0",
"dependencies": {
"underscore": "1.6.0"
}
}
<style type='text/css'>html, body { margin: 0; padding: 0; border: 0; }
body, html { height: 100%; width: 100%; }</style>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment