https://gist.github.com/eagletmt/3e064fcbe2935a8356bc8658c8e472c1
require_relative '../infer_type' RSpec.configure do |config| config.before(:suite) { @infer_type = InferType.new; @infer_type.start } config.after(:suite) { @infer_type.finish } end
たとえば上記のように RSpec のフックに仕掛けて INFER_TYPE_TARGET=YourAwesomeApp:: bundle exec rspec
とかやるとテストから適当に推測されたクラスが表示される。
とりあえず nullable かどうかと、TrueClass と FalseClass を Boolean と解釈するように調整を入れていて、このへんをがんばるともう少しいいかんじのクラスを表示できそう。
これと同じようなかんじで、YARD で書かれた型と一致するかどうかチェックできると便利そう。