package Ġarrow . opt ics . instances Ċ Ċ import Ġarrow . core . Option Ċ import Ġarrow . core . List K Ċ import Ġarrow . core . extensions . list k . eq . eq Ċ import Ġarrow . core . extensions . option . eq . eq Ċ import Ġarrow . core . test . Unit Spec Ċ import Ġarrow . core . test . generators . either Ċ import Ġarrow . core . test . generators . function A To B Ċ import Ġarrow . opt ics . Traversal Ċ import Ġarrow . opt ics . either Ċ import Ġarrow . opt ics . test . l aws . Traversal L aws Ċ import Ġarrow . type classes . Eq Ċ import Ġio . kot lint est . properties . Gen Ċ Ċ class ĠEither Instance Test Ġ: ĠUnit Spec () Ġ{ ĊĊĠ Ġinit Ġ{ ĊĊĠĠĠ Ġtest L aws ( ĊĠĠĠĠĠ ĠTra versal L aws . l aws ( ĊĠĠĠĠĠĠĠ Ġtraversal Ġ= ĠTra versal . either (), ĊĠĠĠĠĠĠĠ Ġa Gen Ġ= ĠGen . either ( Gen . string (), ĠGen . int ()), ĊĠĠĠĠĠĠĠ Ġb Gen Ġ= ĠGen . int (), ĊĠĠĠĠĠĠĠ Ġfunc Gen Ġ= ĠGen . function A To B ( Gen . int ()), ĊĠĠĠĠĠĠĠ ĠE QA Ġ= ĠEq . any (), ĊĠĠĠĠĠĠĠ ĠE Q Option B Ġ= ĠOption . eq ( Eq . any ()), ĊĠĠĠĠĠĠĠ ĠE Q List B Ġ= ĠList K . eq ( Eq . any ()) ĊĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ) ĊĠ Ġ} Ċ } Ċ