Upgrade to Pro — share decks privately, control downloads, hide ads and more …

fly & ava

842aaadff6e13fbf372c9b17b49b031c?s=47 Pine Mizune
December 08, 2015

fly & ava

Meguro.es #1 in Drecom の発表資料です。
http://meguroes.connpass.com/event/21510/

842aaadff6e13fbf372c9b17b49b031c?s=128

Pine Mizune

December 08, 2015
Tweet

More Decks by Pine Mizune

Other Decks in Programming

Transcript

  1. fly & ava Pine Mizune 8 Dec, 2015 / Meguro.es

    #1
  2. 自己紹介 o ID / HN: @pine613 o 好きな言語: JavaScript /

    Crystal o 仕事で書いてる: Perl / Swift / Kotlin o Mobile Factory, Inc o 最寄り: 五反田駅
  3. 目次 • fly とは ? • ava とは ? •

    ava + Promise • ava + Generator • ava + Async • ava + fly
  4. • ES6 ベースの次世代ビルドシステム • 今回は詳しく説明しません – Gotanda.js #1 の発表資料参照 fly

    とは ? 作者: bucaran
  5. • ES6/7 ベースのテストランナー • Promise, Generator, Async との相性 • Babel,

    co, power-assert のビルトインサポート ava とは ? 作者: sindresorhus
  6. ava でのテストの書き方 import test from ‘ava’ test(‘testFunc’, t => {

    t.is(testFunc(result), 10) })
  7. mocha + Callback var expect = require(‘chai’).expect; it(‘testFunc’, function (done)

    { testFunc(function (result) { expect(result).to.equal(10); done(); }); });
  8. ava + Callback import test from ‘ava’ test.cb(‘testFunc’, t =>

    { testFunc(result => { t.is(result, 10) t.end() }) })
  9. mocha + Promise var expect = require(‘chai’).expect; it(‘testFunc’, function (done)

    { testFunc().then(function (result) { expect(result).to.equal(10); done(); }); });
  10. ava + Promise import test from ‘ava’ test(‘testFunc’, t =>

    { return testFunc().then(result => { t.is(result, 10) }) }) Promise をそのまま返せる!
  11. ava + co import test from ‘ava’ test(‘testFunc’, t =>

    { return co(function *() { const result = yield testFunc() t.is(result, 10) }) })
  12. ava + Generator import test from ‘ava’ test(‘testFunc’, function *()

    { const result = yield testFunc() t.is(result, 10) }) Generator をそのまま返せる!
  13. ava + Async import test from ‘ava’ test(‘testFunc’, async t

    => { const result = await testFunc() t.is(result, 10) }) async / await 対応
  14. ava + fly export function* test() { this.source(‘./test/**/*.js’).ava() } $

    npm install fly fly-ava ava $ fly test flyfile.js
  15. 告知: Gotanda.js #2 開催決定!! ü Gotanda.js #2 〜JS新年会〜 ü 日時:

    2016 年 1 月 8 日 (金) ü 会場: 株式会社ガイアックス ü 内容: LT 祭!! (5min LT x 8) Ø 申し込みは Connpass から! http://gotandajs.connpass.com/event/22162/