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
ksss
May 08, 2024
Programming
0
360
RaaP
ksss
May 08, 2024
Tweet
Share
More Decks by ksss
See All by ksss
Railsの型ファイル自動生成における課題と解決
ksss
4
4k
RBS generation framework using Rack architecture
ksss
0
6.7k
mrubyでruby/specを走らせてみた結果www
ksss
1
2.4k
Rubyに型があると便利か
ksss
4
4.4k
A New Testing Framework Rgot
ksss
0
1.2k
mruby hacking guide
ksss
7
1.8k
Other Decks in Programming
See All in Programming
長期運用プロダクトの開発速度を維持し続けるためのリファクタリング実践例
wataruss
8
2.6k
フロントエンドカンファレンス北海道2024 『小規模サイトでも使えるVite 〜HTMLコーディングをよりスマートに〜』長谷川広武(ハム)
h2ham
1
2.6k
今インフラ技術をイチから学び直すなら
yuhta28
1
120
New Order in Cascade Sorting Order
mugi_uno
3
2.6k
サーバーレスで負荷試験!Step Functions + Lambdaを使ったk6の分散実行
shuntakahashi
5
1.4k
Android開発以外のAndroid開発経験の活かしどころ
konifar
0
310
実践 Advanced CallKit 〜快適な通話の実現に向けて〜
mot_techtalk
3
120
Prolog入門
qnighy
3
870
Some more adventure of Happy Eyeballs
coe401_
2
160
開発を加速する共有Swift Package実践
elmetal
PRO
0
380
Hono・Prisma・AWSでGeoなAPI開発
nokonoko1203
5
650
Amebaチョイス立ち上げの裏側 ~依存システムとの闘い~
daichi_igarashi
0
220
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
327
20k
Building Adaptive Systems
keathley
36
2.1k
Speed Design
sergeychernyshev
21
420
Bash Introduction
62gerente
608
210k
A Philosophy of Restraint
colly
202
16k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
190
16k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
225
22k
Scaling GitHub
holman
458
140k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
278
13k
Fontdeck: Realign not Redesign
paulrobertlloyd
80
5.1k
Facilitating Awesome Meetings
lara
49
5.9k
Mobile First: as difficult as doing things right
swwweet
221
8.8k
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