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
def tdd_ios( hint: RubyMotion ) @ #SydInMotion
Search
Jon Rowe
April 15, 2014
Technology
130
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
def tdd_ios( hint: RubyMotion ) @ #SydInMotion
Brief testing lightning talk from April 2014's #sydinmotion.
Jon Rowe
April 15, 2014
More Decks by Jon Rowe
See All by Jon Rowe
RSpec - Level Up
jonrowe
0
320
Learning From Other Languages - Immutability
jonrowe
0
180
Intro-spec-tion RubyConfAU 2016
jonrowe
0
180
RSpec + Rails Without rspec-rails @ RoRoSyd November 2015
jonrowe
1
270
RSpec 3 and why I `expect(you).to care`
jonrowe
3
650
Upgrading RSpec - RoRoSyd June 14
jonrowe
1
110
Tales Of Interest - RubyConfAU 2014
jonrowe
0
94
RSpec... Your doing it wrong... RoRoSYD Lightning Talk October 2013
jonrowe
0
160
expect(RSpec::3).to be_coming_soon @Dius_AU September 2013
jonrowe
0
210
Other Decks in Technology
See All in Technology
AIDLC_ヤフーショッピングの取り組み
lycorptech_jp
PRO
0
400
NDIAS CTF 2026 問題解説会資料
bata_24
0
160
AWS Summit Japan 2026の振り返りと2027へ向けて / AWS Summit Japan 2026 Recap and Prospects for 2027
kaminashi
1
170
作る力から、見極める力へ — AI時代に広がるエンジニアの価値と役割
rince
0
390
LiDAR SLAMの実装とセンサ融合 ~Lie群からContinuous-Time LIOまで~
naokiakai
1
810
4人目のSREはAgent
tanimuyk
0
360
水を運ぶ人としてのリーダーシップ
izumii19
4
1.2k
IaC コードを資産へ:AWS CDK 社内ライブラリと横断展開 / aws-summit-japan-2026
gotok365
10
1.7k
トークン最適化のためのユーザーストーリー分析 / User Story Analysis for Token Optimization
oomatomo
0
160
從觀望到全公司落地:AI Agentic Coding 導入實戰 — 流程整合與安全治理
appleboy
1
460
そのタスクオンスケですか?
poropinai1966
0
110
プライバシー保護の理論と実践
lycorptech_jp
PRO
1
220
Featured
See All Featured
Utilizing Notion as your number one productivity tool
mfonobong
4
340
A Modern Web Designer's Workflow
chriscoyier
698
190k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
380
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Thoughts on Productivity
jonyablonski
76
5.2k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
300
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
55k
Marketing to machines
jonoalderson
1
5.5k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
550
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
260
Transcript
def tdd_ios( hint: RubyMotion) @JONROWE
@JONROWE
@JONROWE So don’t?
ObjectiveC
ObjectiveC TDD IS HARD!
ObjectiveC TDD IS HARD! (or just not popular)
PhoneGap?
PhoneGap? JS
PhoneGap? JS TDD’able
PhoneGap? JS TDD’able Sucks...
RubyMotion?
RubyMotion? Ruby
RubyMotion? Ruby Compiles
RubyMotion? Ruby Compiles Access to all the APIs
RubyMotion? Ruby Compiles Access to all the APIs
RubyMotion? Ruby Compiles Access to all the APIs
Has testing built in
Bacon !
Bacon MacBacon
Bacon MacBacon Runs In Simulator
None
Unit Testing
Unit Testing Integration Testing
Unit Testing Integration Testing Acceptance Testing (limited)
Use Rubyisms
Use Rubyisms Stub web requests
Use Rubyisms Stub web requests Simulate device events
Felt Like Rails
Solution?
Pure Ruby Library
Pure Ruby Library RSpec / MiniTest
Pure Ruby Library RSpec / MiniTest Ruby 2.0.0
Caveats:
Caveats: Libs don’t always behave the same.
Caveats: Libs don’t always behave the same. (JSON)
Caveats:
Caveats: no require
Caveats: no require no metaprogramming
Caveats: no require no metaprogramming alloc / init vs initialize
end
Bonus Code
None
None
See Also: https://github.com/JonRowe/locomotion