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
Intro-spec-tion RubyConfAU 2016
Search
Jon Rowe
February 11, 2016
Technology
0
160
Intro-spec-tion RubyConfAU 2016
A whirlwind tour of the internals of RSpec.
Jon Rowe
February 11, 2016
Tweet
Share
More Decks by Jon Rowe
See All by Jon Rowe
RSpec - Level Up
jonrowe
0
260
Learning From Other Languages - Immutability
jonrowe
0
150
RSpec + Rails Without rspec-rails @ RoRoSyd November 2015
jonrowe
1
240
RSpec 3 and why I `expect(you).to care`
jonrowe
3
620
Upgrading RSpec - RoRoSyd June 14
jonrowe
1
90
def tdd_ios( hint: RubyMotion ) @ #SydInMotion
jonrowe
0
120
Tales Of Interest - RubyConfAU 2014
jonrowe
0
69
RSpec... Your doing it wrong... RoRoSYD Lightning Talk October 2013
jonrowe
0
140
expect(RSpec::3).to be_coming_soon @Dius_AU September 2013
jonrowe
0
170
Other Decks in Technology
See All in Technology
ビギナーであり続ける/beginning
ikuodanaka
3
720
ゼロからはじめる採用広報
yutadayo
2
510
プライベートクラウドでの効率的な証明書配布戦略 / Efficient Certificate Distribution Strategy in Private Cloud
lycorptech_jp
PRO
0
110
AI導入の理想と現実~コストと浸透〜
oprstchn
0
190
敢えて生成AIを使わないマネジメント業務
kzkmaeda
2
380
Delta airlines®️ USA Contact Numbers: Complete 2025 Support Guide
airtravelguide
0
340
American airlines ®️ USA Contact Numbers: Complete 2025 Support Guide
airhelpsupport
0
360
事業成長の裏側:エンジニア組織と開発生産性の進化 / 20250703 Rinto Ikenoue
shift_evolve
PRO
2
19k
ドメイン特化なCLIPモデルとデータセットの紹介
tattaka
2
580
生成AI時代 文字コードを学ぶ意義を見出せるか?
hrsued
1
810
開発生産性を組織全体の「生産性」へ! 部門間連携の壁を越える実践的ステップ
sudo5in5k
2
6.3k
成長し続けるアプリのためのテストと設計の関係、そして意思決定の記録。
sansantech
PRO
0
100
Featured
See All Featured
A better future with KSS
kneath
239
17k
Done Done
chrislema
184
16k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Statistics for Hackers
jakevdp
799
220k
How GitHub (no longer) Works
holman
314
140k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
Transcript
Intro-spec-tion @JonRowe
WHAT IS RSPEC?
<test-unit>
<rspec>
BUT WHAT *IS* RSPEC?
None
CORE MOCKS EXPECTATIONS
CORE MOCKS EXPECTATIONS
CORE MOCKS EXPECTATIONS
CORE MOCKS EXPECTATIONS
CORE MOCKS EXPECTATIONS
CORE
CORE SHOULDA
None
EXPECTATIONS TestUnit
None
EXPECTATIONS TestUnit MOCKS
ETC ETC ETC…
None
BUT WHAT *IS* RSPEC?
ANATOMY OF A SPEC
<rspec>
<core only>
<core only> Example Group
<core only> Instance Methods
<core only> Hooks
<core only> Example
None
None
RSPEC CORE
THE WORLD
CONFIGURATION
THE REPORTER
THE RUNNER
WAIT… EXAMPLE GROUPS…
Runner ExampleGroup Example #<ExampleGroup> before(:suite) before(:group) before(:each)
<rabbit hole>
Runner ExampleGroup Example #<ExampleGroup> after(:suite) after(:group) after(:each)
<blue pill>
<heirarchy>
BUT WHY
JUST RUBY
<include>
<include>
<include>
RSPEC EXPECTATIONS
<core only>
<rspec>
<target>
<matcher>
<protocol>
<DSL>
<class>
<class>
RSPEC MOCKS
<mocks>
<mocks>
<mocks>
SO HOW DOES IT WORK?
<protocol>
RSPEC RAILS
None
None
None
after(:talk)
Thanks @JonRowe