Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
fly & ava
Search
Pine Mizune
December 08, 2015
Programming
3
650
fly & ava
Meguro.es #1 in Drecom の発表資料です。
http://meguroes.connpass.com/event/21510/
Pine Mizune
December 08, 2015
Tweet
Share
More Decks by Pine Mizune
See All by Pine Mizune
多言語対応と絵文字ジェネレーター / i18n of Emoji Generator
pine
0
820
C++ 製グラフィックライブラリ Skia の紹介 / Introduction to the graphics library Skia written by C++
pine
0
1.8k
asyncio + aiohttp で作るウェブサービス / How to develop a web service with asyncio and aiohttp
pine
0
670
Lerna による明示的疎結合アーキテクチャ
pine
1
640
CircleCI 2.0 x JavaScript
pine
3
550
Perl 卒業式
pine
0
340
Android Studio の気になる warnings を抑制する方法まとめ
pine
0
500
Emoji Generator meets Browser Extensions
pine
1
3k
近年の OSS 開発における CI 選択のベストプラクティス
pine
3
4.5k
Other Decks in Programming
See All in Programming
AI Agent 時代的開發者生存指南
eddie
4
2.1k
20251016_Rails News ~Rails 8.1の足音を聴く~
morimorihoge
3
740
Claude Agent SDK を使ってみよう
hyshu
0
1.4k
pnpm に provenance のダウングレード を検出する PR を出してみた
ryo_manba
1
160
デミカツ切り抜きで面倒くさいことはPythonにやらせよう
aokswork3
0
260
GC25 Recap: The Code You Reviewed is Not the Code You Built / #newt_gophercon_tour
mazrean
0
110
あなたとKaigi on Rails / Kaigi on Rails + You
shimoju
0
190
Vueのバリデーション、結局どれを選べばいい? ― 自作バリデーションの限界と、脱却までの道のり ― / Which Vue Validation Library Should We Really Use? The Limits of Self-Made Validation and How I Finally Moved On
neginasu
2
1.6k
なぜGoのジェネリクスはこの形なのか? - Featherweight Goが明かす設計の核心
qualiarts
0
260
Reactive Thinking with Signals and the Resource API
manfredsteyer
PRO
0
110
Migration to Signals, Resource API, and NgRx Signal Store
manfredsteyer
PRO
0
120
マンガアプリViewerの大画面対応を考える
kk__777
0
260
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
10
890
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.7k
Music & Morning Musume
bryan
46
6.9k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.2k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
620
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Product Roadmaps are Hard
iamctodd
PRO
55
11k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Transcript
fly & ava Pine Mizune 8 Dec, 2015 / Meguro.es
#1
自己紹介 o ID / HN: @pine613 o 好きな言語: JavaScript /
Crystal o 仕事で書いてる: Perl / Swift / Kotlin o Mobile Factory, Inc o 最寄り: 五反田駅
目次 • fly とは ? • ava とは ? •
ava + Promise • ava + Generator • ava + Async • ava + fly
• ES6 ベースの次世代ビルドシステム • 今回は詳しく説明しません – Gotanda.js #1 の発表資料参照 fly
とは ? 作者: bucaran
• ES6/7 ベースのテストランナー • Promise, Generator, Async との相性 • Babel,
co, power-assert のビルトインサポート ava とは ? 作者: sindresorhus
ava でのテストの書き方 import test from ‘ava’ test(‘testFunc’, t => {
t.is(testFunc(result), 10) })
mocha + Callback var expect = require(‘chai’).expect; it(‘testFunc’, function (done)
{ testFunc(function (result) { expect(result).to.equal(10); done(); }); });
ava + Callback import test from ‘ava’ test.cb(‘testFunc’, t =>
{ testFunc(result => { t.is(result, 10) t.end() }) })
mocha + Promise var expect = require(‘chai’).expect; it(‘testFunc’, function (done)
{ testFunc().then(function (result) { expect(result).to.equal(10); done(); }); });
ava + Promise import test from ‘ava’ test(‘testFunc’, t =>
{ return testFunc().then(result => { t.is(result, 10) }) }) Promise をそのまま返せる!
ava + co import test from ‘ava’ test(‘testFunc’, t =>
{ return co(function *() { const result = yield testFunc() t.is(result, 10) }) })
ava + Generator import test from ‘ava’ test(‘testFunc’, function *()
{ const result = yield testFunc() t.is(result, 10) }) Generator をそのまま返せる!
ava + Async import test from ‘ava’ test(‘testFunc’, async t
=> { const result = await testFunc() t.is(result, 10) }) async / await 対応
ava + fly export function* test() { this.source(‘./test/**/*.js’).ava() } $
npm install fly fly-ava ava $ fly test flyfile.js
告知: Gotanda.js #2 開催決定!! ü Gotanda.js #2 〜JS新年会〜 ü 日時:
2016 年 1 月 8 日 (金) ü 会場: 株式会社ガイアックス ü 内容: LT 祭!! (5min LT x 8) Ø 申し込みは Connpass から! http://gotandajs.connpass.com/event/22162/