package Ġcom . flip per devices . bridge . impl . utils Ċ Ċ import Ġcom . flip per devices . protobuf . Flip per Ċ import Ġcom . flip per devices . protobuf . main Ċ import Ġcom . flip per devices . protobuf . status . ping Request Ċ import Ġcom . flip per devices . protobuf . storage . file Ċ import Ġcom . flip per devices . protobuf . storage . write Request Ċ import Ġcom . google . protobuf . ByteString Ċ import Ġjava . io . ByteArray OutputStream Ċ import Ġjava . nio . ByteBuffer Ċ import Ġorg . junit . Assert Ċ import Ġorg . junit . Before Ċ import Ġorg . junit . Test Ċ Ċ class ĠByte End less InputStream Test Ġ{ ĊĠĠĠ Ġlateinit Ġvar Ġsubject : ĠByte End less InputStream ĊĊĠĠĠ Ġ@ Before ĊĠĠĠ Ġfun ĠsetUp () Ġ{ ĊĠĠĠĠĠĠĠ Ġsubject Ġ= ĠByte End less InputStream () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Input Ġbytes Ġequal Ġoutput Ġbytes `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠtestData Ġ= ĠInt Array ( size Ġ= Ġ 1 0 0 ) Ġ{ Ġit Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġbuffer Ġ= ĠByteBuffer . allocate ( testData . size Ġ* ĠInt . SIZE _ BYTES ) ĊĠĠĠĠĠĠĠ ĠtestData . forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuffer . put Int ( it ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġsubject . write ( buffer . array ()) ĊĊĠĠĠĠĠĠĠ Ġval Ġoutput Buffer Ġ= ĠByteBuffer . allocate ( testData . size Ġ* ĠInt . SIZE _ BYTES ) ĊĠĠĠĠĠĠĠ Ġrepeat ( testData . size ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoutput Buffer . put Int ( subject . read ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( buffer , Ġoutput Buffer ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Write Ġread Ġprotobuf Ġmessage `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmessage Ġ= Ġmain Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġping Request Ġ= Ġping Request Ġ{} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġmessage Bytes Ġ= ĠByteArrayOutputStream (). use Ġ{ Ġos Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmessage . write Delimited To ( os ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ use Ġos . toByteArray () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġsubject . write ( message Bytes ) ĊĊĠĠĠĠĠĠĠ Ġval Ġactual Message Ġ= ĠFlip per . Main . parse Delimited From ( subject ) ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( message , Ġactual Message ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Write Ġread Ġlarge Ġprotobuf Ġmessage `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmessage Ġ= Ġmain Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstorage Write Request Ġ= Ġwrite Request Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfile Ġ= Ġfile Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdata Ġ= ĠByte String . copyFrom ( ByteArray ( size Ġ= Ġ 1 0 0 0 0 ) Ġ{ Ġit . to Byte () Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġmessage Bytes Ġ= ĠByteArrayOutputStream (). use Ġ{ Ġos Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmessage . write Delimited To ( os ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ use Ġos . toByteArray () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġsubject . write ( message Bytes ) ĊĊĠĠĠĠĠĠĠ Ġval Ġactual Message Ġ= ĠFlip per . Main . parse Delimited From ( subject ) ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( message , Ġactual Message ) ĊĠĠĠ Ġ} Ċ } Ċ