Xamarin Public Jenkins (auto-signing) 6123a772ed Imported Upstream version 5.8.0.88
Former-commit-id: 4b7216ffda08448e562271ce733688e761120fc5
2017-11-28 19:36:51 +00:00

71 lines
1.7 KiB
C#

//
// KeyInfoNodeTest.cs - NUnit Test Cases for KeyInfoNode
//
// Author:
// Sebastien Pouliot (spouliot@motus.com)
//
// (C) 2002, 2003 Motus Technologies Inc. (http://www.motus.com)
//
#if !MOBILE
using System;
using System.Security.Cryptography;
using System.Security.Cryptography.Xml;
using System.Xml;
using NUnit.Framework;
namespace MonoTests.System.Security.Cryptography.Xml {
[TestFixture]
public class KeyInfoNodeTest {
[Test]
public void NewKeyNode ()
{
string test = "<Test></Test>";
XmlDocument doc = new XmlDocument ();
doc.LoadXml (test);
KeyInfoNode node1 = new KeyInfoNode ();
node1.Value = doc.DocumentElement;
XmlElement xel = node1.GetXml ();
KeyInfoNode node2 = new KeyInfoNode (node1.Value);
node2.LoadXml (xel);
Assert.AreEqual ((node1.GetXml ().OuterXml), (node2.GetXml ().OuterXml), "node1==node2");
}
[Test]
public void ImportKeyNode ()
{
// Note: KeyValue is a valid KeyNode
string value = "<KeyName xmlns=\"http://www.w3.org/2000/09/xmldsig#\">Mono::</KeyName>";
XmlDocument doc = new XmlDocument ();
doc.LoadXml (value);
KeyInfoNode node1 = new KeyInfoNode ();
node1.LoadXml (doc.DocumentElement);
string s = (node1.GetXml ().OuterXml);
Assert.AreEqual (value, s, "Node");
}
// well there's no invalid value - unless you read the doc ;-)
[Test]
public void InvalidKeyNode ()
{
string bad = "<Test></Test>";
XmlDocument doc = new XmlDocument ();
doc.LoadXml (bad);
KeyInfoNode node1 = new KeyInfoNode ();
// LAMESPEC: No ArgumentNullException is thrown if value == null
node1.LoadXml (null);
Assert.IsNull (node1.Value, "Value==null");
}
}
}
#endif