scalaprops

scalapropsというテストライブラリをscala-native対応させてリリースした

世界初のscala-native用テストライブラリ! といっても過言ではない。*1 github.com *1:maven centralにpublishされているものとしては。scala-native version 0.3.0 時点で、maven centralにはpublishされていないが、scala-native内部のみで使っているとて…

scalapropsでテストが失敗した場合にseedを表示して失敗するテストパターンが簡単に再現できる仕組みを入れた

普通に使っていれば影響ないけれど、一応細かい互換は壊れているので、0.3.6から0.4.0と、0.x.yのxの部分を上げてリリースしました。 https://github.com/scalaprops/scalaprops/tree/v0.4.0 https://github.com/scalaprops/sbt-scalaprops/tree/v0.2.0

scalaprops-shapelessというライブラリをリリースした

https://github.com/scalaprops/scalaprops-shapelessscalacheck-shapelessというのがあるので、それを移植しました。

scalazとscalapropsとmsgpack4zを全部Scala.js対応した

やっと出しました。めでたい

今日のscalaprops言及されてた情報(その2)

以前もそんなの書いた気がするけど、メモ代わりにまた書いておく

Cogenが入った新しいscalacheckがリリースされたけれどバグってるみたいだし我慢の限界なのでscalazの全てのテストをscalapropsベースで書き換えたい件

https://github.com/scalaz/scalaz/issues/1096 https://github.com/scalaz/scalaz/pull/1095 https://github.com/rickynils/scalacheck/issues/218

Scala祭でscalatest作者とproperty based testingの話をした

明らかに祭の1日目の一番の収穫でした。

scalaz.Treeとカタラン数。そして代数的データ型とzipperと微分

1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900・・・ という数列を知ってますか?カタラン数と言うらしいです。

今日のscalaprops言及されてた情報

記念(?)に貼り付けておくだけのエントリ

ContravariantやInvariantなApplicativeとscalaz.Equal, Orderとscalaprops.Cogenと各種シリアライザ―(scodec, argonaut, play-json, msgpack4z)

タイトルにわざと色々詰め込んでとても長くしてみましたが、一言で言うとContravariantなApplicative使うとそれらが共通化出来て便利なことに気がついたのでpull reqしました。という内容です。

昔のQuickCheckのArbitraryにはcoarbitraryメソッドがあった件

標題のことに今更気がついて、少し想定外だったので、それをメモするだけのものです。

関数型Scalaという勉強会でproperty based testingについて話をした

Scalaの勉強会で半分くらいHaskellの話してすいませんでした。http://xuwei-k.github.io/slides/scalaprops/

猫とscalazとscalacheckとscalapropsと私

さて、このあたりのこと色々ありすぎて書ききれないんですが、たまには少し書いておこうという気になったので書いておきます。

scalazのTraverseとStateモナドを使ってTreeの重複を削除(もしくはdirected acyclic graphをtreeに変換)する話(scalapropsの内部実装)

タイトルを無闇に長くしていくスタイル

sbtで重複を許可しないparserを作る

"重複を許可しない" という言葉だけだと、何言ってるかわからないと思いますが、少しタイトル長くした程度ではいずれにせよ理解してもらえなそうだったので、こういうタイトルになりました。

scalapropsというproperty based testingのライブラリをリリースしました

https://github.com/scalaprops/scalaprops *1 *1:最初organization作ってませんでしたが、途中から専用organization作りました