Model の試験をちくちくと
朝イチで微妙な試験の不具合を修正。てか、クラスの名前単数形になってて色々アレでした。
とりあえず Model の試験を書いておくことに。
とは言え
とりあえず属性の確認のみ。API 経由な情報取得なパーツの試験をどう書くか、が悩ましかったり。あと View の試験てどうするのか、って思っていたのですが、capybara なナニの spec/request を使えば良い、って理解で良いのかどうか。
つうか
初学者てきにやはり Rails Tutorial の試験な記述はなかなか参考になりますね。とは言え某所での問題処理対応中に request なナニを追加、というのはやはり無理ゲーな模様。
TODO 列挙
現実トウヒで。以下。
- create、start、stop アクションの追加
- model および controller の試験追加
- controller の試験について Rails Tutorial 確認
- request な試験の追加
とりあえず capybara は追加。
group :test do gem 'capybara', '1.1.2' end
で bundle update した。で、rails g すれば良いのかな。
$ rails g integration_test vm_operations
なんつーか Controller の名前が猛烈にダサい。しかも実行したら config/initializers/devise.rb に config.secret_key を設定しなさい、とか叱られたりなど。
その後リトライしてみたら無事 spec/requests ができてました。
検討
現実トウヒは続く。とりあえず最低限、なプロトタイプをでっち上げないとアレ。
- new アクションはボタン一発な View 出して終わり
- ボタンのクリックで create な POST が動いて virtual_machine な model の vm_create! みたいなメソドを呼び出した後に index に redirect
- ここ、rewque 使って Fog のソレを呼び出す方式にしたい部分
- start/stop は状態を戻すメソド欲しい
- state って属性あるな
- つうか、情報の持ち回りをどうするか問題が出てくるのかorz
- conns から vm_operation に conn な情報引き渡したい
- URL パラメータで?
- session store を redis にして云々?
- もらった JSON 文字列を Ruby の Hash に変換して格納すれば良いのかどうか
- あと、conns からはコネクション情報が指定される形で vm_operation に遷移とする
- conn な情報も session に格納して云々
そろそろ復帰。