Class Reactive3TestUtils
java.lang.Object
org.apache.hc.core5.testing.reactive.Reactive3TestUtils
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final byte[]
The range from which to generate random data. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic io.reactivex.rxjava3.core.Single
<Reactive3TestUtils.StreamDescription> consumeStream
(org.reactivestreams.Publisher<ByteBuffer> publisher) Consumes the given stream and returns a data structure containing its length and digest.static String
getStreamHash
(long length) Computes the hash of the deterministic stream (as produced byproduceStream(long)
).private static MessageDigest
static io.reactivex.rxjava3.core.Flowable
<ByteBuffer> produceStream
(long length) Produces a deterministic stream of bytes, in randomly sized chunks of up to 128kB.static io.reactivex.rxjava3.core.Flowable
<ByteBuffer> produceStream
(long length, int maximumBlockSize, AtomicReference<String> hash) Produces a deterministic stream of bytes, in randomly sized chunks, while computing the hash of the random data.static io.reactivex.rxjava3.core.Flowable
<ByteBuffer> produceStream
(long length, AtomicReference<String> hash) Produces a deterministic stream of bytes, in randomly sized chunks of up to 128kB, while computing the hash of the random data.
-
Field Details
-
RANGE
private static final byte[] RANGEThe range from which to generate random data.
-
-
Constructor Details
-
Reactive3TestUtils
public Reactive3TestUtils()
-
-
Method Details
-
produceStream
Produces a deterministic stream of bytes, in randomly sized chunks of up to 128kB.- Parameters:
length
- the number of bytes in the stream- Returns:
- a reactive stream of bytes
-
produceStream
public static io.reactivex.rxjava3.core.Flowable<ByteBuffer> produceStream(long length, AtomicReference<String> hash) Produces a deterministic stream of bytes, in randomly sized chunks of up to 128kB, while computing the hash of the random data.- Parameters:
length
- the number of bytes in the streamhash
- an output argument for the hash, set when the end of the stream is reached; ifnull
, the hash will not be computed- Returns:
- a reactive stream of bytes
-
produceStream
public static io.reactivex.rxjava3.core.Flowable<ByteBuffer> produceStream(long length, int maximumBlockSize, AtomicReference<String> hash) Produces a deterministic stream of bytes, in randomly sized chunks, while computing the hash of the random data.- Parameters:
length
- the number of bytes in the streammaximumBlockSize
- the maximum size of anyByteBuffer in the stream
hash
- an output argument for the hash, set when the end of the stream is reached; ifnull
, the hash will not be computed- Returns:
- a reactive stream of bytes
-
getStreamHash
Computes the hash of the deterministic stream (as produced byproduceStream(long)
). -
consumeStream
public static io.reactivex.rxjava3.core.Single<Reactive3TestUtils.StreamDescription> consumeStream(org.reactivestreams.Publisher<ByteBuffer> publisher) Consumes the given stream and returns a data structure containing its length and digest. -
newMessageDigest
-