by shigemk2

当面は技術的なことしか書かない

ERTでごにょごにょしようとしたけどしんどかった

Emacs Lispのテスト、依存性管理、CI - 備忘録

Emacs Lispでert.elを使ってユニットテスト

概要としては、適当なディレクトリを掘って必要なライブラリを配置し、 これまた適当なディレクトリを掘ってテストコードを書き、 適当にMakefileを書いてテスト実行って流れらしい。

TravisCIと連携したいけど、結構難しいという話を聞いた。

Travis CIでこけた

shigemk2/regexp-js · GitHub

Using worker: worker-linux-5-1.bb.travis-ci.org:travis-linux-13
git.1
0.05s$ git clone --depth=50 --branch=master git://github.com/shigemk2/regexp-js.git shigemk2/regexp-js
Cloning into 'shigemk2/regexp-js'...
remote: Counting objects: 172, done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 172 (delta 1), reused 0 (delta 0)
Receiving objects: 100% (172/172), 22.30 KiB | 0 bytes/s, done.
Resolving deltas: 100% (85/85), done.
Checking connectivity... done.
$ cd shigemk2/regexp-js
git.3
$ git checkout -qf ecd3d543a148ce52feda1a87cd8d34f9ca8cbbe9
0.51s$ nvm install 0.10
######################################################################## 100.0%
Now using node v0.10.31
0.36s0.01s$ node --version
v0.10.31
0.30s$ npm --version
1.4.23
before_install
1.58s$ npm install -g grunt-cli
/home/travis/.nvm/v0.10.31/bin/grunt -> /home/travis/.nvm/v0.10.31/lib/node_modules/grunt-cli/bin/grunt
grunt-cli@0.1.13 /home/travis/.nvm/v0.10.31/lib/node_modules/grunt-cli
├── resolve@0.3.1
├── nopt@1.0.10 (abbrev@1.0.5)
└── findup-sync@0.1.3 (lodash@2.4.1, glob@3.2.11)
0.52s$ npm install
npm ERR! install Couldn't read dependencies
npm ERR! Error: Invalid version: "1.0"
npm ERR!     at Object.module.exports.fixVersionField (/home/travis/.nvm/v0.10.31/lib/node_modules/npm/node_modules/read-package-json/node_modules/normalize-package-data/lib/fixer.js:183:13)
npm ERR!     at /home/travis/.nvm/v0.10.31/lib/node_modules/npm/node_modules/read-package-json/node_modules/normalize-package-data/lib/normalize.js:30:38
npm ERR!     at Array.forEach (native)
npm ERR!     at normalize (/home/travis/.nvm/v0.10.31/lib/node_modules/npm/node_modules/read-package-json/node_modules/normalize-package-data/lib/normalize.js:29:15)
npm ERR!     at final (/home/travis/.nvm/v0.10.31/lib/node_modules/npm/node_modules/read-package-json/read-json.js:342:33)
npm ERR!     at then (/home/travis/.nvm/v0.10.31/lib/node_modules/npm/node_modules/read-package-json/read-json.js:126:33)
npm ERR!     at /home/travis/.nvm/v0.10.31/lib/node_modules/npm/node_modules/read-package-json/read-json.js:266:40
npm ERR!     at evalmachine.<anonymous>:271:14
npm ERR!     at /home/travis/.nvm/v0.10.31/lib/node_modules/npm/node_modules/graceful-fs/graceful-fs.js:102:5
npm ERR!     at Object.oncomplete (evalmachine.<anonymous>:107:15)
npm ERR! If you need help, you may report this *entire* log,
npm ERR! including the npm and node versions, at:
npm ERR!     <http://github.com/npm/npm/issues>
npm ERR! System Linux 2.6.32-042stab090.5
npm ERR! command "/home/travis/.nvm/v0.10.31/bin/node" "/home/travis/.nvm/v0.10.31/bin/npm" "install"
npm ERR! cwd /home/travis/build/shigemk2/regexp-js
npm ERR! node -v v0.10.31
npm ERR! npm -v 1.4.23
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /home/travis/build/shigemk2/regexp-js/npm-debug.log
npm ERR! not ok code 0
The command "npm install" failed and exited with 1 during .
Your build has been stopped.

package.jsonにversionが書いてあって、それがあかんやつだったらしい。