Exemple #1
0
        public void GetNewGeneratedId_Increments_After_Call()
        {
            var firstIdNumber = IncrementalViewIdGenerator.NextGeneratedIdNumber;

            IncrementalViewIdGenerator.GetNewGeneratedId();
            var nextIdNumber = IncrementalViewIdGenerator.NextGeneratedIdNumber;

            Assert.AreEqual(firstIdNumber + 1, nextIdNumber);
        }
Exemple #2
0
        public override HtmlNode Convert2Blazor(HtmlNode node)
        {
            var textValue = node.Attributes.AttributesWithName(TextAttributeName).FirstOrDefault()?.Value;
            var idValue   = node.Attributes.AttributesWithName(IdentifierAttributeName).FirstOrDefault()?.Value;

            AddBooleanAttributeOnCondition(node, CheckedAttributeName, CheckedAttributeName, true);
            AddBooleanAttributeOnCondition(node, EnabledAttributeName, DisabledAttributeName, false);

            if (!string.IsNullOrEmpty(textValue))
            {
                var containerNode = Convert2BlazorFromParts(NodeTemplate, ContainerTagName, null, null);

                // NOTE: If no is present, can't link label to radio button, so instead generate a new unique id
                if (idValue == null)
                {
                    idValue       = IncrementalViewIdGenerator.GetNewGeneratedId();
                    NewAttributes = NewAttributes.Append(new ViewLayerControlAttribute(IdentifierAttributeName, idValue));
                }

                var joinedAttributesString = JoinAllAttributes(node.Attributes, NewAttributes);
                var radioButtonNode        = Convert2BlazorFromParts(SingleTagNodeTemplate, BlazorName, joinedAttributesString, null);

                var labelAttrString = string.Format(LabelForAttributeTemplate, idValue);
                var labelNode       = Convert2BlazorFromParts(NodeTemplate, LabelTagName, labelAttrString, textValue);

                containerNode.AppendChild(radioButtonNode);
                containerNode.AppendChild(labelNode);

                return(containerNode);
            }
            else
            {
                var joinedAttributesString = JoinAllAttributes(node.Attributes, NewAttributes);
                return(Convert2BlazorFromParts(SingleTagNodeTemplate, BlazorName, joinedAttributesString, null));
            }
        }
Exemple #3
0
        public void GetNewGeneratedId_Returns_Properly_Formatted_Id()
        {
            var nextIdNumber = IncrementalViewIdGenerator.NextGeneratedIdNumber;

            Assert.AreEqual($"GeneratedId{nextIdNumber}", IncrementalViewIdGenerator.GetNewGeneratedId());
        }