Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
def tdd_ios( hint: RubyMotion )
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Jon Rowe
March 12, 2013
Programming
170
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
def tdd_ios( hint: RubyMotion )
Lightening talk about RubyMotion, iOS and testing. Presented at March RoRo Sydney meet.
Jon Rowe
March 12, 2013
More Decks by Jon Rowe
See All by Jon Rowe
RSpec - Level Up
jonrowe
0
340
Learning From Other Languages - Immutability
jonrowe
0
200
Intro-spec-tion RubyConfAU 2016
jonrowe
0
190
RSpec + Rails Without rspec-rails @ RoRoSyd November 2015
jonrowe
1
280
RSpec 3 and why I `expect(you).to care`
jonrowe
3
660
Upgrading RSpec - RoRoSyd June 14
jonrowe
1
120
def tdd_ios( hint: RubyMotion ) @ #SydInMotion
jonrowe
0
140
Tales Of Interest - RubyConfAU 2014
jonrowe
0
100
RSpec... Your doing it wrong... RoRoSYD Lightning Talk October 2013
jonrowe
0
170
Other Decks in Programming
See All in Programming
[2026-10-14](C)Re:ゼロから始める異世界生活〜始まりの終わりと終わりの始まり〜
tosite
0
180
HTML-in-Canvasで作る未来のWeb UI表現
clockmaker
5
6k
Spec-driven Development with AI
simas
PRO
0
2.2k
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
520
PumaからFalconに移行したRailsアプリケーションでの実践
falcon8823
0
310
LLM 101
dalinaum
0
420
AI時代のIaC入門 〜なぜインフラをコードで管理したいのか?〜 / Introduction to IaC in the AI Era
akihisaikeda
6
1.3k
自作Discord音声botをLambda MicroVMsに移行した話 / Migrating My Discord Voice Bot to Lambda MicroVMs
akihisaikeda
0
220
SFCで実現する病院・医療システムの動的組み立て式UI
koukimiura
1
150
クラウドゲーミングのパフォーマンス最適化に挑む / Cloud Gaming Performance Tuning
vivion
0
310
Spec-Driven Development - Why Vaadin Is the Perfect Fit
simas
PRO
0
200
[Dev Group Paris Octobre 26] Agentforce, SIforce, Claudeforce, Slackbot… on s'y retrouve ?
nabondance
0
120
Featured
See All Featured
Marketing to machines
jonoalderson
1
6k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
320
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
820
Joys of Absence: A Defence of Solitary Play
codingconduct
1
560
Believing is Seeing
oripsolob
1
260
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.4k
The Cult of Friendly URLs
andyhume
79
7.1k
Bash Introduction
62gerente
615
220k
For a Future-Friendly Web
brad_frost
184
11k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.6k
Tell your own story through comics
letsgokoyo
1
1.1k
Transcript
def tdd_ios( hint: RubyMotion) @JONROWE
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
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