feral-dot-io / protoc-gen-elmer / Protobuf.ElmerTests

Helper types and functions for protoc-gen-elmer codegen. This module should not be used directly.

See the project on how this may be used: https://github.com/feral-dot-io/protoc-gen-elmer

Test runners

runTest : Protobuf.Decode.Decoder data -> (data -> Protobuf.Encode.Encoder) -> data -> Expectation

Executes a test that runs data through an encoder then decodes it. Expect the result to be equal.

Fuzzers

fuzzAny : Fuzzer Google.Protobuf.Any

fuzzApi : Fuzzer Google.Protobuf.Api

fuzzBoolValue : Fuzzer Protobuf.Elmer.BoolValue

fuzzBytes : Fuzzer Bytes

fuzzBytesValue : Fuzzer Protobuf.Elmer.BytesValue

fuzzDoubleValue : Fuzzer Protobuf.Elmer.FloatValue

fuzzDuration : Fuzzer Google.Protobuf.Duration

fuzzEmpty : Fuzzer Google.Protobuf.Empty

fuzzEnum : Fuzzer Google.Protobuf.Enum

fuzzEnumValue : Fuzzer Google.Protobuf.EnumValue

fuzzField : Fuzzer Google.Protobuf.Field

fuzzFieldMask : Fuzzer Google.Protobuf.FieldMask

fuzzField_Cardinality : Fuzzer Google.Protobuf.Cardinality

fuzzField_Kind : Fuzzer Google.Protobuf.Kind

fuzzFloat32 : Fuzzer Basics.Float

Tests float32' exponent (8 bits). Avoids trying to robusly map float64 (JS) -> float32 {-|-}

fuzzFloatValue : Fuzzer Protobuf.Elmer.FloatValue

fuzzInt32 : Fuzzer Basics.Int

fuzzInt32Value : Fuzzer Protobuf.Elmer.Int32Value

fuzzInt64Value : Fuzzer Protobuf.Elmer.Int64Value

fuzzListValue : Fuzzer Google.Protobuf.ListValue

fuzzMethod : Fuzzer Google.Protobuf.Method

fuzzMinInt32 : Basics.Int -> Fuzzer Basics.Int

fuzzMixin : Fuzzer Google.Protobuf.Mixin

fuzzNullValue : Fuzzer Google.Protobuf.NullValue

fuzzOption : Fuzzer Google.Protobuf.Option

fuzzPosInt32 : Fuzzer Basics.Int

fuzzSourceContext : Fuzzer Google.Protobuf.SourceContext

fuzzStringValue : Fuzzer Protobuf.Elmer.StringValue

fuzzStruct : Fuzzer Google.Protobuf.Struct

fuzzSyntax : Fuzzer Google.Protobuf.Syntax

fuzzTimestamp : Fuzzer Time.Posix

fuzzUInt32 : Fuzzer Basics.Int

fuzzUInt32Value : Fuzzer Protobuf.Elmer.UInt32Value

fuzzUInt64Value : Fuzzer Protobuf.Elmer.UInt64Value

fuzzValue : Fuzzer Google.Protobuf.Value

fuzzXType : Fuzzer Google.Protobuf.Type