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
180
0
Share
Intro-spec-tion RubyConfAU 2016
A whirlwind tour of the internals of RSpec.
Jon Rowe
February 11, 2016
More Decks by Jon Rowe
See All by Jon Rowe
RSpec - Level Up
jonrowe
0
310
Learning From Other Languages - Immutability
jonrowe
0
170
RSpec + Rails Without rspec-rails @ RoRoSyd November 2015
jonrowe
1
260
RSpec 3 and why I `expect(you).to care`
jonrowe
3
640
Upgrading RSpec - RoRoSyd June 14
jonrowe
1
110
def tdd_ios( hint: RubyMotion ) @ #SydInMotion
jonrowe
0
130
Tales Of Interest - RubyConfAU 2014
jonrowe
0
84
RSpec... Your doing it wrong... RoRoSYD Lightning Talk October 2013
jonrowe
0
150
expect(RSpec::3).to be_coming_soon @Dius_AU September 2013
jonrowe
0
210
Other Decks in Technology
See All in Technology
AIペネトレーションテスト・ セキュリティ検証「AgenticSec」ご紹介資料
laysakura
0
3.7k
AI時代にデータ基盤が持つべきCapabilityを考える + Snowflake Data Superheroやっていき宣言 / Considering the Capabilities Data Platforms Should Have in the AI Era + Declaration of Commitment as a Snowflake Data Superhero
civitaspo
0
110
QGISプラグイン CMChangeDetector
naokimuroki
1
320
AWS DevOps Agentはチームメイトになれるのか?/ Can AWS DevOps Agent become a teammate
kinunori
6
640
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.4k
最新の脅威動向から考える、コンテナサプライチェーンのリスクと対策
kyohmizu
1
560
申請待ちゼロへ!AWS × Entra IDで実現した「権限付与」のセルフサービス化
mhrtech
2
330
みんなで作るAWS Tips 100連発 (FinOps編)
schwrzktz
1
260
システムは「動く」だけでは 足りない - 非機能要件・分散システム・トレードオフの基礎
nwiizo
29
9.3k
Azure Static Web Apps の自動ビルドがタイムアウトしやすくなった状況に対応した件/global-azure2026
thara0402
0
350
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
390
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1.1k
Featured
See All Featured
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
100
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Darren the Foodie - Storyboard
khoart
PRO
3
3.2k
Evolving SEO for Evolving Search Engines
ryanjones
0
180
A designer walks into a library…
pauljervisheath
211
24k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
330
ラッコキーワード サービス紹介資料
rakko
1
3M
The Limits of Empathy - UXLibs8
cassininazir
1
290
Automating Front-end Workflow
addyosmani
1370
200k
Utilizing Notion as your number one productivity tool
mfonobong
4
290
Designing Powerful Visuals for Engaging Learning
tmiket
1
340
The Cost Of JavaScript in 2023
addyosmani
55
9.8k
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