public void WhenRegisteringAnIdentifier_ItIsRegisteredByKebabCase() { var definition = new IdentifierDefinition("Test Me", new StringDefinitionType()); registry.Add(definition); Assert.Equal(definition, registry["test-me"]); }
public void StringMarshaller_CorrectlyMarshalsFromXml( IDefinitionType definitionType, object expected, string innerXml) { var definition = new IdentifierDefinition("Identifier", definitionType); var marshaller = CreateMarshallerFor(definition); var identifier = marshaller.MarshallFromXml(new XElement("identifier", innerXml)); Assert.Equal(expected, identifier.Value.Value ); }
) CompositeIdentifierDefinition() { var stringIdentifierDefinition = new IdentifierDefinition("String", new StringDefinitionType()); var dateIdentifierDefinition = new IdentifierDefinition("Date", new DateDefinitionType()); var compositeIdentifierDefinition = new IdentifierDefinition( "Composite", new CompositeDefinitionType( stringIdentifierDefinition, dateIdentifierDefinition)); return(compositeIdentifierDefinition, stringIdentifierDefinition, dateIdentifierDefinition); }
private void SetIdentifierDefinition(MemberInfo member) { if (!(Attribute is IdentifierAttribute identifierAttribute)) { throw new StemAttributeSetupException("Attribute used a resolver for a FieldAttribute, but was not a FieldAttribute."); } string name = identifierAttribute.Name ?? identifierAttribute.GetDefaultName(member.Name); IdentifierDefinition = Definition.IdentifierDefinitions.GetOrCreate(name); IdentifierDefinition.ExactValue = identifierAttribute.Exactly; }
private PersonIdentifierEntity IdentifierEntity( PersonEntity personEntity, IdentifierDefinition identifierDefinition, string value, AuthorityEntity authority) { return(new PersonIdentifierEntity { Person = personEntity, TypeName = identifierDefinition.SystemName, Value = MarshallValue(identifierDefinition, value), ValueType = identifierDefinition.Type.SystemName, Authority = authority ?? defaultAuthority }); }
public void CreatesStringIdentifierMarshaller(IDefinitionType type) { var identifierDefinition = new IdentifierDefinition("test", type); var creator = new IdentifierXmlMarshallerCreator <PersonIdentifier, IdentifierDefinition>(); identifierDefinition.Accept(creator); Assert.Contains("test", creator.Marshallers.Keys); var marshaller = creator.Marshallers["test"]; var stringMarshaller = Assert.IsType <IdentifierXmlElementMarshaller <PersonIdentifier, IdentifierDefinition> >(marshaller); Assert.Equal(identifierDefinition, stringMarshaller.Definition); }
public static IIdentifierXmlMarhsaller <PersonIdentifier, IdentifierDefinition> CreateXmlMarshaller(this IdentifierDefinition definition) { var creator = new IdentifierXmlMarshallerCreator <PersonIdentifier, IdentifierDefinition>(); definition.Accept(creator); return(creator.Marshallers.Values.Single()); }
private static string MarshallValue(IdentifierDefinition definition, string value) { return(definition.CreateXmlMarshaller() .MarshallToXml(Identifiers.PersonIdentifier(value, definition)) .ToString(SaveOptions.DisableFormatting)); }
ContainSingleIdentifierValue( this GenericCollectionAssertions <PersonIdentifierEntity> assertions, IdentifierDefinition definition, string value, bool deleted = false ) => assertions.ContainSingleMarshalledIdentifierValue(definition, MarshallValue(definition, value), deleted);
public void CorrectlyParsesIdentifiers(string definitionString, IdentifierDefinition expected) { var definition = parser.ParseString(definitionString); definition.Should().BeEquivalentTo(expected); }
private static IIdentifierXmlMarhsaller <PersonIdentifier, IdentifierDefinition> CreateMarshallerFor(IdentifierDefinition identifierDefinition) { var marshallerCreator = new IdentifierXmlMarshallerCreator <PersonIdentifier, IdentifierDefinition>(); identifierDefinition.Accept(marshallerCreator); return(marshallerCreator.Marshallers.Values.Single()); }
private static string MarshallValue(IdentifierDefinition identifierDefinition, string value) { return(new IdentifierXmlElementMarshaller <PersonIdentifier, IdentifierDefinition>(identifierDefinition) .MarshallToXml(Identifiers.PersonIdentifier(value, identifierDefinition)) .ToString(SaveOptions.DisableFormatting)); }
private IPersonIdentifierDisplayHandler GetDisplayHandler(IdentifierDefinition identifierType) => HandlerProvider.GetDisplayHandler(identifierType);
public IdentifierFactory(IdentifierDefinition definition) { _definition = definition; }