public void National1_InXMatter_IsNotRemoved()
{
// This test does some real navigation so needs the server to be running.
using (GetTestServer())
{
// We are using real stylesheet info here to determine what should be visible, so the right classes must be carefully applied.
var book = SetupBookLong("English text (first national language) should display in title.", "en",
extraPageClass: " bloom-frontMatter frontCover",
extraContent:
@"<div class='bloom-editable' lang='xyz'><label class='bubble'>Book title in {lang} should be removed</label>vernacular text (content1) should always display</div>
<div class='bloom-editable' lang='fr'>French text (second national language) should not display</div>
<div class='bloom-editable' lang='de'>German should never display in this collection</div>",
extraStyleSheet: "<link rel='stylesheet' href='languageDisplay.css' type='text/css'/><link rel='stylesheet' href='basePage.css' type='text/css'></link><link rel='stylesheet' href='Factory-XMatter/Factory-XMatter.css' type='text/css'></link>",
extraEditGroupClasses: "bookTitle",
defaultLanguages: "V,N1");
// Set up the visibility classes correctly
book.UpdateEditableAreasOfElement(book.OurHtmlDom);
MakeEpub("output", "National1_InXMatter_IsNotRemoved", book);
CheckBasicsInManifest();
CheckBasicsInPage();
var assertThatPage1 = AssertThatXmlIn.String(_page1Data);
assertThatPage1.HasAtLeastOneMatchForXpath("//xhtml:div[@lang='xyz']", _ns);
assertThatPage1.HasAtLeastOneMatchForXpath("//xhtml:div[@lang='en']", _ns);
assertThatPage1.HasNoMatchForXpath("//xhtml:div[@lang='fr']", _ns);
assertThatPage1.HasNoMatchForXpath("//xhtml:div[@lang='de']", _ns);
assertThatPage1.HasNoMatchForXpath("//xhtml:label", _ns); // labels are hidden
assertThatPage1.HasNoMatchForXpath("//xhtml:div[@class='pageLabel']", _ns);
}
}