public void Initialize_With_Character_Range_Parses_Expected_Lower_Band() { var sut = new SharedDomainModel(new ModelModel(), new ModelName("A domain"), new SharedDomainExpressionModel(" 'a'..'z' ")); var rangeExpressionNode = (RangeDomainExpressionNode)sut.Expression.Node.Inner; Assert.That(rangeExpressionNode.RightExpression, Is.InstanceOf <BandExpressionNode>()); }
public void Initialize_With_Raw_Expression_Parses_Expected_Upper_Band() { var sut = new SharedDomainModel(new ModelModel(), new ModelName("A domain"), new SharedDomainExpressionModel(" 1..9 ")); var rangeExpressionNode = (RangeDomainExpressionNode)sut.Expression.Node.Inner; Assert.That(rangeExpressionNode.LeftExpression, Is.InstanceOf <BandExpressionNode>()); }
public void Initialize_With_Raw_Expression_Parses_Expected_Lower_Band() { var sut = new SharedDomainModel(WorkspaceModelFactory.Create().Model, new ModelName("A domain"), new SharedDomainExpressionModel(" 1..9 ")); var rangeExpressionNode = (RangeDomainExpressionNode)sut.Expression.Node.Inner; Assert.That(rangeExpressionNode.RightExpression, Is.InstanceOf <BandExpressionNode>()); }
public SharedDomainModelItemViewModel MapFrom(SharedDomainModel theDomainModel) { Debug.Assert(theDomainModel.HasIdentity); var domainViewModel = new SharedDomainModelItemViewModel(theDomainModel, _windowManager); return(domainViewModel); }
public SharedDomainModelItemViewModel(SharedDomainModel theDomain, IWindowManager theWindowManager) : base(theDomain) { Validator = new SharedDomainModelItemViewModelValidator(); Domain = theDomain; DisplayName = theDomain.Name; ExpressionText = theDomain.Expression.Text; _windowManager = theWindowManager; }
public void Initialize_With_List_Expression_Parses_Expected_Inner() { var sut = new SharedDomainModel(new ModelModel(), new ModelName("A domain"), new SharedDomainExpressionModel("\"rita\", \"sue\", \"bob\"")); var rangeExpressionNode = (ListDomainExpressionNode)sut.Expression.Node.Inner; Assert.That(rangeExpressionNode.Items.Values, Is.All.Not.Null); Assert.That(rangeExpressionNode.Items.Values, Is.All.InstanceOf <ItemNameNode>()); Assert.That(rangeExpressionNode.Items.Values, Has.Count.EqualTo(3)); }
public WorkspaceBuilder WithSharedDomain(string newDomainName, string newDomainExpression) { if (string.IsNullOrWhiteSpace(newDomainName)) { throw new ArgumentException(nameof(newDomainName)); } if (string.IsNullOrWhiteSpace(newDomainExpression)) { throw new ArgumentException(nameof(newDomainExpression)); } var newDomain = new SharedDomainModel(_model, new ModelName(newDomainName), new SharedDomainExpressionModel(newDomainExpression)); _model.AddSharedDomain(newDomain); return(this); }
internal void Read(XmlNodeList domainNodeList) { for (var i = 0; i < domainNodeList.Count; i++) { var domainNode = domainNodeList[i]; switch (domainNode.Name) { case "domain": var domainIdAttribute = domainNode.Attributes["id"]; var domainId = domainIdAttribute.Value; var domainName = string.Empty; var expression = string.Empty; for (var z = 0; z < domainNode.ChildNodes.Count; z++) { var childNode = domainNode.ChildNodes[z]; switch (childNode.Name) { case "name": domainName = childNode.InnerText; break; case "expression": expression = childNode.InnerText; break; } } var domainModel = new SharedDomainModel(_model, new ModelName(domainName), new SharedDomainExpressionModel(expression)); domainModel.Id = Convert.ToInt32(domainId); _model.AddSharedDomain(domainModel); break; default: throw new NotImplementedException(); } } }