예제 #1
0
 public void NotFound()
 {
     const String contentType = "application/unknow";
     var configuration = new SerializationConfiguration();
     var serializer = configuration.Create(contentType);
     Assert.IsType<NullSerializer>(serializer);
 }
예제 #2
0
 public void DefaultSerializer()
 {
     const String contentType = "application/json";
     var configuration = new SerializationConfiguration();
     var serializer = configuration.Create(contentType);
     Assert.IsType<JsonSerializer>(serializer);
 }
예제 #3
0
        internal static ISerializer CreateSerializer(this IBasicProperties source,
                                                     SerializationConfiguration configuration)
        {
            if (configuration == null)
                throw new ArgumentNullException(nameof(configuration));

            return configuration.Create(source.ContentTypeOrDefault(SerializationConfiguration.DefaultContentType));
        }
예제 #4
0
 public void CustomMap()
 {
     const String contentType = "application/dummy";
     var configuration = new SerializationConfiguration();
     configuration.Map(header => header.MediaType == contentType, new FakeSerializer());
     var serializer = configuration.Create(contentType);
     Assert.IsType<FakeSerializer>(serializer);
 }
예제 #5
0
 public void CustomNegotiation()
 {
     const String contentType = "application/custom";
     var configuration = new SerializationConfiguration();
     configuration.Map(_ => _.MediaType == "application/custom", new FakeSerializer());
     var negotiator = new Mock<IContentNegotiator>();
     var @set = new SortedSet<ContentNegotiator.MediaTypeHeader>();
     @set.Add(ContentNegotiator.MediaTypeHeader.Parse(contentType));
     negotiator.Setup(_ => _.Negotiate(contentType))
               .Returns(@set);
     configuration.NegotiateBy(negotiator.Object);
     var serializer = configuration.Create(contentType);
     Assert.IsType<FakeSerializer>(serializer);
 }
예제 #6
0
 public void ExceptionOnResolve()
 {
     const String type = "fake-type";
     var serializationConfiguration = new SerializationConfiguration();
     var resolver = new Mock<IMessageTypeResolver>();
     resolver.Setup(_ => _.Resolve(It.Is<ConsumedMessageContext>(__ => __.MessageType == type)))
             .Throws<Exception>();
     var builder = new ConsumedMessageBuilder(serializationConfiguration, resolver.Object);
     var message = builder.Build(new BasicDeliverEventArgs
                                     {
                                         BasicProperties = new BasicProperties { Type = type }
                                     });
     Assert.IsType<UnresolvedMessage>(message);
 }
예제 #7
0
 internal ISerializer CreateSerializer(SerializationConfiguration configuration)
 {
     return _args.BasicProperties.CreateSerializer(configuration);
 }
예제 #8
0
 internal EnvironmentConfiguration()
 {
     IdGenerator = new NewGuid();
     SerializationConfiguration = new SerializationConfiguration();
 }
예제 #9
0
 internal ConsumedMessageBuilder(SerializationConfiguration serializarionconfiguration,
                                 IMessageTypeResolver resolver)
 {
     _serializarionconfiguration = serializarionconfiguration;
     _resolver = resolver;
 }
예제 #10
0
 internal EnvironmentConfiguration()
 {
     IdGenerator = new NewGuid();
     SerializationConfiguration = new SerializationConfiguration();
 }