/// <summary> /// Initializes a new instance of the <see cref="RdfSerializer" /> class. /// </summary> /// <param name="serialization">The output serialization.</param> /// <param name="entitySerializer">The entity serializer.</param> protected RdfSerializer(RdfSerialization serialization, IEntitySerializer entitySerializer) { this.serialization = serialization; this.entitySerializer = entitySerializer; this.nodeFactory = new NodeFactory(); }
public void Should_support_serialization(RdfSerialization serialization) { // given var deserializer = new NonJsonLdRdfBodyDeserializer(A.Fake <IEntitySerializer>()); // when deserializer.CanDeserialize(serialization.MediaType, new BindingContext()); }
/// <summary> /// Replaces blank accept header with Turtle. /// </summary> /// <param name="serialization">The RDF format to return by default.</param> /// <returns>the Accept header coercion convention</returns> public static CoerceAcceptHeaders CoerceBlankAcceptHeader(RdfSerialization serialization) { return((currentAcceptHeaders, context) => { var current = currentAcceptHeaders as Tuple <string, decimal>[] ?? currentAcceptHeaders.ToArray(); return !current.Any() ? new[] { Tuple.Create(serialization.MediaType, 1m) } : current; }); }
public void Deserialize_should_convert_to_ntriples( [ValueSource(nameof(NonJsonLdSerializations))] RdfSerialization serialization, [Values(typeof(Notation3Parser), typeof(TurtleParser), typeof(RdfXmlParser))] Type serializerType) { // given var converter = A.Fake <IRdfConverter>(); var deserializer = new NonJsonLdRdfBodyDeserializer(A.Fake <IEntitySerializer>(), converter); var body = new MemoryStream(); // when deserializer.Deserialize(serialization.MediaType, body, this.bindingContext); // then A.CallTo(() => converter.ConvertToNtriples(body, A <IRdfReader> .That.Matches(rr => rr.GetType() == serializerType))).MustHaveHappened(); }
public async Task ShouldRedirectRDFRequestsToDocument( [ValueSource(nameof(PathsToRedirect))] Tuple <string, string> path, [ValueSource(nameof(RdfMediaTypes))] RdfSerialization media) { // given var expectedReditectLocation = new Uri(BaseUri + string.Format("{0}", path.Item2)); // when var response = await browser.Get(path.Item1, context => { context.Accept(media.MediaType); context.HostName("wikibus.org"); }); // then response.StatusCode.Should().Be(HttpStatusCode.SeeOther); response.Headers["Location"].Should().Be(expectedReditectLocation.ToString()); }
/// <summary> /// Initializes a new instance of the <see cref="RdfResponseProcessor"/> class. /// </summary> /// <param name="serialization">The supported serialization.</param> /// <param name="serializers">The serializers.</param> protected RdfResponseProcessor(RdfSerialization serialization, IEnumerable <ISerializer> serializers) { this.serialization = serialization; this.serializer = serializers.Cast <IRdfSerializer>().FirstOrDefault(s => s.CanSerialize(serialization.MediaType)); }
/// <summary> /// Initializes a new instance of the <see cref="CompressingSerializer" /> class. /// </summary> /// <param name="rdfSerialization">The RDF serialization.</param> /// <param name="entitySerializer">The entity serializer.</param> /// <param name="namespaces">The namespace mapper.</param> protected CompressingSerializer(RdfSerialization rdfSerialization, IEntitySerializer entitySerializer, INamespaceManager namespaces) : base(rdfSerialization, entitySerializer) { this.namespaces = namespaces; }