appearInでカメラ・マイクが繋がらなくて焦った
OS側のブラウザ許可設定ができてなかった
Mojaveの場合だと、システム設定->セキュリティとプライバシー にあるプライバシータブを押して カメラを選択すると出てくる対象ブラウザにチェックをいれて許可する。
現象
appear.inというサービスでTV会議をすることが多い。 昨日接続しようとしたら、接続はできたものの以下エラーで カメラ・マイクが繋がらなかった。
appearInのカメラ設定画面開くとこんな感じ 真ん中の黒い部分に本来はカメラ画像が出る
原因
去年の最後にMacOSをクリアにして再インストールしたが そのさい設定が元に戻っていなかった。
調べてみるとMojaveからちょっと設定方法が変わったっぽい。 Chromeでは駄目だったが、Safariだと問題なくカメラ写ったので Chromeのマイク・カメラの許可をいじったが結局はOS側でした。 まぁそっちの設定も必要だけど。
本家サイトにも設定方法書いてあった。 https://appearin.helpscoutdocs.com/article/205-appear-in-isnt-selecting-camera-mic
Bootstrap4時のRspec radiobutton編
CSSフレームワークは便利なんだけど、テストコードに悩むことがあったのでメモ
結論 CSSのSelector使ってテストする
通常のselectタグのラジオボタンのテストなら
expect(page).to have_select("selectタグの名称", selected: "選択値")
で良いんだけどBootstrap4を使うとselectタグを使用しなくて
checkedで判断するというより.activeで判断する。
以下Bootstrapでのラジオボタン
<div class="btn-group btn-group-toggle" data-toggle="buttons"> <label class="btn btn-secondary active"> <input type="radio" name="options id="option1" autocomplete="off"" checked> アクティブ </label> <label class="btn btn-secondary"> <input type="radio" name="options" id="option2" autocomplete="off"> ラジオ </label> <label class="btn btn-secondary"> <input type="radio" name="options" id="option3" autocomplete="off"> ラジオ </label> </div>
こうなるので、テストコードとしては以下で判断する。CSSセレクタは便利
expect(page).to have_selector(".active", text: "アクティブ")
Bootstrap4時のRspec radiobutton編
CSSフレームワークは便利なんだけど、テストコードに悩むことがあったのでメモ
結論 CSSのSelector使ってテストする
通常のselectタグのラジオボタンのテストなら
expect(page).to have_select("selectタグの名称", selected: "選択値")
で良いんだけどBootstrap4を使うとselectタグを使用しなくて
checkedで判断するというより.activeで判断する。
以下Bootstrapでのラジオボタン
<div class="btn-group btn-group-toggle" data-toggle="buttons"> <label class="btn btn-secondary active"> <input type="radio" name="options id="option1" autocomplete="off"" checked> アクティブ </label> <label class="btn btn-secondary"> <input type="radio" name="options" id="option2" autocomplete="off"> ラジオ </label> <label class="btn btn-secondary"> <input type="radio" name="options" id="option3" autocomplete="off"> ラジオ </label> </div>
こうなるので、テストコードとしては以下で判断する。CSSセレクタは便利
expect(page).to have_selector(".active", text: "アクティブ")
PostgreSQLのアップグレードで起動失敗
HomebrewでインストールしたPostgreSQL。 アップデートしたらサービスとして起動はするんだけど psql打つとエラーが出てDBに接続できない。
課題
$ psql postgres
$ psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
環境が悪いのか、何が悪いのかが分かってないが
対応策として以下でなんとかはなった。
注意)fixBrewLionPostgresql.sh がいま無さそう…
解決策
$ cd /usr/local/Cellar/postgresql $ curl -o fixBrewLionPostgresql.sh http://nextmarvel.net/blog/downloads/fixBrewLionPostgres.sh $ chmod 777 fixBrewLionPostgresql.sh $ ./fixBrewLionPostgresql.sh $ pg_ctl -D /usr/local/var/postgres start
参考サイト
miniTest system test できてなかった
Systemテスト実行は $ rails test:system
Railsアプリ作っててテストはminiTestを使用してた
- 個人的にはRspecのほうが読みやすい
- 他プロジェクトでminiTestを使用してたので統一した
- まぁ結局悩むのはCapybaraのassertionだしね
modelのテストでFixture変えたのに
$ rails test:system で無事エラー出た
- 最初にまとめて書いてたのもよくない。TDDの順序ミスった
- まとめてできたら便利なのに、と思ったらあえての仕様のもよう
- 一応の解決策としては$ rails test test/* でどっちもテストしてくれた
参考サイト satococoa.hatenablog.com
DeleteとRemoveの使い分け
あんまり意識せずにメソッド名やコメントにdeleteをよく使ってたんだけど コミットコメントに関して調べてたら興味深い使い分けを知ったのでメモ。
Microsoftスタイルガイドの指標
- Delete ファイル自体を削除する時
- Remove ファイルの内容、項目等を削除する時
removeの訳は取り除く。削除というより移動させる。
deleteとすると完全に消すイメージになるので
removeを使うと削除ではないことがわかりやすいからだとか。
コマンドでファイル削除にrm(removeの略)を使ったりするからなんか違和感が^_^;
参考サイト