タグ

tddとライブラリに関するslay-tのブックマーク (2)

  • gomockを完全に理解する

    この記事は 3/27 に開催されたCAMPHOR- DAY内で発表した内容を元にした記事です。 アーカイブはこちら(共有してるスライドの画面が黄色くなっていることは終わってから知りました🥺) この記事では gomock や mockgen の基的な使用方法から、 gomock の内部の動きまでを紹介します。この記事を読み終わったあなたは思わずgomock 完全に理解した と言っていることでしょう。 基的にGoの文法を知っていればgomock自体を知らなくても理解できるような説明にしているつもりです。 この記事ではv1.5.0の仕様をもとに話しています。 golang/mock(gomock) とは go 公式が出しているインターフェース定義からモックの生成を行うことができるライブラリです。 生成したモックを扱うパッケージも含まれます。 この先の説明では gomock と呼ぶことにしま

    gomockを完全に理解する
  • HaskellでのTDDを楽しくするライブラリ methodを作りました。

    はじめに Haskellでテスト駆動開発を行う際、純粋な関数は単体テストを書きやすいですが、 返り値がモナドの関数(この記事ではそのような関数をメソッドと呼びます)にたいして単体テストを書くのは簡単ではありません。 今回、メソッドに対して単体テストを書きやすくなるライブラリ methodを作成しました。 methodとは methodでは a1 -> ... -> an -> m b型の関数のことをメソッドと呼びます。 ここでmはモナドです。(->) rモナドを除く大抵のモナドはサポートしていますが、独自のモナドをメソッドにするにはMethod型クラスを実装する必要があります。 モックの作成 methodでは任意のメソッドのモックをDSLで書くことができます。 import Test.Method import RIO (throwString) f,f' :: Int -> String

    HaskellでのTDDを楽しくするライブラリ methodを作りました。
  • 1