/// <summary> /// Builds an instance with the provided serializer and constraint. /// </summary> /// <param name="serializer">Serializer used to serialize/deserialize the tested value.</param> /// <param name="constraintOverDeserialized">Constraint to apply to the deserialized object.</param> public SerializationConstraint(IRoundtripSerializer <T> serializer, Constraint constraintOverDeserialized) { _serializer = serializer; _constraintOverDeserialized = ((IResolveConstraint)constraintOverDeserialized).Resolve(); }
/// <summary> /// Builds an instance of <see cref="SerializationConstraint{T}"/> that allows checking the serialization/deserialization of an object. /// </summary> /// <typeparam name="T">Type to be serialized and deserialized.</typeparam> /// <param name="entry">Extension entry point.</param> /// <param name="serializer"></param> /// <param name="constraintOverDeserialized">Constraint to apply to the deserialized object.</param> /// <returns>Instance built.</returns> public static Constraint Serializable <T>(this Must.BeEntryPoint entry, IRoundtripSerializer <T> serializer, Constraint constraintOverDeserialized) { return(new SerializationConstraint <T>(serializer, constraintOverDeserialized)); }