public void BondSerializer_must_serialize_large_records_marked_with_Bond_schema_attributes(BondSerializerSettings.ProtocolType protocol)
        {
            var large = new ComposedRecord(
                firstName: "John",
                lastName: "Doe",
                records: new []
            {
                new SmallRecord(1, 2),
                new SmallRecord(2, 3),
                new SmallRecord(3, 4),
                new SmallRecord(4, 5),
                new SmallRecord(5, 6),
            });

            var settings   = BondSerializerSettings.Default.WithProtocol(protocol);
            var serializer = new BondSerializer((ExtendedActorSystem)Sys, settings);

            Roundtrip(serializer, large);
        }
        public void BondSerializerSettings_must_apply_correct_protocol_from_HOCON(string protocol, BondSerializerSettings.ProtocolType expected)
        {
            var conf = ConfigurationFactory.ParseString(Common).WithFallback($"akka.actor.serialization-settings.bond {{ protocol = {protocol} }}");

            using (var system = ActorSystem.Create(nameof(SerializerConfigSpec), conf))
            {
                var serializer = (BondSerializer)system.Serialization.FindSerializerForType(typeof(IBond));
                var settings   = serializer.Settings;

                settings.Protocol.Should().Be(expected);
            }
        }
        public void BondSerializer_must_serialize_small_records_marked_with_Bond_schema_attributes(BondSerializerSettings.ProtocolType protocol)
        {
            var settings   = BondSerializerSettings.Default.WithProtocol(protocol);
            var serializer = new BondSerializer((ExtendedActorSystem)Sys, settings);

            Roundtrip(serializer, new SmallRecord(1, 2));
        }