package Ġcom . github . ch ristop h pick l . k pot p our ri . common . reflection Ċ Ċ import Ġcom . github . ch ristop h pick l . k pot p our ri . test 4 k . ham k rest _ matcher . contains Exactly In Any Order Ċ import Ġcom . github . ch ristop h pick l . k pot p our ri . test 4 k . ham k rest _ matcher . should Match Value Ċ import Ġcom . nat pr y ce . ham k rest . assertion . assertThat Ċ import Ġorg . testng . annotations . Test Ċ Ċ @ Test Ġclass ĠReflect or Impl Test Ġ{ ĊĊĠĠĠ Ġfun Ġ` lookup Class Ġtests `() Ġ{ ĊĠĠĠĠĠĠĠ ĠReflect or Impl (). lookup Class (" java . lang . String ") Ġshould Match Value ĠString :: class . java ĊĠĠĠĠĠĠĠ ĠReflect or Impl (). lookup Class (" not _ found ") Ġshould Match Value Ġnull ĊĠĠĠ Ġ} Ċ Ċ } Ċ Ċ @ Test Ġclass ĠReflection Kt Test Ġ{ ĊĠĠĠĠĊĠĠĠ Ġfun Ġ` properties OfType Ġsun sh ine `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsub Instance Ġ= ĠSub () ĊĠĠĠĠĠĠĠ Ġval Ġsuper Instance Ġ= ĠSuper () ĊĠĠĠĠĠĠĠ Ġval Ġtest ee Ġ= ĠHas Properties ( sub Instance Ġ= Ġsub Instance , Ġsuper Instance Ġ= Ġsuper Instance ) ĊĠĠĠĠĠĠĠĠĊĠĠĠĠĠĠĠ Ġval Ġstrings Ġ= Ġproperties OfType < Has Properties , ĠSuper >( test ee ) ĊĠĠĠĠĠĠĠĠĊĠĠĠĠĠĠĠ ĠassertThat ( strings , Ġcontains Exactly In Any Order ( sub Instance Ġas ĠSuper , Ġsuper Instance )) ĊĠĠĠ Ġ} ĊĠĠĠĠ Ċ } Ċ Ċ @ Suppress (" unused ") Ċ internal Ġclass ĠHas Properties ( ĊĠĠĠ Ġval Ġignored : ĠInt Ġ= Ġ 0 , ĊĠĠĠ Ġval Ġsuper Instance : ĠSuper , ĊĠĠĠ Ġval Ġsub Instance : ĠSub Ċ ) Ċ Ċ internal Ġopen Ġclass ĠSuper Ċ internal Ġclass ĠSub Ġ: ĠSuper () Ċ