1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
//
// RdpPatternTests.cs
//
// Authors:
// Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
//
// (C) 2003 Atsushi Enomoto
//
using System;
using System.IO;
using System.Xml;
using Commons.Xml.Relaxng;
using Commons.Xml.Relaxng.Derivative;
using NUnit.Framework;
namespace MonoTests.Commons.Xml.Relaxng
{
[TestFixture]
public class RdpPatternTests
{
RelaxngValidatingReader reader;
RdpPattern result;
RdpPattern pattern1;
[SetUp]
public void SetUp ()
{
pattern1 = new RdpElement (new RdpName ("foo", "urn:foo"), RdpEmpty.Instance);
}
private void AssertPattern (string s, RelaxngPatternType expected, RdpPattern p)
{
Assert.AreEqual (expected, p.PatternType, s);
}
[Test]
public void ElementStartTagOpenDeriv ()
{
result = pattern1.StartTagOpenDeriv ("bar", "urn:foo");
AssertPattern ("#element.start.1", RelaxngPatternType.NotAllowed, result);
result = pattern1.StartTagOpenDeriv ("foo", "urn:bar");
AssertPattern ("#element.start.2", RelaxngPatternType.NotAllowed, result);
result = pattern1.StartTagOpenDeriv ("foo", "urn:foo");
AssertPattern ("#element.start.3", RelaxngPatternType.After, result);
RdpAfter after= result as RdpAfter;
AssertPattern ("#element.start.4", RelaxngPatternType.Empty, after.LValue);
AssertPattern ("#element.start.5", RelaxngPatternType.Empty, after.RValue);
}
}
}
|