Index: xword/ContentFiltering/ContentFiltering.csproj
===================================================================
--- xword/ContentFiltering/ContentFiltering.csproj (revision 22465)
+++ 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 22465) +++ xword/ContentFiltering/Test/Util/XWikiClientUtil.cs (working copy) @@ -4,28 +4,96 @@ 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 xWikiClientMock)
+ {
+ XWikiObjectSummary xWikiObjectSummary1 = new XWikiObjectSummary();
+ xWikiObjectSummary1.className = "SomeClass";
+ xWikiObjectSummary1.id = 1;
+ xWikiObjectSummary1.pageId = PAGE_FULL_NAME;
+
+ XWikiObjectSummary xWikiObjectSummary2 = new XWikiObjectSummary();
+ xWikiObjectSummary2.className = SSX_CLASS_NAME;
+ xWikiObjectSummary2.id = 1;
+ xWikiObjectSummary2.pageId = PAGE_FULL_NAME;
+
+ XWikiObjectSummary[] objSummaries = new XWikiObjectSummary[]
+ {
+ xWikiObjectSummary1,
+ xWikiObjectSummary2
+ };
+
+ xWikiClientMock.ExpectAndReturn("GetObjects", objSummaries, new object[1] { PAGE_FULL_NAME });
+ }
+
+ /// DynamicMock
.
+ private static void SetObjForGetObject(ref DynamicMock xWikiClientMock)
+ {
+ 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 xWikiObject = new XWikiObject();
+ xWikiObject.className = SSX_CLASS_NAME;
+ xWikiObject.id = 1;
+ xWikiObject.pageId = PAGE_FULL_NAME;
+ xWikiObject.prettyName = "XOfficeStyle";
+ xWikiObject.objectDictionary = dictionary;
+
+ xWikiClientMock.ExpectAndReturn("GetObject", xWikiObject, new object[3] { PAGE_FULL_NAME, SSX_CLASS_NAME, 1 });
+ }
}
-
+
}