2008年 01月 02日

RSpec

atomutil のテスト書くときに (一行たしただけだけど)、はじめてさわったけど、思ったよりよさそうだ (食わず嫌いだった)

とりあえず assert_equal って補完使っても入力するのめんどくさいんだよね……

gerry++

おなかいたいわけじゃないけどなぜか gerry...

アカウント情報を管理するコマンド pit

というのを適当にでっちあげてみました (まだ gem source に反映されてないかも)。こまごまとした自動化スクリプトで、毎回 ~/domain.yaml とかにパスワード書いたりして分離するのがめんどうくさいので、そのへんをうまいことやってくれる gem です。

require "rubygems"
require "pit"

config = Pit.get("vox.com", :require => {
	"username" => "your email in Vox",
	"password" => "your password in Vox",
	"nickname" => "your subdomain in Vox"
})

みたいに書いておくと、設定されてない場合は $EDITOR で設定ファイルを開いて保存し、設定情報が config に入ります。

コマンドラインからもセットすることができて

$ pit set vox.com

とかやると、設定名が vox.com である設定を $EDITOR でひらきます。

でもって、設定のセット (プロファイル) をいくつかつくることができて、デフォルトだと default というプロファイルに保存されます。

$ pit switch devel

とかでプロファイルの切り替えができます。(プロファイル名に何も指定しないと default にもどります)


Ruby 以外でも一応つかえるように

pit get foobar

を実行すると $stdout に YAML をはきます (ただし tty のときはパスワードふくむときこわいので出力しません pit get foo | lv とかやるとみれる)


保存された設定は ~/.pit に特に暗号化されずに保存されます。

twitter4r

require "time"
require "rubygems"
gem "twitter4r"
require "twitter"
require "pit"

Twitter::Client.new(Pit.get("twitter.com", :require => {
	"login"    => "login name",
	"password" => "password"
})).status(:post, "Test posting from twitter4r with pit.")