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
RaaP
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
ksss
May 08, 2024
Programming
780
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
RaaP
ksss
May 08, 2024
More Decks by ksss
See All by ksss
Railsの型ファイル自動生成における課題と解決
ksss
4
5.5k
RBS generation framework using Rack architecture
ksss
1
7.9k
mrubyでruby/specを走らせてみた結果www
ksss
1
2.6k
Rubyに型があると便利か
ksss
4
4.8k
A New Testing Framework Rgot
ksss
0
1.3k
mruby hacking guide
ksss
7
2k
Other Decks in Programming
See All in Programming
LLMによるContent Moderationの本番運用の裏側と品質担保への挑戦
suikabar
2
640
dRuby over BLE
makicamel
2
340
A2UI という光を覗いてみる
satohjohn
1
130
Spring Security 実践 ─ GraphQL APIで実務に役立つ 認証・認可 を学ぶ
wagyu
0
230
技術記事、 専門家としてのプログラマ、 言語化
mizchi
13
5.8k
そのテスト、説明できますか?~LWテスト戦略FW~のご紹介
nakahara
0
110
スマートグラスで並列バイブコーディング
hyshu
0
140
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
510
OSもどきOS
arkw
0
560
ローカルLLMを使ってB2Bサービスを作っていての学び
yaotti
0
170
jQueryをバージョンアップする前に使いたいjQuery Migrate
matsuo_atsushi
0
480
ECSアプリログをFireLensでコスト削減しようとしたけど諦めた話 in Fargate×Node.js
akihisaikeda
2
4.2k
Featured
See All Featured
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
200
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
54k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
210
Making Projects Easy
brettharned
120
6.7k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
How GitHub (no longer) Works
holman
316
150k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
480
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
620
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
850
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Transcript
ksss Run your RBS like a testing code. RBS as
a Property
RBS as a Property ✒ RBS class MyClass def my_method:
(Integer, Integer) -> Integer end
RBS as a Property 🍎 Property 100.times do int1 =
Random.rand(100) int2 = Random.rand(100) result = MyClass.new.my_method(int1, int2) assert_kind_of Integer, result end
RBS as a Property ✒🍎
RBS as a Property Gener a te test c a
se by RBS And execute code a utom a tic a lly
https://github.com/ksss/raap This is the RaaP
Demo
Edit RBS (Add one overload) class MyClass def my_method: (Integer,
Integer) -> Integer | (Float, Float) -> Float end
You can run RBS instantly!
If the RBS is wrong? class MyClass def my_method: (Integer,
String) -> Integer end
It detects failures and also displays reproduction codes.
Support Union type class MyClass def my_method: (0 | 1
| 2, 3 | 4 | 5) -> Integer end
Choose one of the Unions and run it. With coverage!
RBS as a Property RaaP