**** Merged from MCS ****
[mono-project.git] / mcs / class / Commons.Xml.Relaxng / Test / RelaxngValidatingReaderTests.cs
blob62e4924d884a3e3452c40b180cb1323fb46a7702
1 //
2 // RelaxngValidatingReaderTests.cs
3 //
4 // Authors:
5 // Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
6 //
7 // (C) 2003 Atsushi Enomoto
8 //
10 using System;
11 using System.IO;
12 using System.Xml;
13 using Commons.Xml.Relaxng;
14 using NUnit.Framework;
16 using RVR = Commons.Xml.Relaxng.RelaxngValidatingReader;
18 namespace MonoTests.Commons.Xml.Relaxng
20 [TestFixture]
21 public class RelaxngValidatingReaderTests
23 RelaxngValidatingReader reader;
25 [SetUp]
26 public void SetUp ()
30 private void SetupReaderFromUrl (string instanceUrl, string grammarUrl)
32 reader = new RelaxngValidatingReader (
33 new XmlTextReader (instanceUrl),
34 new XmlTextReader (grammarUrl));
37 private void SetupReader (string instance, string grammar)
39 reader = new RelaxngValidatingReader (
40 new XmlTextReader (new StringReader (instance)),
41 new XmlTextReader (new StringReader (grammar)));
45 [Test]
46 public void SimpleElementPattern1 ()
48 SetupReaderFromUrl ("Test/XmlFiles/SimpleElementPattern1.xml",
49 "Test/XmlFiles/SimpleElementPattern1.rng");
51 while (!reader.EOF)
52 reader.Read ();
55 [Test]
56 public void SimpleElementPattern2 ()
58 SetupReaderFromUrl ("Test/XmlFiles/SimpleElementPattern2.xml",
59 "Test/XmlFiles/SimpleElementPattern2.rng");
61 while (!reader.EOF)
62 reader.Read ();
65 [Test]
66 public void ReadPracticalSample1 ()
68 SetupReaderFromUrl ("Test/XmlFiles/team.xml", "Test/XmlFiles/team.rng");
69 while (!reader.EOF)
70 reader.Read ();
73 [Test]
74 public void ValidateRelaxngGrammar ()
76 // validate relaxng.rng with relaxng.rng
77 RVR r = new RVR (
78 new XmlTextReader ("Test/XmlFiles/relaxng.rng"),
79 new XmlTextReader ("Test/XmlFiles/relaxng.rng"));
80 while (!r.EOF)
81 r.Read ();