CakephpのテストでCakeRequestにアクセスして確認する

CakephpのテストでCakeRequestにアクセスする方法をメモ
Cakephp 2.5.3を使っています

まず、こんなコントローラーがあって

class SomethingController extends AppController {
    public function doSomething() {
        $data = ['aaa', 'bbb'];
        $this->request->data = $data;
    }
}

テストはこう

App::uses('SomethingController ', 'Controller');

class SomethingController extends ControllerTestCase {
    public function testDoSomething() {
        $result = $this->testAction(
            '/Something/doSomething',
            ['return' => 'vars']
        );
        $expected = ['aaa', 'bbb'];
        $this->assertEquals($expected, $this->controller->request->data));
    }
}

$this->controller->request

でCakeRequestにアクセスできました

いまさらながらphpのif文を確認

ふと、基本に戻って確認した

if (isset($data['a']) && $data['a']) {
    //
}

って最初しか評価されないよな、と

var_dump(true && true);
// true                                         
var_dump(false && true);
// false
var_dump(true && false);                                                     
// false
var_dump(isset($data['a']) && $data['a']);
// false
$data['a']
// NOTICEエラー

phpのif文は、最初の方から評価して、用が住めば後ろは評価しません
だから、動作を早くするには、早く解決する順でif文を組むといいですね

UbuntuでLineを使ってみる

Ubuntu 14.04 でLineを使ってみました
wineというソフトを使えば、Windowsアプリが動かせたりします

準備として、パソコンでログインできるようにLineの設定をしておくことが必要です

まずは、リポジトリ登録

$ sudo add-apt-repository ppa:ubuntu-wine/ppa
$ sudo apt-get upgrade

インストール

$ sudo apt-get install wine1.7 winetricks

truetype core fonts for the web eula
のライセンスに同意しないと使えないので、同意します

wineのバージョン確認

$ wine –version
$ wine-1.7.34

このバージョンだと大丈夫でした

Lineを入れてみます

http://line.me/ja/download
からWindows用をダウンロード

line-download

ダウンロードしたインストーラーEXEを実行

lineinstall1

指示に従っていきます

lineinstall2

lineinstall3

lineinstall4

インストール場所を指定

lineinstall5

lineinstall6

パソコンでログインするときのメールアドレス、パスワードを打ちこみ

lineinstall7

スマホ側で認証

lineinstall8

いけた

lineinstall-success

スタンプが押せなかったりするので、また調べます

(補足) wineのバージョンが 1.6.2 のとき

スマホアプリの認証後、フリーズしました

$ wine –version
wine-1.6.2

lineinstallcrash

一旦削除
$ sudo apt-get purge winetricks
$ sudo apt-get install wine1.7 winetricks

でLineインストールをやり直すといけました

2015/02/27 追記

スタンプが押せないみたいです..

Gimpでツールボックスが消えた

Ubuntu で Gimp 2.8.10 を使っていて、ツールボックスがなくなった..

gimp

で探すの、ちょっとはまったのでメモ

メニュー>ウィンドウ>ドックを隠す
にチェックが入っていると隠れます
Tabキーがショートカットに割り当たってるので、Tabを押せば隠したり出したりできます

gimp2