ここの所、数か月おきにjsのユニットテストってどうやるのが良いのか悩んでいる気がするので、一つ情報集約の為にメモ書きをしておきます。
何かちゃんと文章書いておけば、それに対する反応が集まって、オレサマハッピー的な展開を望んでいます。
単体テストというか、ユニットテストというか、そういうアレを書く為のフレームワークを探しています。
覚える事が少なくて強力なやつ。
機能テストというか、e2eテストいうか、そういうアレの事は別途考える必要がありますので、今回はスコープ外とします。
module.exports = function(grunt) { | |
var now = String(Date.now()); | |
var jsResult = "<%= dirs.js %>/target/" + now + ".js"; | |
var cssResult = "<%= dirs.css %>/target/" + now + ".css"; | |
var jsGzipped = jsResult + ".gz"; | |
var cssGzipped = cssResult + ".gz"; | |
var compressFiles = {}; | |
compressFiles[jsGzipped] = jsResult; |
31 Aug 2011
私は人々にGitを教えるためにあちこちを飛び回っているが、最近のほぼすべてのクラスやワークショップで git-flow についてどう思うかを尋ねられた。私はいつも、git-flowは素晴らしいと思うと答えている。何百万ものワークフローを持ったシステム(Git)を提供し、ドキュメントもあるし、よくテストされている。フレキシブルなワークフローは、実に容易なやり方で多くの開発者の役に立つ。標準的なものになりつつあり、開発者はプロジェクトや企業の間を移動しつつこの標準的なワークフローに馴染むことができる。
//author: Sun, Junyi (weibo.com/treapdb) | |
//usage: node --nouse-idle-notification --expose-gc --max-old-space-size=8192 memcached.js | |
var config ={ | |
port: 11211, | |
max_memory: 300 // default 100M bytes | |
} | |
var net = require('net'); | |
var LRU = function (max) { // this LRU implementaion is based on https://github.com/chriso/lru |
#!/bin/sh | |
# set IP address with Amazon-VPC ENI(Elastic Network Interface) address and other. | |
# get eth0/1 MAC addresses | |
MACADDR0=`cat /sys/class/net/eth0/address` | |
MACADDR1=`cat /sys/class/net/eth1/address` | |
# get eth0/1 IP addresses on ENI | |
IPADDR0=`/usr/bin/curl -s http://169.254.169.254/latest/meta-data/network/interfaces/macs/${MACADDR0}/local-ipv4s/`; | |
IPADDR1=`/usr/bin/curl -s http://169.254.169.254/latest/meta-data/network/interfaces/macs/${MACADDR1}/local-ipv4s/`; | |
# ifconfig on eth1 (ENI) | |
/sbin/ifconfig eth1 inet ${IPADDR1} netmask 255.255.255.0 2>&1 >> /tmp/seteth1.log |
.DS_Store |
// http://code.google.com/p/v8/wiki/JavaScriptStackTraceApi | |
function customPrepareStackTrace(error, structuredStackTrace) { | |
return structuredStackTrace[0].getLineNumber(); | |
}; | |
function getLineNumber() { | |
var original = Error.prepareStackTrace; | |
Error.prepareStackTrace = customPrepareStackTrace; | |
var error = {}; | |
Error.captureStackTrace(error, getLineNumber); |
var http = require( "http" ) | |
, url = require( "url" ) | |
, exec = require( "child_process" ).exec | |
, username = process.argv[ 2 ] | |
, seconds = +process.argv[ 3 ] || 300 | |
, friends | |
, events = {} | |
if ( !username ) { |