rabbit-slide-kou-rubykaigi-2015 2015.12.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 356df97952dd608c83d5a999159f4f656c4e9da7
4
+ data.tar.gz: c3135eb80cf0c8b00b41a2bb2a833a0cbf6c5cc1
5
+ SHA512:
6
+ metadata.gz: 64d47530e48352df4b183023475ce5c5a49ba7f49abd4762637a183fa508733863dfa3493396ee94bdcce76f9fef9c52ab5f6abedd7d8a9264e2e364ef1038fd
7
+ data.tar.gz: 119887b10f2c0b6e15feea8cc81ec656a1cc4662d8eec754924152cdd4032b9baab2a7059fd95a27c0012354faed653cf5d7d5e588b0e752ad279189ae4f2169
data/.rabbit ADDED
@@ -0,0 +1 @@
1
+ the-history-of-testing-framework-in-ruby.rab
data/README.rd ADDED
@@ -0,0 +1,48 @@
1
+ = The history of testing framework in Ruby
2
+
3
+ This talk describes about the history of testing framework in Ruby.
4
+
5
+ Ruby 2.2 bundles two testing frameworks. They are minitest and test-unit. Do you know why two testing frameworks are bundled? Do you know that test-unit was bundled and then removed from Ruby distribution? If you can't answer these questions and you're interested in testing framework, this talk will help you.
6
+
7
+ This talk describes about the history of bundled testing framework in Ruby and some major testing frameworks for Ruby in chronological order.
8
+
9
+ == License
10
+
11
+ === Slide
12
+
13
+ CC BY-SA 4.0
14
+
15
+ Use the followings for notation of the author:
16
+
17
+ * Kouhei Sutou
18
+
19
+ === Images
20
+
21
+ ==== ClearCode Inc. logo
22
+
23
+ CC BY-SA 4.0
24
+
25
+ Author: ClearCode Inc.
26
+
27
+ It is used in page header and some pages in the slide.
28
+
29
+ == For author
30
+
31
+ === Show
32
+
33
+ rake
34
+
35
+ === Publish
36
+
37
+ rake publish
38
+
39
+ == For viewers
40
+
41
+ === Install
42
+
43
+ gem install rabbit-slide-kou-rubykaigi-2015
44
+
45
+ === Show
46
+
47
+ rabbit rabbit-slide-kou-rubykaigi-2015.gem
48
+
data/Rakefile ADDED
@@ -0,0 +1,17 @@
1
+ require "rabbit/task/slide"
2
+
3
+ # Edit ./config.yaml to customize meta data
4
+
5
+ spec = nil
6
+ Rabbit::Task::Slide.new do |task|
7
+ spec = task.spec
8
+ spec.files += Dir.glob("images/*.*")
9
+ # spec.files -= Dir.glob("private/**/*.*")
10
+ spec.add_runtime_dependency("rabbit-theme-clear-code", ">= 1.0.5")
11
+ end
12
+
13
+ desc "Tag #{spec.version}"
14
+ task :tag do
15
+ sh("git", "tag", "-a", spec.version.to_s, "-m", "Publish #{spec.version}")
16
+ sh("git", "push", "--tags")
17
+ end
data/config.yaml ADDED
@@ -0,0 +1,23 @@
1
+ ---
2
+ id: rubykaigi-2015
3
+ base_name: the-history-of-testing-framework-in-ruby
4
+ tags:
5
+ - rabbit
6
+ - ruby
7
+ - testing-framework
8
+ presentation_date: 2015-12-12
9
+ version: 2015.12.12.0
10
+ licenses:
11
+ - CC BY-SA 4.0
12
+ slideshare_id:
13
+ speaker_deck_id:
14
+ ustream_id:
15
+ vimeo_id:
16
+ youtube_id:
17
+ author:
18
+ markup_language: :rd
19
+ name: Kouhei Sutou
20
+ email: kou@clear-code.com
21
+ rubygems_user: kou
22
+ slideshare_user: kou
23
+ speaker_deck_user: kou
@@ -0,0 +1,496 @@
1
+ = The history of\n testing framework\n in Ruby
2
+
3
+ : author
4
+ Kouhei Sutou
5
+ : institution
6
+ ClearCode Inc.
7
+ : content-source
8
+ RubyKaigi 2015
9
+ : date
10
+ 2015-12-12
11
+ : allotted-time
12
+ 35m
13
+ : theme
14
+ .
15
+
16
+ = Silver sponsor
17
+
18
+ # image
19
+ # src = images/clear-code-is-a-silver-sponsor.png
20
+ # relative_height = 100
21
+
22
+ == slide property
23
+
24
+ : enable-title-on-image
25
+ false
26
+
27
+ = Goal\n(('note:目標'))
28
+
29
+ (('tag:center'))
30
+ (('tag:large'))
31
+ You know about\n
32
+ (({/\Atest.+unit\z/i}))
33
+
34
+ (('tag:center'))
35
+ (('note:(({/\\Atest.+unit\\z/i}))を知ること'))
36
+
37
+ = Test\n(('note:テスト'))
38
+
39
+ (('tag:center'))
40
+ Which Rubies do include\n
41
+ (({/\Atest.+unit\z/i}))?\n
42
+ (('note:(({/\Atest.+unit\z/i}))を含んでいるRubyはどれでしょう?'))
43
+
44
+ # RT
45
+ delimiter = [|]
46
+
47
+ (('1.4')) | (('1.6')) | (('1.8'))
48
+ (('1.9.1')) | (('1.9.2')) | (('1.9.3'))
49
+ (('2.0')) | (('2.1')) | (('2.2'))
50
+ (('2.3')) | |
51
+
52
+ = Answer\n(('note:答え'))
53
+
54
+ (('tag:center'))
55
+ Which Rubies do include\n
56
+ (({/\Atest.+unit\z/i}))?\n
57
+ (('note:(({/\Atest.+unit\z/i}))を含んでいるRubyはどれでしょう?'))
58
+
59
+ # RT
60
+ delimiter = [|]
61
+
62
+ (('1.4')) | (('1.6')) | ((*1.8*))
63
+ ((*1.9.1*)) | ((*1.9.2*)) | ((*1.9.3*))
64
+ ((*2.0*)) | ((*2.1*)) | ((*2.2*))
65
+ ((*2.3*)) | |
66
+
67
+ = History\n(('note:歴史'))
68
+
69
+ = Characters\n(('note:登場人物'))
70
+
71
+ # RT
72
+
73
+ testsupp, RubyUnit
74
+ Lapidary,
75
+ Test::Unit, test/unit
76
+ test-unit, miniunit
77
+ minitest, RSpec
78
+
79
+ = Ruby 1.3 times\n(('note:Ruby 1.3の時代'))
80
+
81
+ * 1998-1999
82
+ * The first testing framework for Ruby was released\n
83
+ (('note:最初のRuby用のテスティングフレームワークがリリース'))
84
+ * testsupp
85
+
86
+ = testsupp
87
+
88
+ * 1999-4-11: [ruby-talk:00634]\n
89
+ ANN: testsupp.rb 0.1
90
+ * Perl's (({Test})) like API\n
91
+ (('note:PerlのTestモジュールのようなAPI'))
92
+ * Perl's (({Test})) exists since 1998\n
93
+ (('note:PerlのTestモジュールは1998からある'))
94
+
95
+ = testsupp: API
96
+
97
+ # coderay ruby
98
+ require "testsupp"
99
+ include TestSupp
100
+
101
+ start_tests
102
+ ok "Hello" == "Hello"
103
+ end_tests
104
+
105
+ = Ruby 1.4 times\n(('note:Ruby 1.4の時代'))
106
+
107
+ * 1999-2000
108
+ * The first xUnit testing framework for Ruby was released\n
109
+ (('note:最初のRuby用のxUnit系テスティングフレームワークが'))\n
110
+ (('note:リリース'))
111
+ * RubyUnit
112
+
113
+ = RubyUnit
114
+
115
+ * Since 1999-11-20 at least\n
116
+ (('note:少なくとも1999年11月20日には存在していた'))
117
+ * [ruby-list:18594]\n
118
+ (('note:"RubyUnit のページは当分更新されないと思うです."'))
119
+ * The first xUnit testing framework for Ruby\n
120
+ (('note:最初のRuby用のxUnit系テスティングフレームワーク'))
121
+
122
+ = RubyUnit: API
123
+
124
+ # coderay ruby
125
+ require "runit/testcase"
126
+ class Test < RUNIT::TestCase
127
+ def test_add
128
+ assert_equal(3, 1 + 2)
129
+ end
130
+ end
131
+
132
+ = RubyUnit: Impression\n(('note:感想'))
133
+
134
+ Ruby-ish\n
135
+ (('note:Rubyっぽい'))
136
+
137
+ = RubyUnit: FYI\n(('note:参考情報'))
138
+
139
+ * Test generator exists\n
140
+ (('note:テストジェネレーターがある'))
141
+ * Test exec command exists\n
142
+ (('note:テスト実行コマンドがある'))
143
+ * (('wait'))
144
+ (('note:rubyunit gem exists since 2014-10-12'))\n
145
+ (('note:rubyunitというgemが存在する'))
146
+ * (('note:Not related product'))\n
147
+ (('note:関係のないプロダクト'))
148
+
149
+ = Ruby 1.6 times: 1\n(('note:Ruby 1.6の時代:1'))
150
+
151
+ * 2000-2002
152
+ * The second xUnit testing framework for Ruby was released\n
153
+ (('note:2つ目のRuby用のxUnit系テスティングフレームワークが'))\n
154
+ (('note:リリース'))
155
+ * Lapidary
156
+
157
+ = Lapidary
158
+
159
+ * The first release was 2001-03-20\n
160
+ (('note:最初のリリースは2001年3月20日'))
161
+ * The second xUnit testing framework for Ruby\n
162
+ (('note:2つ目のRuby用のxUnit系テスティングフレームワーク'))
163
+ * Maybe\n
164
+ (('note:たぶん'))
165
+
166
+ = Lapidary: API
167
+
168
+ # coderay ruby
169
+ require "Lapidary/TestCase"
170
+ class TC_Adder < Lapidary::TestCase
171
+ def testAdd
172
+ assertEqual(3, 1 + 2)
173
+ end
174
+ end
175
+
176
+ = Lapidary: Impression\n(('note:感想'))
177
+
178
+ Not Ruby-ish\n
179
+ (('note:Rubyっぽくない'))
180
+
181
+ = Lapidary: FYI\n(('note:参考情報'))
182
+
183
+ * Has GUI test runner\n
184
+ (('note:GUIのテスト実行機能アリ'))
185
+
186
+ = Ruby 1.6 times: 2\n(('note:Ruby 1.6の時代:2'))
187
+
188
+ * Start trying to bundle a testing framework to Ruby\n
189
+ (('note:テスティングフレームワークをRubyにバンドルする'))\n
190
+ (('note:試みを開始'))
191
+ * RubyUnit + Lapidary = Test::Unit
192
+
193
+ = Test::Unit
194
+
195
+ * Since 2002-02:\n
196
+ [ruby-talk:34744]
197
+ * The first (({\A/test.+unit\z/}))\n
198
+ (('note:最初の(({/\\Atest.+unit\\z/i}))'))
199
+ * The author is the author of Lapidary\n
200
+ (('note:Lapidaryの作者が作者'))
201
+
202
+ = Test::Unit: API
203
+
204
+ # coderay ruby
205
+ require "test/unit"
206
+ class TC_Adder < Test::Unit::TestCase
207
+ def test_add
208
+ assert_equal(3, 1 + 2)
209
+ end
210
+ end
211
+
212
+ = Test::Unit: Impression\n(('note:感想'))
213
+
214
+ Ruby-ish\n
215
+ (('note:Rubyっぽい'))
216
+
217
+ = Test::Unit: FYI 1\n(('note:参考情報1'))
218
+
219
+ * API is based on RubyUnit\n
220
+ (('note:APIはRubyUnitのよう'))
221
+ * Has RubyUnit compatible API\n
222
+ (('note:RubyUnit互換APIアリ'))
223
+ * Impl. is based on Lapidary\n
224
+ (('note:実装はLapidaryベース'))
225
+ * Has GUI test runner\n
226
+ (('note:GUIのテスト実行機能アリ'))
227
+
228
+ = Wrap up: Before Ruby 1.8\n(('note:Ruby 1.8の前までのまとめ'))
229
+
230
+ * testsupp: Perl like API
231
+ * RubyUnit: Rubyish xUnit
232
+ * Lapidary: Not Rubyish xUnit
233
+ * Test::Unit:
234
+ * RubyUnit API + Lapidary Impl.
235
+
236
+ = Ruby 1.8 times: 1\n(('note:Ruby 1.8の時代:1'))
237
+
238
+ * 2003-2013
239
+ * Ruby bundles a testing framework\n
240
+ (('note:Rubyがテスティングフレームワークをバンドルした'))
241
+ * Test::Unit aka test/unit\n
242
+ (('note:バンドルされたのはTest::Unit'))\n
243
+ (('note:test/unitとも呼ばれる'))
244
+
245
+ = FYI: Why test/unit?\n(('note:参考情報:なぜtest/unitと呼ぶか'))
246
+
247
+ # coderay ruby
248
+ require "test/unit"
249
+
250
+ = Test::Unit in Ruby 1.8\n(('note:Ruby 1.8バンドル後のTest::Unit'))
251
+
252
+ * No active development\n
253
+ (('note:開発は停滞'))
254
+ * Maintainer is changed\n
255
+ (('note:メンテナー交代'))
256
+ * The author of minitest\n
257
+ (('note:後のminitestの作者'))
258
+
259
+ = Test::Unit:\nnew maintainer\n(('note:新しいメンテナー'))
260
+
261
+ * New maintainer said:\n
262
+ (('note:新メンテナー曰く'))
263
+ * Can't maintain Test::Unit because it's too complex\n
264
+ (('note:Test::Unitは複雑すぎてメンテナンスできない'))
265
+
266
+ = Ruby 1.8 times: 2\n(('note:Ruby 1.8の時代:2'))
267
+
268
+ RSpec was born\n
269
+ (('note:RSpec誕生'))
270
+
271
+ = RSpec
272
+
273
+ * Since 2005-08
274
+ * Tool for Behavior Driven Development\n
275
+ (('note:振る舞い駆動開発用のツール'))
276
+ * Active development\n
277
+ (('note:開発は活発'))
278
+
279
+ = RSpec 0.1.0: API
280
+
281
+ # coderay ruby
282
+ # 2005-08
283
+ require "spec"
284
+ class SpecAdd < Spec::Context
285
+ def add
286
+ (1 + 2).should_equal 3
287
+ end
288
+ end
289
+
290
+ = RSpec: 1.0.0: API
291
+
292
+ # coderay ruby
293
+ # 2007-05
294
+ require "spec"
295
+ describe "Add" do
296
+ it "should support positive + positive" do
297
+ (1 + 2).should == 3
298
+ end
299
+ end
300
+
301
+ = RSpec 1.0.0: Impression\n(('note:感想'))
302
+
303
+ Engl-ish\n
304
+ (('note:英語っぽい'))
305
+
306
+ = RSpec: FYI\n(('note:参考情報'))
307
+
308
+ * Test exec command exists\n
309
+ (('note:テスト実行コマンドがある'))
310
+ * RubyUnit like\n
311
+ (('note:RubyUnitみたい'))
312
+ * More features (('note:than Test::Unit'))\n
313
+ (('note:Test::Unitより機能が多い'))
314
+ * Mock, Not implemented, ...\n
315
+ (('note:モックや未実装など'))
316
+
317
+ = Wrap up: Ruby 1.8 times\n(('note:Ruby 1.8時代のまとめ'))
318
+
319
+ * Ruby starts bundling Test::Unit (('note:((({/\\Atest.+unit\\z/i})))'))\n
320
+ (('note:RubyがTest::Unitのバンドルを始めた'))
321
+ * But Test::Unit was died...\n
322
+ (('note:バンドル後、Test::Unitは死んだ。。。'))
323
+ * RSpec was born and active\n
324
+ (('note:RSpecが生まれ、活発だった'))
325
+
326
+ = Ruby 1.9 times\n(('note:Ruby 1.9の時代'))
327
+
328
+ * 2009-2014
329
+ * Ruby drops Test::Unit\n
330
+ (('note:RubyがTest::Unitを捨てた'))
331
+ * Because Test::Unit is too complex for new maintainer\n
332
+ (('note:新メンテナーにはTest::Unitは複雑すぎるから'))
333
+
334
+ = Test::Unit → test-unit
335
+
336
+ * Released as test-unit gem\n
337
+ (('note:test-unit gemとしてリリース'))
338
+ * Still (({/\Atest.+unit\z/i}))\n
339
+ (('note:名前変更後も(({/\Atest.+unit\z/i}))'))
340
+ * (('note:test-unit 1.2.3 == Test::Unit in Ruby 1.8'))
341
+ * Maintainer is changed\n
342
+ (('note:メンテナー交代'))
343
+ * Me\n
344
+ (('note:私'))
345
+
346
+ = test-unit
347
+
348
+ * Since 2008-03
349
+ * Active development\n
350
+ (('note:開発は活発'))
351
+ * High backward compatibility\n
352
+ (('note:高い後方互換性'))
353
+ * Exception: Inheritance, Mixin\n
354
+ (('note:例外:継承時・Mixin時の挙動'))
355
+
356
+ = minitest
357
+
358
+ * Since 2008-10
359
+ * Active development\n
360
+ (('note:開発は活発'))
361
+ * The author is the new maintainer of Test::Unit\n
362
+ (('note:作者はTest::Unitの新メンテナー'))
363
+
364
+ = minitest and Test::Unit
365
+
366
+ * Mini, simple, clean and fast\n
367
+ (('note:小さくてシンプルでキレイで速い'))
368
+ * The author said:\n
369
+ (('note:作者曰く'))
370
+ * 100% Test::Unit compatible\n
371
+ (('note:Test::Unitと100%互換'))
372
+
373
+ = test/unit in Ruby 1.9
374
+
375
+ * Not Test::Unit (('note:but (({/\\Atest.+unit\\z/i}))'))\n
376
+ (('note:Test::Unitではないが(({/\\Atest.+unit\\z/i}))ではある'))
377
+ * Provide Test::Unit API\n
378
+ (('note:Test::Unit互換APIを提供'))
379
+ * Wrapper of minitest\n
380
+ (('note:minitestのラッパー'))
381
+ * Ruby developers develop it\n
382
+ not minitest author\n
383
+ (('note:minitestの作者ではなくRuby開発者が開発'))
384
+
385
+ = Wrap up: Ruby 1.9 times\n(('note:Ruby 1.9時代のまとめ'))
386
+
387
+ * Ruby drops Test::Unit\n
388
+ (('note:RubyがTest::Unitを捨てた'))
389
+ * (('note:Test::Unit → test-unit gem'))
390
+ * Ruby bundles minitest\n
391
+ (('note:Rubyはminitestをバンドルした'))
392
+ * Ruby creates test/unit\n
393
+ (('note:(test/unit provides Test::Unit API)'))\n
394
+ (('note:RubyはTest::Unit APIを提供する(({test/unit}))を新しく作った'))
395
+
396
+ = Ruby 2.0 times\n(('note:Ruby 2.0の時代'))
397
+
398
+ * 2013-
399
+ * No highly important things\n
400
+ (('note:特筆すべきことはない'))
401
+ * test-unit, minitest and RSpec were actively developed\n
402
+ (('note:test-unitもminitestもRSpecも活発に開発が進んでいた'))
403
+
404
+ = Ruby 2.1 times: 1\n(('note:Ruby 2.1の時代:1'))
405
+
406
+ * 2013-
407
+ * minitest 5 introduced incompatible change\n
408
+ (('note:minitest 5で非互換の変更が入った'))
409
+
410
+ = minitest 5
411
+
412
+ * test/unit maintainer said:\n
413
+ (('note:test/unitメンテナー曰く'))
414
+ * Can't maintain test/unit with minitest 5\n
415
+ (('note:minitest 5向けのtest/unitはメンテナンスできない'))
416
+ * test/unit for minitest was dropped\n
417
+ (('note:minitestのラッパーとしてのtest/unitを捨てた'))
418
+
419
+ = Is no test/unit problem?\n(('note:test/unitがないことは問題なのか?'))
420
+
421
+ * Ruby uses test/unit for Ruby's test\n
422
+ (('note:RubyはRubyのテストにtest/unitを使っている'))
423
+ * No test/unit means existing tests can't be worked\n
424
+ (('note:test/unitがなくなると既存のテストが動かない'))
425
+
426
+ = Solution idea: 1\n(('note:解決案:1'))
427
+
428
+ * Keep bundling and using minitest 4\n
429
+ (('note:minitest 4のバンドルを継続し、使い続ける'))
430
+ * Users will be confused because the latest Ruby doesn't bundle the latest minitest\n
431
+ (('note:最新のRubyに最新のminitestがバンドルされていないとユーザーは混乱しそう'))
432
+
433
+ = Solution idea: 2\n(('note:解決案:2'))
434
+
435
+ * Bundle the latest minitest\n
436
+ (('note:最新のminitestをバンドルする'))
437
+ * Ruby uses minitest 4 and test/unit for its tests\n
438
+ (('note:Rubyのテストにはminitest 4とtest/unitを使う'))
439
+
440
+ (('wait'))
441
+ (('tag:center'))
442
+ Accepted!
443
+
444
+ = Note for idea 2\n(('note:案2の補足'))
445
+
446
+ * Need to care existing Test::Unit API users\n
447
+ (('note:既存のTest::Unit APIユーザーをケアする必要がある'))
448
+ * Backward compat. is important!\n
449
+ (('note:後方互換性は重要!'))
450
+ * Bundle test-unit gem too for Test::Unit API\n
451
+ (('note:Test::Unit互換APIのためにtest-unit gemもバンドル'))
452
+
453
+ = Wrap up: Ruby 2.1 times\n(('note:Ruby 2.1時代のまとめ'))
454
+
455
+ * Ruby developers decided maintain minitest 4 and test/unit for Ruby's tests\n
456
+ (('note:Ruby開発者はRubyのテスト用にminitest 4とtest/unitをメンテナンスすることを決めた'))
457
+
458
+ = Ruby 2.2 times: 1\n(('note:Ruby 2.2の時代:1'))
459
+
460
+ * 2014-
461
+ * Update bundled minitest to 5\n
462
+ (('note:バンドルしているminitestを5に更新'))
463
+ * Move minitest 4 and test/unit to test/\n
464
+ (('note:minitest 4とtest/unitはtest/以下に移動'))
465
+
466
+ = Update minitest to 5\n(('note:minitest 5に更新'))
467
+
468
+ # coderay diff
469
+ - lib/minitest/*.rb
470
+ + test/lib/minitest/*.rb
471
+ - lib/test/unit.rb
472
+ + test/lib/test/unit.rb
473
+ - lib/test/unit/**/*.rb
474
+ + test/lib/test/unit/**/*.rb
475
+
476
+ = Ruby 2.2 times: 2\n(('note:Ruby 2.2の時代:2'))
477
+
478
+ * Bundle test-unit gem again for users\n
479
+ (('note:再びtest-unit gemをバンドル'))
480
+ * Ruby 1.9 dropped test-unit gem\n
481
+ (('note:Ruby 1.9はtest-unit gemを捨てた'))
482
+
483
+ = Bundle test-unit again\n(('note:test-unitを再びバンドル'))
484
+
485
+ test-unit gem provides:
486
+
487
+ lib/test-unit.rb
488
+ lib/test/unit.rb
489
+ lib/test/unit/**/*.rb
490
+
491
+ = test/unit in Ruby 2.2
492
+
493
+ * test/unit means test/lib/test/unit for Ruby developers
494
+ * test/unit means lib/test/unit for users
495
+
496
+ = TODO...
data/theme.rb ADDED
@@ -0,0 +1,3 @@
1
+ @title_slide_title_font_size = @large_font_size
2
+
3
+ include_theme("clear-code")
metadata ADDED
@@ -0,0 +1,85 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rabbit-slide-kou-rubykaigi-2015
3
+ version: !ruby/object:Gem::Version
4
+ version: 2015.12.12.0
5
+ platform: ruby
6
+ authors:
7
+ - Kouhei Sutou
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2015-12-04 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rabbit
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 2.0.2
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: 2.0.2
27
+ - !ruby/object:Gem::Dependency
28
+ name: rabbit-theme-clear-code
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 1.0.5
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: 1.0.5
41
+ description: |-
42
+ This talk describes about the history of testing framework in Ruby.
43
+
44
+ Ruby 2.2 bundles two testing frameworks. They are minitest and test-unit. Do you know why two testing frameworks are bundled? Do you know that test-unit was bundled and then removed from Ruby distribution? If you can't answer these questions and you're interested in testing framework, this talk will help you.
45
+
46
+ This talk describes about the history of bundled testing framework in Ruby and some major testing frameworks for Ruby in chronological order.
47
+ email:
48
+ - kou@clear-code.com
49
+ executables: []
50
+ extensions: []
51
+ extra_rdoc_files: []
52
+ files:
53
+ - ".rabbit"
54
+ - README.rd
55
+ - Rakefile
56
+ - config.yaml
57
+ - images/clear-code-is-a-silver-sponsor.png
58
+ - pdf/rubykaigi-2015-the-history-of-testing-framework-in-ruby.pdf
59
+ - the-history-of-testing-framework-in-ruby.rab
60
+ - theme.rb
61
+ homepage: http://slide.rabbit-shocker.org/authors/kou/rubykaigi-2015/
62
+ licenses:
63
+ - CC BY-SA 4.0
64
+ metadata: {}
65
+ post_install_message:
66
+ rdoc_options: []
67
+ require_paths:
68
+ - lib
69
+ required_ruby_version: !ruby/object:Gem::Requirement
70
+ requirements:
71
+ - - ">="
72
+ - !ruby/object:Gem::Version
73
+ version: '0'
74
+ required_rubygems_version: !ruby/object:Gem::Requirement
75
+ requirements:
76
+ - - ">="
77
+ - !ruby/object:Gem::Version
78
+ version: '0'
79
+ requirements: []
80
+ rubyforge_project:
81
+ rubygems_version: 2.4.5.1
82
+ signing_key:
83
+ specification_version: 4
84
+ summary: The history of testing framework in Ruby
85
+ test_files: []