autotest gem 使ってみた
見ました。
テストしたらそれがドキュメントになるの素晴らしいとおもいます。
で、触ってみてのメモ。
バージョンは0.3.2。
テストで作ったもの
https://github.com/rightgo09/ruby-autodoc-test
active_support/concernが必要?
✘╹◡╹✘ AUTODOC=1 bundle exec rspec /Users/rightgo09/sandbox/autodoc-test/vendor/bundle/ruby/2.0.0/gems/actionpack-4.0.2/lib/action_dispatch/http/mime_negotiation.rb:6:in `<module:MimeNegotiation>': uninitialized constant ActiveSupport::Concern (NameError)
エラーでた。
ので、spec_helperに
require "active_support/concern"
を追加した。
JSON
JSONを返すとき(Content Typeが"application/json")は、
require "json"
が必要。
アプリ側でどっかで使っていればそれでいいけど、Ojとか別のパーサ使ってたらspec_helperとかで読み込む必要あった。
spec/requests/*_spec.rb
spec/api/root_spec.rbのテストにautodoc:1してみると
* doc/spec/api/root_spec.rb
ができる。中身はMarkdown。
READMEのexampleのとおり、spec/requests/*にテストファイルを置くと、doc/*.mdになってくれる。
Markdown以外のフォーマット
Autodoc.configuration.template = File.read("/my/template/path")
templateにファイルパスを入れるかと思ったけど、中身を渡す必要があった。
ERBの普通のHTML書いて渡せば、別にGithub経由とかじゃなくてもブラウザで簡単に見られる。