/* Ċ Ġ* ĠCopyright Ġ 2 0 1 6 - 2 0 1 9 ĠJetBrains Ġs . r . o . ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense . Ċ Ġ*/ Ċ Ċ package Ġkotlinx . coroutines . flow Ċ Ċ import Ġkotlinx . coroutines .* Ċ import Ġkotlin . test .* Ċ Ċ class ĠIndexed Test Ġ: ĠTest Base () Ġ{ ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest With Index () Ġ= Ġrun Test Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġflow Ġ= Ġflow Of ( 3 , Ġ 2 , Ġ 1 ). with Index () ĊĠĠĠĠĠĠĠ ĠassertEquals ( listOf ( Indexed Value ( 0 , Ġ 3 ), ĠIndexed Value ( 1 , Ġ 2 ), ĠIndexed Value ( 2 , Ġ 1 )), Ġflow . toList ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest With Index Empty () Ġ= Ġrun Test Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġflow Ġ= Ġempty Flow < Int >(). with Index () ĊĠĠĠĠĠĠĠ ĠassertEquals ( emptyList (), Ġflow . toList ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Collect Indexed () Ġ= Ġrun Test Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= ĠArrayList < Indexed Value < Long >>() ĊĠĠĠĠĠĠĠ Ġflow Of ( 3 L , Ġ 2 L , Ġ 1 L ). collect Indexed Ġ{ Ġindex , Ġvalue Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult . add ( Indexed Value ( index , Ġvalue )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠassertEquals ( listOf ( Indexed Value ( 0 , Ġ 3 L ), ĠIndexed Value ( 1 , Ġ 2 L ), ĠIndexed Value ( 2 , Ġ 1 L )), Ġresult ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Collect Indexed Empty Flow () Ġ= Ġrun Test Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġflow Ġ= Ġflow < Int > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġexpect ( 1 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġflow . collect Indexed Ġ{ Ġ_, Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġexpect Un re ached () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfinish ( 2 ) ĊĠĠĠ Ġ} Ċ } Ċ