JS tests for addClass, removeClass, removeFromParent

This commit is contained in:
Sergey Mashkov
2015-05-12 14:34:19 +03:00
committed by Sergey Mashkov
parent bcbfa3c240
commit a11e0a84b5
9 changed files with 131 additions and 89 deletions
+1 -1
View File
@@ -12,7 +12,7 @@ class BrowserTest {
registerBrowserPage()
val h1 = document["h1"].first()
assertEquals("Hello World!", h1.text)
assertEquals("Hello World!", h1.textContent)
}
protected fun registerBrowserPage() {
+1 -1
View File
@@ -88,7 +88,7 @@ class DomBuilderTest() {
}
val grandChild = doc["grandChild"].firstOrNull()
if (grandChild != null) {
assertEquals("Hello World!", grandChild.text)
assertEquals("Hello World!", grandChild.textContent)
assertEquals(" bar tiny", grandChild.attribute("class"))
// test the classSet
+1 -1
View File
@@ -37,7 +37,7 @@ class DomTest {
val xml = e.toXmlString()
println("element after text ${xml}")
assertEquals("hello", e.text)
assertEquals("hello", e.textContent)
}
+107 -6
View File
@@ -25,9 +25,7 @@ class JsDomTest {
assertCssClass(e, "bar")
}
// TODO - not sure why this fails inside JUnit - seems to work fine in QUnit in a browser?
// test
fun addText() {
test fun addText() {
var doc = document
assertNotNull(doc, "Should have created a document")
@@ -37,12 +35,115 @@ class JsDomTest {
val xml = e.toXmlString()
println("element after text ${xml}")
assertEquals("hello", e.text)
assertEquals("hello", e.textContent)
}
test fun testAddClassMissing() {
val e = document.createElement("e")!!
assertNotNull(e)
fun assertCssClass(e: Element, value: String?): Unit {
e.classes = "class1"
e.addClass("class1", "class2")
assertEquals("class1 class2", e.classes)
}
test fun testAddClassPresent() {
val e = document.createElement("e")!!
assertNotNull(e)
e.classes = "class2 class1"
e.addClass("class1", "class2")
assertEquals("class2 class1", e.classes)
}
test fun testAddClassUndefinedClasses() {
val e = document.createElement("e")!!
e.addClass("class1")
assertEquals("class1", e.classes)
}
test fun testRemoveClassMissing() {
val e = document.createElement("e")!!
assertNotNull(e)
e.classes = "class2 class1"
e.removeClass("class3")
assertEquals("class2 class1", e.classes)
}
test fun testRemoveClassPresent1() {
val e = document.createElement("e")!!
assertNotNull(e)
e.classes = "class2 class1"
e.removeClass("class2")
assertEquals("class1", e.classes)
}
test fun testRemoveClassPresent2() {
val e = document.createElement("e")!!
assertNotNull(e)
e.classes = "class2 class1"
e.removeClass("class1")
assertEquals("class2", e.classes)
}
test fun testRemoveClassPresent3() {
val e = document.createElement("e")!!
assertNotNull(e)
e.classes = "class2 class1 class3"
e.removeClass("class1")
assertEquals("class2 class3", e.classes)
}
test fun testRemoveClassUndefinedClasses() {
val e = document.createElement("e")!!
e.removeClass("class1")
assertEquals("", e.classes)
}
test fun testRemoveFromParent() {
val doc = document
val parent = doc.createElement("pp")
val child = doc.createElement("cc")
parent.appendChild(child)
assertEquals(parent, child.parentNode)
assertEquals(listOf(child), parent.childNodes.asList())
child.removeFromParent()
assertNull(child.parentNode)
assertEquals(emptyList<Node>(), parent.childNodes.asList())
child.removeFromParent()
assertNull(child.parentNode)
}
test fun testRemoveFromParentOrphanNode() {
val child = document.createElement("cc")
child.removeFromParent()
assertNull(child.parentNode)
}
private fun assertCssClass(e: Element, value: String?): Unit {
val cl = e.classes
val cl2 = e.getAttribute("class") ?: ""
val xml = e.toXmlString()