2013-01-01から1年間の記事一覧

いまさら聞けないRailsのカスタムgeneratorの作成方法

はじめに Railsのアプリケーションを作成していると、同じようなモデル(STIを使っているとよくありますよね)、同じようなコントローラ(RESTfulにすればするほど、コントローラは似てきますよね)が増えてきます。新しいモデルやコントローラを作るときに、コ…

OpenID ConnectとSCIM、メモメモ

OpenID Connect は、認証結果と属性情報(クレーム)の受け渡しを行うための共通仕様です。 各クラウドサービスが OpenID Connect に対応する事で、利用者がサービスごとの ID・パスワードを覚えたり、サービスにアクセスする度にログイン情報を入力する必要…

空腹感を抑える...でもね、空腹は抑えるものではないよ

空腹感を感じている時に、興奮したりストレスが かかると、アドレナリンが分泌され肝臓にためていた糖を血液に流し、血糖値を上げます。 すると脳は、十分に栄養はあるなと勘違いして 空腹感が消えるのです。 (省略) それは、「その場ダッシュ20回」(約10秒…

R2Dのリファレンスを、翻訳する - R2D: 初心者向けRubyの描画ライブラリ

今年の中学生Ruby教室 (http://www1.city.matsue.shimane.jp/sangyoushinkou/ruby/rubycity/junior-ruby/junior_ruby.html) のプラットフォームが Windows から Mac に変わることを受け、Mac でも使える Ruby の 2 次元描画ライブラリを調べていました。いま…

RSpecのrequest specで、HTTPS(SSL通信)を実現する

なんのことはない以下の設定をbeforeなどで行うだけですwww 基本的にはwww.example.comはそのままでよく、多くの場合実際のホスト(たとえばhttps://cocktailq.herokuapp.com)に合わせる必要もないはず。 Capybara.default_host = 'https://www.example.com' …

serverspecの記事の紹介(serverspecでテスト駆動サーバ構築)

http://qiita.com/items/46545bdbb9629c4d3860 より Chef と Puppet の勉強会というよりも、むしろ時代は serverspec だった #pfcasual - 彼女からは、おいちゃんと呼ばれています こちらの記事でserverspecを見て、テストファーストでサーバ構築できたら良…

本物のexamplesの共有はこんな感じだろ〜?(RSpecのshared_examplesを定義するファイルの説明です)

Ruby + RSpecでのTDD(BDD)において、shared_examplesやshared_examples_forは最高の武器ですね。 ご存知のようにtest-unitではRubyの言語仕様を駆使してテストコードの共有資産(assert_XXXXなど)を用意することになりますが、RSpecではshared_examplesやshar…

Emacsでスペースとタブだけの行を、強調表示する

Emacs 24は、すばらしい。(いや、別に私はスペースとタブだけの行があってもいいんだけど、必要になることがあるですよね〜) (when (boundp 'show-trailing-whitespace) (setq-default show-trailing-whitespace t)) --- 参考情報 この記事は以下の記事を参…

Emacsの日本語フォント(MigMix)の設定 on Linux

これは、フォントを提供してくれている人がすごい。設定はちょろいね。 (set-default-font "MigMix 1M-10:spacing=0") (set-fontset-font (frame-parameter nil 'font) 'japanese-jisx0208 '("MigMix 1M-10" . "unicode-bmp")))))Ubuntu 13.04のパッケージ名…

mozcの設定

この程度の設定でそれらしく動作している。Ubuntu 13.04がすごいのか、emacs-mozcがすごいのか。まぁ、Emacsの名前がついているので、emacs-mozcがすごいのでしょうねwww (require 'mozc) (setq default-input-method "japanese-mozc") (set-input-method "j…

capybara-webkit 0.9.0 on Ubuntu 13.04

必要にせまられて、つまらぬ修正をしてしまったでござる。 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>…

開発はMac OS X、でも運用はLinux...。開発環境だけで必要な処理をコミットする!!

開発はMac OS X、でも運用はLinuxという環境だと、Mac(開発環境)だけで必要な処理が出てきますよね。例えば、/path/to/libxx.soを/path/to/libxx.dylibに変えたりとかね。 それをなんとかしながら、運用で回避していくのがMacユーザですよね〜(BK!!) 今回は…

jpmobileとRailsの各バージョンの対応

Railsの各バージョンに合わせて、jpmobileのバージョンを変更する必要があるのですね。 https://github.com/jpmobile/jpmobile/wiki/Version-:-Jpmobile-vs-Rails Gemfileはこんな感じにするのでしょうかね。(動作確認していません。すまん。) # Rails 3.2.x…

SomeClass.any_instance.stub(:some_method).ordered => NG

RSpec MockのSomeClass.any_instance.stub(:some_method)したものには、orderedメソッドがないのですね。知らなかった。 あるモデルをsave!したあとに処理していることをチェックしたかったので、 SomeModel.any_instance.stub(:save!).ordered => 例外発生 …

.screenrcを、さらします

私の.screenrcは以下のような感じです。ほとんどのことをEmacsで行なっており、シェルが必要だったり、シェルのほうが便利だったりすることだけ、シェルを使っているため、screenrcはシンプルなものです。「ここはこっちのほうがいいよ」とかあったら、コメ…

RSpecで、Cucumberのような結合試験のspecを記述する

Cucumberって、仕様設計者の意図をプログラムによる自動テストにできる魔法です。 仕様設計者っていうのは、Rubyでのプログラミングが難しいけど、お客さまのニーズを理解して、それをドキュメントにできるハイパーな人です。プログラマにとっては神様です。…

「RSpecのshouldはもう古い!新しい記法expectを使おう!」に一言申す!!

RSpecのshouldはもう古い!新しい記法expectを使おう!: http://qiita.com/items/d880250adc8cdbe7a32f という最高の記事があります。で、expect {}.to change...はどんなふうに書くんだっけかな?と思ってみてみると、それらしいものがなかったのでメモして…

「失敗したのはおれのせいだから、もうこれ以上はやめてくれ」を実現するrspec --fail-fast (笑

以下のようにしてrspecを実行することで、1つでもspecに失敗した時点でそれ以降のspecを停止できるようです。 $ rspec --fail-fast /path/to/specrake経由だと以下のような感じですよね。 $ rake SPEC='--fail-fast /path/to/spec'あと、よく使うrspecのオプ…

「おい!ちゃんとロールバックしてるか!!」をRSpecで表現する

Railsアプリケーションのコントローラでは、なにかしらの例外が発生するとデータベースの変更をロールバックしますよね。 class ItemsController < ApplicationController def create Item.transaction do ... if エラー条件 raise ActiveRecord::Rollback e…

オープンβリリース: カクテルを作る人のためのサービス「かくってる?」

新年あけましておめでとうございます。本日からカクテルを作る人のためのサービス「かくってる?」のオープンベータテストを開始します。興味のある方は http://cocktailq.herokuapp.com/ の「サインアップ」ボタンを押していただき、ユーザ登録をお願いいた…