とりあえず写経。。。 読み込みを色々な文字にしたり、読み込むバイトを色々変えてやってみる。元はこれ File.open("./hello.txt") { |f| loop do break if f.eof? chunk = "CHUNK: #{f.read(5)}" #ここの5を色々変える puts chunk unless chunk.empty? end …
以前書いたものの続きです。 題名の通りsinatraでrspecを使う基本的なことがらになります。 sinatraだけの設定を考えるとtest/unitと同じです。乱暴に言うとassertがshouldになるだけだと思ってよいと思います。 サンプルコード 前回のサンプルコードをrspec…
スクリプトのデフォルトのエンコーディングとそれを変更する方法 デフォルトのエンコーディングの決定方法 rubyのエンコーディングがどのように決められているか。 ソースエンコーディングは基本マジックコメント。マジックコメントが無い時はUS-ASCII。 た…
国際化を意識した一般的なライブラリについて おおざっぱにはこんな感じ。 基本utf-8で書く マジックコメント必須 ファイルの入出力は文字コードを意識して 具体的には File.read("foo.txt", encoding:"ISO-8859-1:UTF-8") とか File.open("foo.txt", "w:ISO…
「sinatraすげー」って今さら思い、sinatraで何か作ってみようかねーと思い、当然テストのことが気になりました。そもそも「テスト出来るの?実はrailsと比べて大変じゃないの???」って感じのアホな不安でした。(1週間前までsinatraのことと言えば名前し…
入力が色々なエンコーディングが想定される場合のライブラリ側の対応方法。例としてCSVライブラリを見ている。 CSVライブラリは読み込みのデータが大量であることが結構あるので、入力データのエンコーディングを変更するのではなく、パーサ側のエンコーディ…
おぉ7月2回目の日記かぁ。。。 rubykaigi2011にもいってるから書こうと思えばネタあるのになぁ。。。 淡々と読書日記を書きます。Loggerクラスの使い方使いたいなぁと思いつつ、なんとなく使わずにすんでいたLoggerクラス。 ここにのっているStandarderror#r…
オブジェクトの詳細を調べていく方法。 ここは小節ごとに内容が変ってきてる。 リフレクションって便利よって話 単純に「kernel#p」メソッドとか「Object#inspect」とか使うんじゃなくって。リフレクションを利用すると知りたい情報にアクセス出来る。 紹介…
バグ報告からテストコードへの変換の方法 問題が発生したコードから問題の核を見つけ出す方法。素直に写経。でも、当然のごとく直近のPrawnを使うと事象は発生しません。 発生するべきバグが発生しないのはなんか気持ち悪いので、prawnのGitHubリポジトリか…
デバックのプロセス。ある程度出来たコードに対して不安要素を確認していく過程なのかな。。。 ちょっと逸脱したテストケースを考えて pメソッドとかログメッセージとかで上記のテストケースがうまくいくか確認して irbで詳細をおってみて テストを書いて テ…
google chromeからの edit-server.elのテストでした。chromeって、会社のwindowsパソコンに中途半端に入れて「使えん!」って思って放っておいたんだけど、基本的には機能拡張入れないとだめなんだなぁ。今入れている拡張は Edit with Emacs Google Reader Ch…
twitterで「Rictyフォントいいよー」と見かけたので、ためしに導入してみました。今までフォントにはあまり気を使わなかったのですが、Ricty素晴しいです。(Happy度当社比3倍)ほぼホームページのここhttp://save.sys.t.u-tokyo.ac.jp/~yusa/fonts/ricty.html…