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
770
0
Share
RaaP
ksss
May 08, 2024
More Decks by ksss
See All by ksss
Railsの型ファイル自動生成における課題と解決
ksss
4
5.4k
RBS generation framework using Rack architecture
ksss
1
7.8k
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
Java × distroless で 軽量なコンテナイメージを / Java on Distroless
contour_gara
0
340
分析エージェント精度向上における データアナリストの役割
oura_shoya
0
120
次世代リンターで探る、tsgo 時代における型認識カスタムルールの現実解
ytakahashii
3
1.1k
CSC307 Lecture 17
javiergs
PRO
0
240
AIとRubyの静的型付け
ukin0k0
0
140
Claspは野良GASの夢をみるか
takter00
0
130
Transactional Change Stream Processing With Debezium and Apache Flink
gunnarmorling
1
130
1人1案件のプロダクトエンジニア時代に、"プロセス監督"としてチャレンジしたこと
non0113
0
330
[BalkanRuby 2026] Drop your app/services!
palkan
3
700
Inspired By RubyKaigi (EN)
atzzcokek
0
120
Copilot CLI の継戦能力を高める コンテキスト管理
nozomutu
1
1k
RailsTokyo 2026#4: AI様があれば、 Hotwireの弱点は消えるか?
naofumi
5
990
Featured
See All Featured
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
A Soul's Torment
seathinner
6
2.8k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3.2k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
200
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
370
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Building the Perfect Custom Keyboard
takai
2
770
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.8k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
370
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
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