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 )
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Jon Rowe
March 12, 2013
Programming
160
0
Share
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
310
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
260
RSpec 3 and why I `expect(you).to care`
jonrowe
3
650
Upgrading RSpec - RoRoSyd June 14
jonrowe
1
110
def tdd_ios( hint: RubyMotion ) @ #SydInMotion
jonrowe
0
130
Tales Of Interest - RubyConfAU 2014
jonrowe
0
88
RSpec... Your doing it wrong... RoRoSYD Lightning Talk October 2013
jonrowe
0
160
Other Decks in Programming
See All in Programming
(Re)make Regexp in Ruby: Democratizing internals for the JIT
makenowjust
3
1k
PHPer、Cloudflare に引っ越す
suguruooki
1
140
セグメントとターゲットを意識するプロポーザルの書き方 〜採択の鍵は、誰に刺すかを見極めるマーケティング戦略にある〜
m3m0r7
PRO
0
750
tRPCの概要と少しだけパフォーマンス
misoton665
2
260
JAWS-UG横浜 #100 祝・第100回スペシャルAWS は VPC レスの時代へ
maroon1st
0
210
AI時代のエンジニアリングの原則 / Engineering Principles in the AI Era
haru860
0
1.1k
Kubernetesを使わない環境にもCloud Nativeなデプロイを実現する / Enabling Cloud Native deployments without the complexity of Kubernetes
linyows
2
290
cloudnative conference 2026 flyle
azihsoyn
0
110
10 Tips of AWS ~Gen AI on AWS~
licux
5
540
Cache-moi si tu peux : patterns et pièges du cache en production - Devoxx France 2026 - Conférence
slecache
0
330
GoogleCloudとterraform完全に理解した
terisuke
1
190
Structured Concurrency, Scoped Values and Joiners in the JDK 25 26 27
josepaumard
1
140
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1370
200k
The SEO identity crisis: Don't let AI make you average
varn
0
460
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
170
The Spectacular Lies of Maps
axbom
PRO
1
730
Design in an AI World
tapps
1
210
Balancing Empowerment & Direction
lara
6
1.1k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
199
73k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
Discover your Explorer Soul
emna__ayadi
2
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