Best Kotest code snippet using io.kotest.property.arbitrary.bytes.Arb.Companion.byteArray
ExternalizableHttpHeadersTest.kt
Source:ExternalizableHttpHeadersTest.kt  
1/*2 * Copyright (C) 2022 Edgar Asatryan3 *4 * Licensed under the Apache License, Version 2.0 (the "License");5 * you may not use this file except in compliance with the License.6 * You may obtain a copy of the License at7 *8 *     http://www.apache.org/licenses/LICENSE-2.09 *10 * Unless required by applicable law or agreed to in writing, software11 * distributed under the License is distributed on an "AS IS" BASIS,12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.13 * See the License for the specific language governing permissions and14 * limitations under the License.15 */16package io.github.nstdio.http.ext17import io.github.nstdio.http.ext.BinaryMetadataSerializer.ExternalizableHttpHeaders18import io.github.nstdio.http.ext.Headers.ALLOW_ALL19import io.kotest.assertions.throwables.shouldThrowExactly20import io.kotest.matchers.shouldBe21import io.kotest.matchers.throwable.shouldHaveMessage22import io.kotest.property.Arb23import io.kotest.property.arbitrary.list24import io.kotest.property.arbitrary.map25import io.kotest.property.arbitrary.next26import io.kotest.property.arbitrary.string27import org.junit.jupiter.api.Test28import org.junit.jupiter.params.ParameterizedTest29import org.junit.jupiter.params.provider.MethodSource30import org.junit.jupiter.params.provider.ValueSource31import java.io.ByteArrayInputStream32import java.io.ByteArrayOutputStream33import java.io.IOException34import java.io.ObjectInput35import java.io.ObjectInputStream36import java.io.ObjectOutputStream37import java.io.OutputStream.nullOutputStream38import java.net.http.HttpHeaders39internal class ExternalizableHttpHeadersTest {40  @ParameterizedTest41  @MethodSource("httpHeaders")42  fun `Should round robin proper headers`(expected: HttpHeaders) {43    //given44    val out = ByteArrayOutputStream()45    //when46    ObjectOutputStream(out).use { it.writeObject(ExternalizableHttpHeaders(expected)) }47    val e = out.toObjectInput().readObject() as ExternalizableHttpHeaders48    //then49    e.headers.shouldBe(expected)50  }51  @Test52  fun `Should throw when large headers`() {53    //given54    val maxHeadersSize = 204855    val headers = Arb.list(Arb.string(16..32), maxHeadersSize..3000)56      .map {57        val map = hashMapOf<String, List<String>>()58        map.putAll(it.zip(Arb.list(Arb.list(Arb.string(), 1..1), it.size..it.size).next()))59        map60      }61      .map { HttpHeaders.of(it, ALLOW_ALL) }62      .next()63    val headersSize = headers.map().size64    //when + then65    shouldThrowExactly<IOException> { nullOutput().writeObject(ExternalizableHttpHeaders(headers)) }66      .shouldHaveMessage(67        "The headers size exceeds max allowed number. Size: $headersSize, Max:1024"68      )69    val out = ByteArrayOutputStream()70    ObjectOutputStream(out).use { it.writeObject(ExternalizableHttpHeaders(headers, false)) }71    shouldThrowExactly<IOException> { out.toObjectInput().readObject() }72      .shouldHaveMessage(73        "The headers size exceeds max allowed number. Size: $headersSize, Max:1024"74      )75  }76  @Test77  fun `Should throw when large header values occures`() {78    //given79    val maxValuesSize = 25680    val headerName = "Content-Type"81    val headers = Arb.list(Arb.string(3..15), maxValuesSize..1000)82      .map { mapOf(headerName to it) }83      .map { HttpHeaders.of(it, ALLOW_ALL) }84      .next()85    val valuesSize = headers.allValues(headerName).size86    //when + then87    shouldThrowExactly<IOException> {88      nullOutput().writeObject(ExternalizableHttpHeaders(headers))89    }.shouldHaveMessage(90      "The values for header '$headerName' exceeds maximum allowed number. Size:$valuesSize, Max:256"91    )92    val out = ByteArrayOutputStream()93    ObjectOutputStream(out).use { it.writeObject(ExternalizableHttpHeaders(headers, false)) }94    shouldThrowExactly<IOException> { out.toObjectInput().readObject() }95      .shouldHaveMessage(96        "The values for header '$headerName' exceeds maximum allowed number. Size:$valuesSize, Max:256"97      )98  }99  @Test100  fun `Should throw if map size is negative`() {101    //given102    val bytes = byteArrayOf(103      // header104      -84, -19, 0, 5, 115, 114, 0, 76, 105, 111, 46, 103, 105, 116, 104, 117, 98, 46,105      110, 115, 116, 100, 105, 111, 46, 104, 116, 116, 112, 46, 101, 120, 116, 46, 66,106      105, 110, 97, 114, 121, 77, 101, 116, 97, 100, 97, 116, 97, 83, 101, 114, 105, 97,107      108, 105, 122, 101, 114, 36, 69, 120, 116, 101, 114, 110, 97, 108, 105, 122, 97,108      98, 108, 101, 72, 116, 116, 112, 72, 101, 97, 100, 101, 114, 115, 0, 0, 13, -80,109      -87, -115, -74, -90, 12, 0, 0, 120, 112, 119, 4,110      // map size111      -1, -1, -1, -42, // decimal: -42112      // block end113      120114    )115    //when116    shouldThrowExactly<IOException> { bytes.toObjectInput().readObject() }117      .shouldHaveMessage("Corrupted stream: map size cannot be negative")118  }119  @ParameterizedTest120  @ValueSource(ints = [0, -1, -100, Int.MIN_VALUE])121  fun `Should throw if list size is invalid`(listSize: Int) {122    //given123    val out = ByteArrayOutputStream()124    val objOut = ObjectOutputStream(out)125    objOut.use {126      it.writeInt(15) // map size127      it.writeUTF("content-type") // header value128      it.writeInt(listSize)129    }130    //when131    shouldThrowExactly<IOException> { ExternalizableHttpHeaders().readExternal(out.toObjectInput()) }132      .shouldHaveMessage("Corrupted stream: list size should be positive")133  }134  private fun ByteArrayOutputStream.toObjectInput(): ObjectInput =135    ObjectInputStream(ByteArrayInputStream(toByteArray()))136  private fun ByteArray.toObjectInput(): ObjectInput = ObjectInputStream(ByteArrayInputStream(this))137  private fun nullOutput() = ObjectOutputStream(nullOutputStream())138  companion object {139    @JvmStatic140    fun httpHeaders(): List<HttpHeaders> {141      return listOf(142        HttpHeaders.of(hashMapOf("Content-Type" to listOf("application/json")), Headers.ALLOW_ALL),143        HttpHeaders.of(144          hashMapOf(145            "Host" to listOf("www.random.org"),146            "User-Agent" to listOf("Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:99.0) Gecko/20100101 Firefox/99.0"),147            "Accept" to listOf(148              "text/html",149              "application/xhtml+xml",150              "application/xml;q=0.9",151              "image/avif",152              "image/webp",153              "*/*;q=0.8"154            ),155            "Accept-Language" to listOf("en-US,en;q=0.5"),156            "Accept-Encoding" to listOf("gzip, deflate, br"),157            "Referer" to listOf("https://www.random.org/integers/"),158            "Connection" to listOf("keep-alive"),159            "Upgrade-Insecure-Requests" to listOf("1"),160            "Sec-Fetch-Dest" to listOf("document"),161            "Sec-Fetch-Mode" to listOf("navigate"),162            "Sec-Fetch-Site" to listOf("same-origin"),163            "Sec-Fetch-User" to listOf("?1"),164            "Cache-Control" to listOf("max-age=0"),165          ), Headers.ALLOW_ALL166        ),167        HttpHeaders.of(hashMapOf(), Headers.ALLOW_ALL)168      )169    }170  }171}...ByteBufferInputStreamTest.kt
Source:ByteBufferInputStreamTest.kt  
1/*2 * Copyright (C) 2022 Edgar Asatryan3 *4 * Licensed under the Apache License, Version 2.0 (the "License");5 * you may not use this file except in compliance with the License.6 * You may obtain a copy of the License at7 *8 *     http://www.apache.org/licenses/LICENSE-2.09 *10 * Unless required by applicable law or agreed to in writing, software11 * distributed under the License is distributed on an "AS IS" BASIS,12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.13 * See the License for the specific language governing permissions and14 * limitations under the License.15 */16package io.github.nstdio.http.ext17import io.kotest.assertions.throwables.shouldThrowExactly18import io.kotest.matchers.booleans.shouldBeTrue19import io.kotest.matchers.collections.shouldBeEmpty20import io.kotest.matchers.ints.shouldBeZero21import io.kotest.matchers.shouldBe22import io.kotest.matchers.throwable.shouldHaveMessage23import io.kotest.property.Arb24import io.kotest.property.arbitrary.int25import io.kotest.property.arbitrary.next26import org.assertj.core.api.Assertions.assertThat27import org.assertj.core.api.Assertions.assertThatIOException28import org.junit.jupiter.api.Assertions29import org.junit.jupiter.api.Assertions.assertEquals30import org.junit.jupiter.api.Assertions.assertThrows31import org.junit.jupiter.api.Named32import org.junit.jupiter.api.RepeatedTest33import org.junit.jupiter.api.Test34import org.junit.jupiter.params.ParameterizedTest35import org.junit.jupiter.params.provider.MethodSource36import java.io.ByteArrayOutputStream37import java.io.IOException38import java.util.stream.IntStream39import java.util.stream.Stream40internal class ByteBufferInputStreamTest {41  private val arbByteBuffer = Arb.byteBuffer(Arb.int(8..32))42  private val arbByteArray = Arb.byteArray(Arb.int(16, 48))43  @ParameterizedTest44  @MethodSource("fullReadingData")45  fun fullReading(bytes: ByteArray) {46    //given47    val s = ByteBufferInputStream()48    Helpers.toBuffers(bytes).forEach(s::add)49    //when50    val available = s.available()51    val actual = s.readAllBytes()52    //then53    available shouldBe bytes.size54    actual.shouldBe(bytes)55  }56  @Test57  fun shouldReturnNegativeWhenInputIsEmpty() {58    //given59    val stream = ByteBufferInputStream()60    stream.add(arbByteBuffer.next())61    //when62    val actual = stream.read(ByteArray(0))63    //then64    actual.shouldBeZero()65  }66  @RepeatedTest(4)67  fun shouldReadSingleProperly() {68    //given69    val s = ByteBufferInputStream()70    val bytes = arbByteArray.next()71    Helpers.toBuffers(bytes).forEach(s::add)72    val out = ByteArrayOutputStream()73    //when74    var read: Int75    while (s.read().also { read = it } != -1) {76      out.write(read)77    }78    //then79    s.read().shouldBe(-1)80    out.toByteArray().shouldBe(bytes)81  }82  @Test83  fun shouldFlipBuffer() {84    //given85    val bytes = arbByteArray.next()86    val stream = ByteBufferInputStream()87    Helpers.toBuffers(bytes)88      .map { it.position(it.limit()) }89      .forEach(stream::add)90    stream.add(ByteArray(0).toBuffer())91    //when92    val actual = stream.readAllBytes()93    //then94    Assertions.assertArrayEquals(bytes, actual)95  }96  @Test97  fun shouldThrowWhenClosed() {98    //given99    val s = ByteBufferInputStream()100    //when101    s.close()102    //then103    assertThatIOException().isThrownBy { s.read() }104    assertThatIOException().isThrownBy { s.read(ByteArray(0)) }105    assertThatIOException().isThrownBy { s.read(ByteArray(5), 0, 5) }106    assertThatIOException().isThrownBy { s.readAllBytes() }107    assertThatIOException().isThrownBy { s.available() }108  }109  @Test110  fun shouldReportAvailable() {111    //given112    val bytes = arbByteArray.next()113    val s = ByteBufferInputStream()114    Helpers.toBuffers(bytes).forEach(s::add)115    //when116    val actual = s.available()117    //then118    assertEquals(bytes.size, actual)119  }120  @Test121  fun shouldReadAllBytes() {122    //given123    val bytes = arbByteArray.next()124    val s = ByteBufferInputStream()125    Helpers.toBuffers(bytes).forEach(s::add)126    //when127    val actual = s.readAllBytes()128    //then129    actual.shouldBe(bytes)130  }131  @Test132  fun shouldThrowWhenRequestedBytesNegative() {133    //given134    val `is` = ByteBufferInputStream()135    //when + then136    assertThrows(IllegalArgumentException::class.java) { `is`.readNBytes(-1) }137  }138  @Test139  fun shouldReadUpToNBytes() {140    //given141    val bytes = arbByteArray.next()142    val count = bytes.size143    val s = ByteBufferInputStream()144    Helpers.toBuffers(bytes).forEach(s::add)145    //when146    val actual = s.readNBytes(count + 1)147    //then148    Assertions.assertArrayEquals(bytes, actual)149  }150  @Test151  fun shouldSupportMark() {152    //given + when + then153    ByteBufferInputStream().markSupported().shouldBeTrue()154  }155  @Test156  fun shouldDumpBuffersToList() {157    //given158    val s = ByteBufferInputStream()159    val buffers = Helpers.toBuffers(arbByteArray.next())160    buffers.forEach(s::add)161    //when162    val actual = s.drainToList()163    //then164    assertEquals(-1, s.read())165    assertThat(actual)166      .hasSameSizeAs(buffers)167      .containsExactlyElementsOf(buffers)168  }169  @Test170  fun `Should not add when closed`() {171    //given172    val s = ByteBufferInputStream().also { it.close() }173    //when174    s.add(arbByteBuffer.next())175    //then176    s.drainToList().shouldBeEmpty()177  }178  @Test179  fun `Should throw when reset called but not marked`() {180    //given181    val s = ByteBufferInputStream()182    //when + then183    shouldThrowExactly<IOException>(s::reset)184      .shouldHaveMessage("nothing to reset")185  }186  @Test187  fun `Should restore marked on reset`() {188    //given189    val bytes = "abcd".toByteArray()190    val s = ByteBufferInputStream().also { it.add(bytes.toBuffer()) }191    //when192    s.mark(2)193    s.read(); s.read()194    s.reset()195    //then196    s.read().shouldBe(bytes[0])197    s.read().shouldBe(bytes[1])198  }199  @Test200  fun `Should drop mark when read limit exceeds`() {201    //given202    val bytes = "abcd".toByteArray()203    val s = ByteBufferInputStream().also { it.add(bytes.toBuffer()) }204    //when205    s.mark(1)206    s.read(); s.read()207    //then208    s.read().shouldBe(bytes[2])209    s.read().shouldBe(bytes[3])210  }211  @Test212  fun `Should drop mark when limit is negative`() {213    //given214    val bytes = "abcd".toByteArray()215    val s = ByteBufferInputStream().also { it.add(bytes.toBuffer()) }216    //when217    s.mark(1)218    s.mark(-1)219    //then220    s.read().shouldBe(bytes[0])221    shouldThrowExactly<IOException> { s.reset() }222      .shouldHaveMessage("nothing to reset")223  }224  companion object {225    @JvmStatic226    fun fullReadingData(): Stream<Named<ByteArray>> {227      return IntStream.of(8192, 16384, 65536)228        .mapToObj { n: Int ->229          Named.named(230            "Size: $n", Arb.byteArray(n).next()231          )232        }233    }234  }235}...JagMessageSerializationByteArrayTest.kt
Source:JagMessageSerializationByteArrayTest.kt  
1/*2 * Copyright 2018-2021 Guthix3 *4 * Licensed under the Apache License, Version 2.0 (the "License");5 * you may not use this file except in compliance with the License.6 * You may obtain a copy of the License at7 *8 *  http://www.apache.org/licenses/LICENSE-2.09 *10 * Unless required by applicable law or agreed to in writing, software11 * distributed under the License is distributed on an "AS IS" BASIS,12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.13 * See the License for the specific language governing permissions and14 * limitations under the License.15 */16package io.guthix.buffer17import io.kotest.core.spec.style.StringSpec18import io.kotest.matchers.shouldBe19import io.kotest.property.Arb20import io.kotest.property.arbitrary.byte21import io.kotest.property.arbitrary.byteArray22import io.kotest.property.arbitrary.int23import io.kotest.property.checkAll24import io.netty.buffer.ByteBufAllocator25import kotlinx.serialization.ExperimentalSerializationApi26import kotlinx.serialization.Serializable27@ExperimentalSerializationApi28@Serializable29private data class ByteArrayTest(30    @JByteArray(10, JByteArrayType.DEFAULT) val default: ByteArray,31    @JByteArray(10, JByteArrayType.REVERSED) val reversed: ByteArray,32    @JByteArray(10, JByteArrayType.ADD) val add: ByteArray,33    @JByteArray(10, JByteArrayType.REVERSED_ADD) val reversedAdd: ByteArray,34) {35    override fun equals(other: Any?): Boolean {36        if (this === other) return true37        if (javaClass != other?.javaClass) return false38        other as ByteArrayTest39        if (!default.contentEquals(other.default)) return false40        if (!reversed.contentEquals(other.reversed)) return false41        if (!add.contentEquals(other.add)) return false42        if (!reversedAdd.contentEquals(other.reversedAdd)) return false43        return true44    }45    override fun hashCode(): Int {46        var result = default.contentHashCode()47        result = 31 * result + reversed.contentHashCode()48        result = 31 * result + add.contentHashCode()49        result = 31 * result + reversedAdd.contentHashCode()50        return result51    }52}53private fun Arb.Companion.byteArray() = byteArray(int(10, 10), byte())54@ExperimentalUnsignedTypes55@ExperimentalSerializationApi56class JagMessageSerializationByteArrayTest : StringSpec({57    "Encode/Decode Test" {58        checkAll(Arb.byteArray(), Arb.byteArray(), Arb.byteArray(), Arb.byteArray()) { default, reversed, add, reversedAdd ->59            val expectedByteBuf = ByteBufAllocator.DEFAULT.jBuffer(0).apply {60                writeBytes(default)61                writeBytesReversed(reversed)62                writeBytesAdd(add)63                writeBytesReversedAdd(reversedAdd)64            }65            try {66                val expectedTest = ByteArrayTest(default, reversed, add, reversedAdd)67                val actualByteBuf = JagMessage.encodeToByteBuf(ByteArrayTest.serializer(), expectedTest)68                try {69                    actualByteBuf shouldBe expectedByteBuf70                    val actualTest = JagMessage.decodeFromByteBuf(ByteArrayTest.serializer(), expectedByteBuf)71                    actualTest shouldBe expectedTest72                } finally {73                    actualByteBuf.release()74                }75            } finally {76                expectedByteBuf.release()77            }78        }79    }80})...bytes.kt
Source:bytes.kt  
1package io.kotest.property.arbitrary2import io.kotest.property.Arb3import io.kotest.property.Gen4import io.kotest.property.bimap5import kotlin.random.nextUInt6/**7 * Returns an [Arb] that produces [Byte]s from [min] to [max] (inclusive).8 * The edge cases are [min], -1, 0, 1 and [max] which are only included if they are in the provided range.9 */10fun Arb.Companion.byte(min: Byte = Byte.MIN_VALUE, max: Byte = Byte.MAX_VALUE): Arb<Byte> =11   arbitrary(byteArrayOf(min, -1, 0, 1, max).filter { it in min..max }.distinct(), ByteShrinker) {12      generateSequence { it.random.nextBytes(1).first() }.filter { it in min..max }.first()13   }14val ByteShrinker = IntShrinker(Byte.MIN_VALUE..Byte.MAX_VALUE).bimap({ it.toInt() }, { it.toByte() })15/**16 * Returns an [Arb] that produces positive [Byte]s from 1 to [max] (inclusive).17 * The edge cases are 1 and [max] which are only included if they are in the provided range.18 */19fun Arb.Companion.positiveByte(max: Byte = Byte.MAX_VALUE): Arb<Byte> = byte(1, max)20/**21 * Returns an [Arb] that produces negative [Byte]s from [min] to -1 (inclusive).22 * The edge cases are [min] and -1 which are only included if they are in the provided range.23 */24fun Arb.Companion.negativeByte(min: Byte = Byte.MIN_VALUE): Arb<Byte> = byte(min, -1)25/**26 * Returns an [Arb] that produces [ByteArray]s where [length] produces the length of the arrays and27 * [content] produces the content of the arrays.28 */29fun Arb.Companion.byteArray(length: Gen<Int>, content: Arb<Byte>): Arb<ByteArray> =30   toPrimitiveArray(length, content, Collection<Byte>::toByteArray)31@Deprecated("use byteArray", ReplaceWith("byteArray(generateArrayLength, generateContents)"))32fun Arb.Companion.byteArrays(generateArrayLength: Gen<Int>, generateContents: Arb<Byte>): Arb<ByteArray> =33   byteArray(generateArrayLength, generateContents)34/**35 * Returns an [Arb] that produces [UByte]s from [min] to [max] (inclusive).36 * The edge cases are [min], 1 and [max] which are only included if they are in the provided range.37 */38fun Arb.Companion.uByte(min: UByte = UByte.MIN_VALUE, max: UByte = UByte.MAX_VALUE): Arb<UByte> =39   arbitrary(listOf(min, 1u, max).filter { it in min..max }.distinct(), UByteShrinker) {40      it.random.nextUInt(min..max).toUByte()41   }42val UByteShrinker = UIntShrinker(UByte.MIN_VALUE..UByte.MAX_VALUE).bimap({ it.toUInt() }, { it.toUByte() })43/**44 * Returns an [Arb] that produces [UByteArray]s where [length] produces the length of the arrays and45 * [content] produces the content of the arrays.46 */47@ExperimentalUnsignedTypes48fun Arb.Companion.uByteArray(length: Gen<Int>, content: Arb<UByte>): Arb<UByteArray> =49   toPrimitiveArray(length, content, Collection<UByte>::toUByteArray)...InputStreamDecompressingBodyHandlerIntegrationTest.kt
Source:InputStreamDecompressingBodyHandlerIntegrationTest.kt  
1/*2 * Copyright (C) 2022 Edgar Asatryan3 *4 * Licensed under the Apache License, Version 2.0 (the "License");5 * you may not use this file except in compliance with the License.6 * You may obtain a copy of the License at7 *8 *     http://www.apache.org/licenses/LICENSE-2.09 *10 * Unless required by applicable law or agreed to in writing, software11 * distributed under the License is distributed on an "AS IS" BASIS,12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.13 * See the License for the specific language governing permissions and14 * limitations under the License.15 */16@file:Suppress("ArrayInDataClass")17package io.github.nstdio.http.ext18import io.kotest.matchers.shouldBe19import io.kotest.property.Arb20import io.kotest.property.arbitrary.map21import io.kotest.property.arbitrary.next22import io.kotest.property.arbitrary.string23import mockwebserver3.MockResponse24import mockwebserver3.MockWebServer25import mockwebserver3.junit5.internal.MockWebServerExtension26import org.junit.jupiter.api.extension.ExtendWith27import org.junit.jupiter.params.ParameterizedTest28import org.junit.jupiter.params.provider.MethodSource29import java.net.http.HttpClient30import java.net.http.HttpRequest31import java.nio.charset.StandardCharsets32@ExtendWith(MockWebServerExtension::class)33internal class InputStreamDecompressingBodyHandlerIntegrationTest(private val mockWebServer: MockWebServer) {34  private val httpClient = HttpClient.newHttpClient()35  @ParameterizedTest36  @MethodSource("compressedData")37  fun shouldCreate(compressedString: CompressedString) {38    //given39    val uri = mockWebServer.url("/data").toUri()40    mockWebServer.enqueue(41      MockResponse()42        .setResponseCode(200)43        .addHeader("Content-Encoding", compressedString.compression)44        .setBody(compressedString.compressed)45    )46    val request = HttpRequest.newBuilder(uri)47      .build()48    //when49    val body = httpClient.send(request, BodyHandlers.ofDecompressing()).body()50    val actual = body.readAllBytes().toString(StandardCharsets.UTF_8)51    //then52    actual shouldBe compressedString.original53  }54  companion object {55    @JvmStatic56    fun compressedData(): List<CompressedString> {57      val stringArb = Arb.string(32..64)58      return listOf(59        stringArb.map { CompressedString(it, "gzip", Compression.gzip(it)) }.next(),60        stringArb.map { CompressedString(it, "deflate", Compression.deflate(it)) }.next()61      )62    }63  }64  internal data class CompressedString(val original: String, val compression: String, val compressed: ByteArray)65}...Arb.Companion.byteArray
Using AI Code Generation
1val byteArrays = Arb.byteArrays()2val byteArrays = Arb.byteArrays(1..100)3val byteArrays = Arb.byteArrays(1..100, 1..100)4val byteArrays = Arb.byteArrays(1..100, 1..100, 1..100)5val byteArrays = Arb.byteArrays(1..100, 1..100, 1..100, 1..100)6val byteArrays = Arb.byteArrays(1..100, 1..100, 1..100, 1..100, 1..100)7val byteArrays = Arb.byteArrays(1..100, 1..100, 1..100, 1..100, 1..100, 1..100)8val byteArrays = Arb.byteArrays(1..100, 1..100, 1..100, 1..100, 1..100, 1..100, 1..100)Arb.Companion.byteArray
Using AI Code Generation
1val arb = Arb.bytes(100)2val arb = Arb.bytes(100, 200)3val arb = Arb.bytes(100, 200, 300)4val arb = Arb.bytes(100, 200, 300, 400)5val arb = Arb.bytes(100, 200, 300, 400, 500)6val arb = Arb.bytes(100, 200, 300, 400, 500, 600)7val arb = Arb.bytes(100, 200, 300, 400, 500, 600, 700)8val arb = Arb.bytes(100, 200, 300, 400, 500, 600, 700, 800)9val arb = Arb.bytes(100, 200, 300, 400, 500, 600, 700, 800, 900)10val arb = Arb.bytes(100, 200, 300, 400, 500, 600, 700, 800, 900, 1000)11val arb = Arb.bytes(100, 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100)12val arb = Arb.bytes(100, 200, 300, 400, 500, 600Arb.Companion.byteArray
Using AI Code Generation
1val arbByteArray = Arb.bytes(1..100).byteArray()2val arbByteArray = Arb.bytes(1..100).byteArray()3val arbByteArray = Arb.bytes(1..100).byteArray()4val arbByteArray = Arb.bytes(1..100).byteArray()5val arbByteArray = Arb.bytes(1..100).byteArray()6val arbByteArray = Arb.bytes(1..100).byteArray()7val arbByteArray = Arb.bytes(1..100).byteArray()8val arbByteArray = Arb.bytes(1..100).byteArray()9val arbByteArray = Arb.bytes(1..100).byteArray()10val arbByteArray = Arb.bytes(1..100).byteArray()11val arbByteArray = Arb.bytes(1..100).byteArray()12val arbByteArray = Arb.bytes(1..100).byteArray()13val arbByteArray = Arb.bytes(1..100).byteArray()14val arbByteArray = Arb.bytes(1..100).byteArray()15val arbByteArray = Arb.bytes(1..100).byteArray()Arb.Companion.byteArray
Using AI Code Generation
1val arb = Arb.byteArray(5, 5)2val result = arb.take(5).toList()3println(result)4val arb = Arb.byteArray(5, 5, 0, 10)5val result = arb.take(5).toList()6println(result)7val arb = Arb.byteArray(5, 5, 0, 10, 5)8val result = arb.take(5).toList()9println(result)10val arb = Arb.byteArray(5, 5, 0, 10, 5)11val result = arb.take(5).toList()12println(result)13val arb = Arb.byteArray(5, 5, 0, 10, 5)14val result = arb.take(5).toList()15println(result)16val arb = Arb.byteArray(5, 5, 0, 10, 5)17val result = arb.take(5).toList()18println(result)19val arb = Arb.byteArray(5, 5, 0, 10, 5)20val result = arb.take(5).toList()21println(result)22val arb = Arb.byteArray(5, 5, 0, 10, 5)23val result = arb.take(5).toList()24println(result)25val arb = Arb.byteArray(Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!
