Index: xword/ContentFiltering/ContentFiltering.csproj
===================================================================
--- xword/ContentFiltering/ContentFiltering.csproj (revision 22455)
+++ xword/ContentFiltering/ContentFiltering.csproj (working copy)
@@ -124,6 +124,7 @@
WebToLocalStyleFilter
.
+ /// WebToLocalStyleFilter
.
+ ///
Text0
" + + "Text1
" + + "" + + ""; + + + expectedHTML = "Text0
" + + "Text1
" + + + "" + + ""; + + initialXmlDoc.LoadXml(initialHTML); + expectedXmlDoc.LoadXml(expectedHTML); + + WebToLocalStyleFilter filter = new WebToLocalStyleFilter(manager); + filter.Filter(ref initialXmlDoc); + + Assert.IsTrue(XmlDocComparator.AreIdentical(initialXmlDoc, expectedXmlDoc)); + } + } +} Index: xword/ContentFiltering/Test/Util/XWikiClientUtil.cs =================================================================== --- xword/ContentFiltering/Test/Util/XWikiClientUtil.cs (revision 22455) +++ xword/ContentFiltering/Test/Util/XWikiClientUtil.cs (working copy) @@ -4,11 +4,24 @@ using System.Text; using XWiki.Clients; using NUnit.Mocks; +using XWiki.XmlRpc; +using CookComputing.XmlRpc; namespace ContentFiltering.Test.Util { public class XWikiClientTestUtil { + const string SSX_CLASS_NAME = "XWiki.StyleSheetExtension"; + const string XOFFICE_SSX = "XOfficeStyle"; + const string PAGE_FULL_NAME = "docFullName"; + + public const string CSS_PROPERTIES_XOFFICE0 = "font-family:sans-serif;"; + public const string CSS_CONTENT_XOFFICE0 = ".xoffice0 {" + CSS_PROPERTIES_XOFFICE0 + "}"; + + public const string CSS_PROPERTIES_ID1 = "color:red;"; + public const string CSS_CONTENT_ID1 = "#id1 {" + CSS_PROPERTIES_ID1 + "}"; + + ///DynamicMock
.
+ private static void SetObjSummariesForGetObjects(ref DynamicMock myXWikiClientMock)
+ {
+ XWikiObjectSummary xos1 = new XWikiObjectSummary();
+ xos1.className = "SomeClass";
+ xos1.id = 1;
+ xos1.pageId = PAGE_FULL_NAME;
+
+ XWikiObjectSummary xos2 = new XWikiObjectSummary();
+ xos2.className = SSX_CLASS_NAME;
+ xos2.id = 1;
+ xos2.pageId = PAGE_FULL_NAME;
+
+ XWikiObjectSummary[] objSummaries = new XWikiObjectSummary[]
+ {
+ xos1,
+ xos2
+ };
+
+ myXWikiClientMock.ExpectAndReturn("GetObjects", objSummaries, new object[1]{PAGE_FULL_NAME});
+ }
+
+ /// DynamicMock
.
+ private static void SetObjForGetObject(ref DynamicMock myXWikiClientMock)
+ {
+ XmlRpcStruct dictionary = new XmlRpcStruct();
+ dictionary.Add("code", CSS_CONTENT_XOFFICE0+CSS_CONTENT_ID1);
+ dictionary.Add("name", "XOfficeStyle");
+ dictionary.Add("use", "onDemand");
+ dictionary.Add("parse", "0");
+
+ XWikiObject xo2 = new XWikiObject();
+ xo2.className = SSX_CLASS_NAME;
+ xo2.id = 1;
+ xo2.pageId = PAGE_FULL_NAME;
+ xo2.prettyName = "XOfficeStyle";
+ xo2.objectDictionary = dictionary;
+
+ myXWikiClientMock.ExpectAndReturn("GetObject", xo2, new object[3]{PAGE_FULL_NAME,SSX_CLASS_NAME,1});
+ }
}