// // // // // $Revision$ // using ICSharpCode.XmlEditor; using NUnit.Framework; using System; using System.Xml; namespace XmlEditor.Tests.Parser { /// /// Tests that we can detect the attribute's name. /// [TestFixture] public class AttributeNameTestFixture { [Test] public void SuccessTest1() { string text = " foo='a"; QualifiedName expectedName = new QualifiedName("foo", String.Empty); QualifiedName name = XmlParser.GetQualifiedAttributeName(text, text.Length); Assert.AreEqual(expectedName, name, "Should have retrieved the attribute name 'foo'"); } [Test] public void SuccessTest2() { string text = " foo='"; QualifiedName expectedName = new QualifiedName("foo", String.Empty); QualifiedName name = XmlParser.GetQualifiedAttributeName(text, text.Length); Assert.AreEqual(expectedName, name, "Should have retrieved the attribute name 'foo'"); } [Test] public void SuccessTest3() { string text = " foo="; QualifiedName expectedName = new QualifiedName("foo", String.Empty); QualifiedName name = XmlParser.GetQualifiedAttributeName(text, text.Length); Assert.AreEqual(expectedName, name, "Should have retrieved the attribute name 'foo'"); } [Test] public void SuccessTest4() { string text = " foo=\""; QualifiedName expectedName = new QualifiedName("foo", String.Empty); QualifiedName name = XmlParser.GetQualifiedAttributeName(text, text.Length); Assert.AreEqual(expectedName, name, "Should have retrieved the attribute name 'foo'"); } [Test] public void SuccessTest5() { string text = " foo = \""; QualifiedName expectedName = new QualifiedName("foo", String.Empty); QualifiedName name = XmlParser.GetQualifiedAttributeName(text, text.Length); Assert.AreEqual(expectedName, name, "Should have retrieved the attribute name 'foo'"); } [Test] public void SuccessTest6() { string text = " foo = '#"; QualifiedName expectedName = new QualifiedName("foo", String.Empty); QualifiedName name = XmlParser.GetQualifiedAttributeName(text, text.Length); Assert.AreEqual(expectedName, name, "Should have retrieved the attribute name 'foo'"); } [Test] public void FailureTest1() { string text = "foo="; Assert.IsTrue(XmlParser.GetQualifiedAttributeName(text, text.Length).IsEmpty); } [Test] public void FailureTest2() { string text = "foo=<"; Assert.IsTrue(XmlParser.GetQualifiedAttributeName(text, text.Length).IsEmpty); } [Test] public void FailureTest3() { string text = "a"; Assert.IsTrue(XmlParser.GetQualifiedAttributeName(text, text.Length).IsEmpty); } [Test] public void FailureTest4() { string text = " a"; Assert.IsTrue(XmlParser.GetQualifiedAttributeName(text, text.Length).IsEmpty); } [Test] public void EmptyString() { Assert.IsTrue(XmlParser.GetQualifiedAttributeName(String.Empty, 10).IsEmpty); } [Test] public void AttributeWithPrefix() { string text = " a:test="; QualifiedName expectedName = new QualifiedName("test", String.Empty, "a"); QualifiedName name = XmlParser.GetQualifiedAttributeName(text, text.Length); Assert.AreEqual(expectedName, name); } [Test] public void GetQualifiedAttributeNameWithEmptyString() { Assert.IsTrue(XmlParser.GetQualifiedAttributeNameAtIndex(String.Empty, 0, true).IsEmpty); } [Test] public void GetAttributeNameAtIndexWithNullString() { Assert.AreEqual(String.Empty, XmlParser.GetAttributeNameAtIndex(null, 0)); } [Test] public void GetAttributeNameWithNullString() { Assert.AreEqual(String.Empty, XmlParser.GetAttributeName(null, 0)); } [Test] public void GetQualifiedAttributeNameWithSingleXmlCharacter() { Assert.IsTrue(XmlParser.GetQualifiedAttributeNameAtIndex("<", 0, true).IsEmpty); } } }