package Ġse . g ust av kar l sson . k rate . core Ċ Ċ import Ġassert k . assert Ċ import Ġassert k . assertions . isEqualTo Ċ import Ġorg . junit . Test Ċ Ċ class ĠTyped Reducer Test Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġimpl Ġ= ĠTyped Reducer < Long , ĠNumber , ĠInt >( Int :: class . java ObjectType ) Ġ{ Ġstate , Ġresult Ġ-> ĊĠĠĠĠĠĠĠ Ġstate Ġ+ Ġresult ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` non Ġmatching Ġtype Ġwill Ġbe Ġignored `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġimpl ( 0 , Ġ 2 . 0 ) ĊĊĠĠĠĠĠĠĠ Ġassert ( result ). isEqualTo ( 0 L ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` matching Ġtype Ġwill Ġbe Ġconsumed `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġimpl ( 0 , Ġ 2 ) ĊĊĠĠĠĠĠĠĠ Ġassert ( result ). isEqualTo ( 2 L ) ĊĠĠĠ Ġ} Ċ } Ċ