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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Jon Rowe
April 15, 2014
Technology
0
130
def tdd_ios( hint: RubyMotion ) @ #SydInMotion
Brief testing lightning talk from April 2014's #sydinmotion.
Jon Rowe
April 15, 2014
Tweet
Share
More Decks by Jon Rowe
See All by Jon Rowe
RSpec - Level Up
jonrowe
0
300
Learning From Other Languages - Immutability
jonrowe
0
170
Intro-spec-tion RubyConfAU 2016
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
100
Tales Of Interest - RubyConfAU 2014
jonrowe
0
81
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
200
Other Decks in Technology
See All in Technology
会社紹介資料 / Sansan Company Profile
sansan33
PRO
16
410k
SaaSの操作主体は人間からAIへ - 経理AIエージェントが目指す深い自動化
nishihira
0
120
Blue/Green Deployment を用いた PostgreSQL のメジャーバージョンアップ
kkato1
0
160
AIエージェント時代に必要な オペレーションマネージャーのロールとは
kentarofujii
0
230
やさしいとこから始めるGitHubリポジトリのセキュリティ
tsubakimoto_s
3
2k
GitHub Copilot CLI で Azure Portal to Bicep
tsubakimoto_s
0
300
OCI技術資料 : ロード・バランサ 概要 - FLB・NLB共通
ocise
4
27k
Even G2 クイックスタートガイド(日本語版)
vrshinobi1
0
140
互換性のある(らしい)DBへの移行など考えるにあたってたいへんざっくり
sejima
PRO
0
340
出版記念イベントin大阪「書籍紹介&私がよく使うMCPサーバー3選と社内で安全に活用する方法」
kintotechdev
0
120
AIにより大幅に強化された AWS Transform Customを触ってみる
0air
0
200
イベントで大活躍する電子ペーパー名札を作る(その2) 〜 M5PaperとM5PaperS3 〜 / IoTLT @ JLCPCB オープンハードカンファレンス
you
PRO
0
220
Featured
See All Featured
Building Adaptive Systems
keathley
44
3k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.4k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
97
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
230
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.4k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
300
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.2k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
180
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
78
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
510
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