タグ

2013年8月20日のブックマーク (5件)

  • 複雑なデータ構造の中にうまっているデータのパスをさがす方法 - tokuhirom's blog

    Perl5 の場合、Data::DPath をつかえば、 my $data = { foo => { bar => 'candy', }, }; のようなデータから、 say dpath('/foo/bar')->match($hashref); などとして、candy を簡単にとりだすことができます。 しかし、ここで、たとえば以下のように複雑なデータになってしまった場合は、DPath をつくるのがまじめんどいかんじになります。 my $data = { foo => { bar => 'candy', boz => 3, iyan => { bakan => 7, yappo => 'candy', dan => [ 'suspender', 'hige', 'candy'] }, }, }; そんな場合、以下のようなコードをささっと書いてcandyをさがしましょう。 #!/usr/bi

    moznion
    moznion 2013/08/20
  • Test::Time と日付系モジュールを同時に使う際の注意 - その手の平は尻もつかめるさ

    cho45 さんが作られた Test::Time と日付系モジュール (DateTime や Time::Piece など) と同時に使用する場合には注意が必要です。 Test::Time の動作を補足的に解説しますと、このモジュールは sleep() と time() を上書きしています。 sleep() が呼ばれると、来ならば引数として与えられた秒数だけスリープしますが、 Test::Time を use しているとスリープされません (つまり即座にsleep() は処理を終える)。 その代わりに、引数として sleep() に与えられていた秒数を time() によって得られる秒数に加えるという動作を行います。 ...日語で説明するのがなんだか難しいので、参考コードを掲示します。 こんな感じです。おわかり頂けるでしょうか。 で。 例えば以下の様なコードは期待通りに動作しません。

    Test::Time と日付系モジュールを同時に使う際の注意 - その手の平は尻もつかめるさ
    moznion
    moznion 2013/08/20
    私はブログを書きました
  • JR北海道の運転士、ハチに刺され列車運休 - 47NEWS(よんななニュース)

    47NEWS 参加社一覧 北海道新聞 |  室蘭民報 | 河北新報 | 東奥日報 | デーリー東北 | 秋田魁新報 | 山形新聞 | 岩手日報 | 福島民報 | 福島民友新聞 | 産業経済新聞 | 日経済新聞 | ジャパンタイムズ | 下野新聞 | 茨城新聞 | 上毛新聞 | 千葉日報 | 神奈川新聞 | 埼玉新聞 | 山梨日日新聞 | 信濃毎日新聞 | 新潟日報 | 中日新聞 | 中部経済新聞 | 伊勢新聞 | 静岡新聞 | 岐阜新聞 | 北日新聞 | 北國新聞 | 福井新聞 | 京都新聞 | 神戸新聞 | 奈良新聞 | 紀伊民報 | 山陽新聞 | 中国新聞 | 日海新聞 | 山口新聞 | 山陰中央新報 | 四国新聞 | 愛媛新聞 | 徳島新聞 | 高知新聞 | 西日新聞 | 大分合同新聞 | 宮崎日日新聞 | 長崎新聞 | 佐賀新聞 | 熊日日新聞 | 南日新聞 | 沖縄

    moznion
    moznion 2013/08/20
    良い話
  • [Perl]Archive::Zip使う前に読んでほしいエントリ

    ► 2021 (1) 12 (1) ► 2019 (1) 10 (1) ▼ 2013 (6) 08 (1) 07 (1) 05 (2) 04 (2) ► 2012 (13) 12 (3) 10 (3) 08 (2) 06 (1) 03 (2) 01 (2) ► 2011 (45) 12 (2) 11 (2) 10 (4) 09 (1) 07 (2) 06 (2) 05 (5) 04 (11) 03 (5) 02 (5) 01 (6) ► 2010 (51) 12 (8) 11 (3) 10 (3) 09 (1) 08 (4) 07 (3) 06 (5) 05 (3) 04 (9) 03 (4) 02 (7) 01 (1) ► 2009 (49) 12 (3) 11 (5) 10 (5) 09 (1) 08 (1) 07 (7) 06 (4) 05 (2) 04 (5) 03 (4) 02

    moznion
    moznion 2013/08/20
    良い
  • データベースのテスト - パルカワ2

    ふわっとしたタイトル通り、中身はありません。 use strict; use warnings; use Test::More; subtest "A" => sub { # DBを扱ったテスト }; subtest "B" => sub { # DBを扱ったテスト }; done_testing; こういう感じで書いちゃうと、subtest "B"のテストコードが、subtest "A"に依存するとかよくしちゃう。 そういう事をするとsubtest "A"がいらなくなったから削除するとsubtest "B"がエラー吐くみたいなのが、とてもつらい。 「こういう事起きないように気をつけよう!」みたいなの、ずっと1人だったらそれでいいんだけど、チームで開発してるといつの間にか気をつけよう!は忘れ去られてる事が多い。 だから以下のようにapptestみたいな名前のやつをt::Utilに作って、そ

    データベースのテスト - パルカワ2
    moznion
    moznion 2013/08/20