ラベル Test の投稿を表示しています。 すべての投稿を表示
ラベル Test の投稿を表示しています。 すべての投稿を表示

2018-01-07

Excelでデータ加工したら、コマンド一発でJSONとして生成するやーつ

次ネタデータ管理をJSONに任せるための、副生産物のアルファ版をupした。
Jsonic 0.0.9

調べた限りでは、データを書くだけ書いて階層構造でJSONをバリッと一発変換するのになかなかどれも帯襷問題を抱えていたので、正月返上で作ってみた。
おかげでまたもや昼夜逆転。

Excelでデータの分布見ながらテストデータセット作ったり、発生頻度のチューニングと解析、グラフから逆変換もできるはず。
いやこの場合、偉いのはExcelだけれど、統計やvisualizeなんかは得意なやつに任せればいいと思う。世の中いくらでもそれ系のツールはあるし。

手始めにExcelを選んだ理由は、シートに分けて設計思想のmap'n reduceできるところ。



あとユニットテストと、jsonschema snipetsから成立したでかいschemaを生成すればit.1.1完了
nullの扱いとプロシージャ拡張はなんとかせねば。。。。

これ単体をバックエンドにおいて、MASに出してみようかしら。

2016-11-08

specs2 AcceptanceSpecification 覚え書き(2)

嘘書いてるかもしれないので、カテゴリーにHackを付けました。


あくまでHackingの結果をだらだらと書いた、個人的なメモです。


ggってたどり着いた人は気をつけてください。 


で、本題。


普通に引数を渡せる事が発覚。これでコード量がだいぶ減るー


def acceptSw(sw:String) = BlackQuill.main(Array(sw))


メイン関数でも普通に渡せますね。なるほど。 


 


specs2 AcceptanceSpecification 覚え書き

状態遷移のテストがしたくて、いろいろ調べた。


あるobjectに状態を与えたい時はこう書くらしい。


  "This is a spec to check status of Flags" ^
  p^
  "When BlackQuill.main accept '--help' should"  ^ //状態1
  "'BlackQuill.Switches.stdin' must be False" ! isStdinFalse ^
  "'BlackQuill.Switches.stdout' must be False" ! isStdoutFalse ^
  "'BlackQuill.Switches.force' must be False" ! isForceFalse ^
  "'BlackQuill.Switches.output' must be False" ! isOutputFalse ^
  "'BlackQuill.Switches.verbose' must be False" ! isVerboseFalse ^
  "'BlackQuill.Switches.encFlag' must be False" ! isEncFlagFalse ^
  endp^
  "BlackQuill.main should" ^
  "BlackQuill is destroyed" ;init //初期化して状態2に移る
  "When BlackQuill.main accept '--h'" ;accepthSw
  "'BlackQuill.Switches.stdin' must be False" ! isStdinFalse ^
  "'BlackQuill.Switches.stdout' must be False" ! isStdoutFalse ^
  "'BlackQuill.Switches.force' must be False" ! isForceFalse ^
  "'BlackQuill.Switches.output' must be False" ! isOutputFalse ^
  "'BlackQuill.Switches.verbose' must be False" ! isVerboseFalse ^
  "'BlackQuill.Switches.encFlag' must be False" ! isEncFlagFalse ^
  end


 


状態変化というか、返り値チェックしない関数は;で書いて^がいらないらしい。ドキュメントの中かなり探したけどどこかに書いてあるのかしら?


ggってもよくわからず。結局コンパイラが教えてくれた。