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
250
Learning From Other Languages - Immutability
jonrowe
0
140
RSpec + Rails Without rspec-rails @ RoRoSyd November 2015
jonrowe
1
230
RSpec 3 and why I `expect(you).to care`
jonrowe
3
610
Upgrading RSpec - RoRoSyd June 14
jonrowe
1
88
def tdd_ios( hint: RubyMotion ) @ #SydInMotion
jonrowe
0
120
Tales Of Interest - RubyConfAU 2014
jonrowe
0
67
RSpec... Your doing it wrong... RoRoSYD Lightning Talk October 2013
jonrowe
0
130
expect(RSpec::3).to be_coming_soon @Dius_AU September 2013
jonrowe
0
170
Other Decks in Technology
See All in Technology
AI-in-the-Enterprise|OpenAIが公開した「AI導入7つの教訓」——ChatGPTで変わる企業の未来とは?
customercloud
PRO
0
150
10分で学ぶ、RAGの仕組みと実践
supermarimobros
0
870
意思決定を支える検索体験を目指してやってきたこと
hinatades
PRO
0
400
DynamoDB のデータを QuickSight で可視化する際につまづいたこと/stumbling-blocks-when-visualising-dynamodb-with-quicksight
emiki
0
130
大規模サーバーレスプロジェクトのリアルな零れ話
maimyyym
3
150
正式リリースされた Semantic Kernel の Agent Framework 全部紹介!
okazuki
1
790
MCPが変えるAIとの協働
knishioka
1
140
今日からはじめるプラットフォームエンジニアリング
jacopen
8
2k
Ninno LT
kawaguti
PRO
1
110
Notion x ポストモーテムで広げる組織の学び / Notion x Postmortem
isaoshimizu
1
150
地味にいろいろあった! 2025春のAmazon Bedrockアップデートおさらい
minorun365
PRO
2
560
勝手に!深堀り!Cloud Run worker pools / Deep dive Cloud Run worker pools
iselegant
4
650
Featured
See All Featured
Speed Design
sergeychernyshev
29
930
Documentation Writing (for coders)
carmenintech
71
4.8k
4 Signs Your Business is Dying
shpigford
183
22k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.7k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
105
19k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Stop Working from a Prison Cell
hatefulcrawdad
268
20k
Facilitating Awesome Meetings
lara
54
6.3k
Thoughts on Productivity
jonyablonski
69
4.6k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
What's in a price? How to price your products and services
michaelherold
245
12k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
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