Example #1
0
 int ComputeHashCode()
 {
     return(HashCode.Compute(
                ((int)NodeType).GetHashCode(),
                SettingIdentifier.GetHashCode(),
                QualifiedIdentifier.GetHashCode()));
 }
Example #2
0
        public void ctor_CanInstantiateFromMember()
        {
            var sn = SettingIdentifier.Parse("foo");

            Assert.That.IsNullOrEmpty(sn.Scope);
            Assert.That.IsNullOrEmpty(sn.Type);
            Assert.AreEqual("foo", sn.Member);
            Assert.That.IsNullOrEmpty(sn.Handle);
        }
Example #3
0
        public void Parse_CanReadNamespaceTypeMemberAndInstance()
        {
            var settingName = SettingIdentifier.Parse("foo.bar+baz.qux,quux");

            Assert.AreEqual("foo.bar", settingName.Scope);
            Assert.AreEqual("baz", settingName.Type);
            Assert.AreEqual("qux", settingName.Member);
            Assert.AreEqual("quux", settingName.Handle);
            Assert.AreEqual("foo.bar+baz.qux,quux", settingName.ToString());
        }
Example #4
0
        public void Parse_CanReadNamespaceTypeAndMember()
        {
            var settingName = SettingIdentifier.Parse("foo.bar+baz.qux");

            Assert.AreEqual("foo.bar", settingName.Scope);
            Assert.AreEqual("baz", settingName.Type);
            Assert.AreEqual("qux", settingName.Member);
            Assert.That.IsNullOrEmpty(settingName.Handle);
            Assert.AreEqual("foo.bar+baz.qux", settingName.ToString());
        }
Example #5
0
        public void Parse_CanReadAssemblyNamespaceTypeMemberAndInstance()
        {
            var settingName = SettingIdentifier.Parse("Assem.bly:Name.space+Type.Member,Instance");

            Assert.AreEqual("Assem.bly", settingName.Prefix);
            Assert.AreEqual("Name.space", settingName.Scope);
            Assert.AreEqual("Type", settingName.Type);
            Assert.AreEqual("Member", settingName.Member);
            Assert.AreEqual("Instance", settingName.Handle);
            Assert.AreEqual("Assem.bly:Name.space+Type.Member,Instance", settingName.ToString());
        }
Example #6
0
        public void Parse_CanReadMember()
        {
            var settingName = SettingIdentifier.Parse("qux");

            Assert.That.IsNullOrEmpty(settingName.Prefix);
            Assert.That.IsNullOrEmpty(settingName.Scope);
            Assert.That.IsNullOrEmpty(settingName.Type);
            Assert.AreEqual("qux", settingName.Member);
            Assert.That.IsNullOrEmpty(settingName.Handle);
            Assert.AreEqual("qux", settingName.ToString());
        }
Example #7
0
        public void Equals_CanCompareSimilarObjects()
        {
            Assert.AreEqual(
                SettingIdentifier.Parse("foo.bar+baz.qux,quux"),
                SettingIdentifier.Parse("foo.bar+baz.qux,quux"));

            Assert.AreEqual(
                SettingIdentifier.Parse("baz.qux,quux"),
                SettingIdentifier.Parse("baz.qux,quux"));

            Assert.AreEqual(
                SettingIdentifier.Parse("qux,quux"),
                SettingIdentifier.Parse("qux,quux"));

            Assert.AreEqual(
                SettingIdentifier.Parse("foo.bar+baz.qux"),
                SettingIdentifier.Parse("foo.bar+baz.qux"));

            Assert.AreEqual(
                SettingIdentifier.Parse("qux"),
                SettingIdentifier.Parse("qux"));
        }
Example #8
0
 public void Parse_DisallowsInvalidFormat()
 {
     Assert.That.Throws <DynamicException>(() => SettingIdentifier.Parse("foo+bar+baz"), filter => filter.When(name: "^SettingNameFormat"));
 }
Example #9
0
 public void Equals_CanCompareDifferentObjects()
 {
     Assert.AreNotEqual(
         SettingIdentifier.Parse("foo.bar+baz.qux,quux"),
         SettingIdentifier.Parse("foo.bar+baz.qux"));
 }
Example #10
0
 protected override bool ThisEquals(EbnfSetting other)
 {
     return(SettingIdentifier.Equals(other.SettingIdentifier) &&
            Identifier.Equals(other.Identifier));
 }