package Ġarrow . meta . ide . plugins . pro ofs . fold ing Ċ Ċ import Ġarrow . meta . ide . Ide Meta Plugin Ċ import Ġarrow . meta . ide . testing . Ide Test Ċ import Ġarrow . meta . ide . testing . Source Ċ import Ġarrow . meta . ide . testing . env . Ide Test SetUp Ċ import Ġarrow . meta . ide . testing . env . ide Test Ċ import Ġcom . intellij . lang . fold ing . Fold ing Descriptor Ċ import Ġcom . intellij . test Framework . fixtures . Code Insight TestFixture Ċ import Ġorg . junit . Test Ċ Ċ class ĠFold ing Builder Test Ġ: ĠIde Test SetUp () Ġ{ ĊĠ Ġ@ Test ĊĠ Ġfun Ġ` fold ing Ġbuilder Ġtest Ġfor ĠUnion Ġand ĠTuple Ġtypes `() Ġ= ĊĠĠĠ Ġide Test ( ĊĠĠĠĠĠ Ġmy Fixture Ġ= Ġmy Fixture , ĊĠĠĠĠĠ Ġctx Ġ= ĠIde Meta Plugin () ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠ ĠlistOf < Ide Test < Ide Meta Plugin , ĠList < Fold ing Descriptor >> >( ĊĠĠĠĠĠĠĠ ĠIde Test ( ĊĠĠĠĠĠĠĠĠĠ Ġcode Ġ= ĠFold ing Builder Test Code . union Code , ĊĠĠĠĠĠĠĠĠĠ Ġtest Ġ= Ġ{ Ġcode : ĠSource , Ġmy Fixture : ĠCode Insight TestFixture , Ġctx : ĠIde Meta Plugin Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmy Fixture . add File To Project (" arrow / un ions . kt ", ĠFold ing Builder Test Code . union Prelude ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcollect Fold ing ( code , Ġmy Fixture ) Ġ{ Ġit . union Type Matches () Ġ} ĊĠĠĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠĠĠ Ġresult Ġ= Ġresolves When (" Un ions Ġfold ing Builder Ġshould Ġreturn Ġ 3 Ġfold ing Ġregions ") Ġ{ Ġresult : ĠList < Fold ing Descriptor > Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult . size Ġ== Ġ 5 Ġ&& ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult [ 0 ]. placeholder Text Ġ== Ġ" String Ġ| ĠInt Ġ| ĠDouble " Ġ&& ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult [ 1 ]. placeholder Text Ġ== Ġ" String Ġ| ĠInt Ġ| ĠDouble " Ġ&& ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult [ 2 ]. placeholder Text Ġ== Ġ" String Ġ| ĠInt Ġ| ĠDouble Ġ| ĠLong " Ġ&& ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult [ 3 ]. placeholder Text Ġ== Ġ" null Ġ| ĠString Ġ| ĠInt Ġ| ĠDouble " Ġ&& ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult [ 4 ]. placeholder Text Ġ== Ġ" null Ġ| ĠString Ġ| ĠInt Ġ| ĠDouble Ġ| ĠChar Ġ| Ġ..." ĊĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠ ĠIde Test ( ĊĠĠĠĠĠĠĠĠĠ Ġcode Ġ= ĠFold ing Builder Test Code . tuple Code , ĊĠĠĠĠĠĠĠĠĠ Ġtest Ġ= Ġ{ Ġcode : ĠSource , Ġmy Fixture : ĠCode Insight TestFixture , Ġctx : ĠIde Meta Plugin Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmy Fixture . add File To Project (" arrow / tuples / tuples . kt ", ĠFold ing Builder Test Code . tuple Prelude ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcollect Fold ing ( code , Ġmy Fixture ) Ġ{ Ġit . tuple Type Matches () Ġ} ĊĠĠĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠĠĠ Ġresult Ġ= Ġresolves When (" Tuples Ġfold ing Builder Ġshould Ġreturn Ġ 3 Ġfold ing Ġregions ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . size Ġ== Ġ 3 ĊĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ }