Ruby
は、dxruby_sdl の最新バージョンを示す画像で、バージョンバッジ(Version Badge)と呼ばれています( dxruby_sdl は私が開発しているソフトウェアで、DXRuby互換のAPIを提供するものです)。 gemを開発している人であれば、 GitHubのプロジェクトページなどの…
DXRuby (http://dxruby.sourceforge.jp/) を利用して作られたゲームをMacでもLinuxでも動くようにするためのソフトウェアdxruby_sdl (https://github.com/takaokouji/dxruby_sdl) を作りました。ソースコードやインストール方法はGitHubで公開しています。MI…
もうね、いつも忘れるんでメモっておきます。 RVMを最新にするのは以下のコマンドです。 $ rvm get stableこれで「rvm list known」の実行結果が最新になります。 (特定のバージョンに戻す方法はどうするんだろうね?)
Rubyのdef式って、nilを返すんですね。知らなかった... で、以下のチケットにあるように、次のバージョンである Ruby 2.1ではsymbolを返すことになるようです。 https://bugs.ruby-lang.org/issues/3753 We accept this change for 2.1 in the developers' m…
RSpec 2.14 is released!: http://myronmars.to/n/dev-blog/2013/07/rspec-2-14-is-released ってことで、ざっとリリースノートを読んで、びびっときたのはこれだ!! Core: Shared example groups are scoped to the context they are defined in Before 2.…
いやね、RVMを使っていてGemfileに記述したrakeのバージョンではなく、システムにインストールされたrakeを使いたかったのですが、うまくいかなくて困っていました。 ひょんなことから、次のようにしてrakeを実行すると、rake実行時にRVM(というよりはrubyge…
RSpec Mock 2.14にはexpectっぽい記述が追加されましたね。http://teaisaweso.me/blog/2013/05/27/rspecs-new-message-expectation-syntax/ # Old foo.should_receive(:bar) foo.should_receive(:bar).with(:buzz) foo.should_receive(:bar).exactly(3).time…
モデルのscopeのspecを記述したいと思ったのですが、「scope rspec」でGoogleで検索したところ、How can i have an rspec test for my default scope: http://stackoverflow.com/questions/6853744/how-can-i-have-an-rspec-test-for-my-default-scope にそ…
「git mine merged 」という Git のサブコマンドを作成してみます。このコマンドは、マージ済みのブランチ名を指定して、ブランチの名前にmergedをつけるという単純なものです。これは Git のサブコマンドを高速に作れるようになるための練習です。 といって…
http://d.hatena.ne.jp/kouji0625/20130615/p1 の続きで「Travis CIを設定してみましょう!」と行きたかったのです、まったく設定できませんでした。他人のプロジェクトをTravis CIで設定するのはムズいね。いつかはできるけど、いまではありません(キリッ …
一昨日 (http://d.hatena.ne.jp/kouji0625/20130613/p1) の続きです。 一昨日の時点で、あとは activerecord の失敗するテストをどうにかすればOKという状態でした。さぁ、今日もはりきっていってみよ〜♪ activerecord テストに失敗する activerecord のテス…
昨日 (http://d.hatena.ne.jp/kouji0625/20130612/p1) の続きです。 昨日の時点で、あとは activerecord のみという状態でした。さぁ、今日もはりきっていってみよ〜♪ activerecord MySQL のセットアップ 事前に MySQL そのものは公式サイト (http://dev.mys…
昨日 (http://d.hatena.ne.jp/kouji0625/20130611/p1) の続きです。 全体のテストを実行する ここで全体のテストを実行してみて、現状の問題を確認します。 $ mkdir -p ../rails-test-logs/v3.0.3/ $ bundle exec rake test 2>&1 | tee ../rails-test-logs/v…
さて、急な話ですが少し古い Rails の test を実行してみたいと思います。 なんで古い Rails なのかって!?そりゃ、大人の事情ってもんです。 あと、なんで test するのかって!?いや〜、 Rails にセキュリティパッチだけを適用したいことってあるじゃない…
(まったく試してないけど)QSpecを紹介します。 テストが遅いので parallel_tests で高速化しようとしたが、効率わるすぎて腹がたってきたのでより効率的な Qspec をつくった。いくつかの rails プロジェクトでベンチマークしたところ、2倍以上の高速化効果が…
昨日、これからやりたいことを書いたのですが (http://d.hatena.ne.jp/kouji0625/20130605/p1) 、それをある程度実現しているスクリプトがあるとのことなので調べてみました。 A Test Code Generator for RSpec Users: https://speakerdeck.com/seratch/a-te…
ちょっと機会があって、プログラムでRubyスクリプトを解析したいと思って調べています。まだまだ調査中なので中途半端な情報になってしまいますが、ご勘弁ください。 Rubyのソースコードを解析するためのソフトウェアとしては、Ruby標準添付のripperと、seat…
最近、Railsのカスタムgeneratorが銀の弾丸(開発効率を飛躍的に上げるもの)にならないかと思っていろいろ試しています。いまのところ、成果は上げっていませんwww駄菓子菓子(だがしかし)、generatorを作成することに対する敷居がとても下がりました。まだ、R…
今回のお題 Railsのカスタムgeneratorは、以下のように「Rails」「Rspec」といったグループに分けられています。このグループ分けはどのようにするのでしょうか? $ rails generate --- 以下、実行結果 --- Usage: rails generate GENERATOR [args] [options…
先日 (http://d.hatena.ne.jp/kouji0625/20130524/p1) の続きでやんす。 ammeter でカスタム generator の spec を記述して実行すると、rm -rf ..., mkdir -p ...というログが標準エラー出力に出力されました。 うるさいので設定で変更できないかと調べてみ…
先日はRailsのカスタムgeneratorの作成方法を説明しました (http://d.hatena.ne.jp/kouji0625/20130523/p1) が、今日はそのspecの記述方法を説明します。generator自体の作成はちょろいのですが、generatorのspecとなると面倒そうですね。実際、rspec-rails…
はじめに Railsのアプリケーションを作成していると、同じようなモデル(STIを使っているとよくありますよね)、同じようなコントローラ(RESTfulにすればするほど、コントローラは似てきますよね)が増えてきます。新しいモデルやコントローラを作るときに、コ…
今年の中学生Ruby教室 (http://www1.city.matsue.shimane.jp/sangyoushinkou/ruby/rubycity/junior-ruby/junior_ruby.html) のプラットフォームが Windows から Mac に変わることを受け、Mac でも使える Ruby の 2 次元描画ライブラリを調べていました。いま…
なんのことはない以下の設定をbeforeなどで行うだけですwww 基本的にはwww.example.comはそのままでよく、多くの場合実際のホスト(たとえばhttps://cocktailq.herokuapp.com)に合わせる必要もないはず。 Capybara.default_host = 'https://www.example.com' …
http://qiita.com/items/46545bdbb9629c4d3860 より Chef と Puppet の勉強会というよりも、むしろ時代は serverspec だった #pfcasual - 彼女からは、おいちゃんと呼ばれています こちらの記事でserverspecを見て、テストファーストでサーバ構築できたら良…
Ruby + RSpecでのTDD(BDD)において、shared_examplesやshared_examples_forは最高の武器ですね。 ご存知のようにtest-unitではRubyの言語仕様を駆使してテストコードの共有資産(assert_XXXXなど)を用意することになりますが、RSpecではshared_examplesやshar…
必要にせまられて、つまらぬ修正をしてしまったでござる。 commit cf2c7585e5b57c5d605757ef2291594cce537b7b Author: Kouji Takao <kouji@netlab.jp> Date: Wed May 8 23:07:13 2013 +0900 build for Ubuntu 13.04 diff --git a/src/Source.cpp b/src/Source.cpp index 698d4</kouji@netlab.jp>…
Railsの各バージョンに合わせて、jpmobileのバージョンを変更する必要があるのですね。 https://github.com/jpmobile/jpmobile/wiki/Version-:-Jpmobile-vs-Rails Gemfileはこんな感じにするのでしょうかね。(動作確認していません。すまん。) # Rails 3.2.x…
RSpec MockのSomeClass.any_instance.stub(:some_method)したものには、orderedメソッドがないのですね。知らなかった。 あるモデルをsave!したあとに処理していることをチェックしたかったので、 SomeModel.any_instance.stub(:save!).ordered => 例外発生 …
RSpecのshouldはもう古い!新しい記法expectを使おう!: http://qiita.com/items/d880250adc8cdbe7a32f という最高の記事があります。で、expect {}.to change...はどんなふうに書くんだっけかな?と思ってみてみると、それらしいものがなかったのでメモして…