summaryrefslogtreecommitdiff
path: root/examples/testing/src
diff options
context:
space:
mode:
Diffstat (limited to 'examples/testing/src')
-rw-r--r--examples/testing/src/main/scala/ElementCreator.scala7
-rw-r--r--examples/testing/src/test/scala/CollectionTest.scala17
-rw-r--r--examples/testing/src/test/scala/ElementCreatorTest.scala24
3 files changed, 48 insertions, 0 deletions
diff --git a/examples/testing/src/main/scala/ElementCreator.scala b/examples/testing/src/main/scala/ElementCreator.scala
new file mode 100644
index 0000000..ccb3600
--- /dev/null
+++ b/examples/testing/src/main/scala/ElementCreator.scala
@@ -0,0 +1,7 @@
+import scala.scalajs.js.Dynamic.global
+
+object ElementCreator {
+ val jQ = global.jQuery
+
+ def create() = jQ("body").append(jQ("<h1>Test</h1>"))
+}
diff --git a/examples/testing/src/test/scala/CollectionTest.scala b/examples/testing/src/test/scala/CollectionTest.scala
new file mode 100644
index 0000000..a586ca2
--- /dev/null
+++ b/examples/testing/src/test/scala/CollectionTest.scala
@@ -0,0 +1,17 @@
+import scala.scalajs.js
+import scala.scalajs.js.Dynamic.global
+import scala.scalajs.js.JSConverters._
+
+import org.scalajs.jasminetest.JasmineTest
+
+object CollectionTest extends JasmineTest {
+
+ describe("Array") {
+
+ it("should be able to map and filter integers") {
+ val array = Array(5, 7, 2, 6, -30, 33, 66, 76, 75, 0)
+ val result = array.filter(_.toInt % 3 != 0).map(x => x*x)
+ expect(result.toJSArray).toEqual(js.Array(25, 49, 4, 76*76))
+ }
+ }
+}
diff --git a/examples/testing/src/test/scala/ElementCreatorTest.scala b/examples/testing/src/test/scala/ElementCreatorTest.scala
new file mode 100644
index 0000000..43f6756
--- /dev/null
+++ b/examples/testing/src/test/scala/ElementCreatorTest.scala
@@ -0,0 +1,24 @@
+import scala.scalajs.js
+import scala.scalajs.js.Dynamic.global
+
+import org.scalajs.jasminetest.JasmineTest
+
+object ElementCreatorTest extends JasmineTest {
+
+ describe("ElementCreator") {
+
+ it("should be able to create an element in the body") {
+ // create the element
+ ElementCreator.create()
+
+ // jquery would make this easier, but I wanted to
+ // only use pure html in the test itself
+ val body = global.document.getElementsByTagName("body")
+ .asInstanceOf[js.Array[js.Dynamic]].head
+
+ // the Scala.js DOM API would make this easier
+ expect(body.lastChild.tagName.toString == "H1").toBeTruthy
+ expect(body.lastChild.innerHTML.toString == "Test").toBeTruthy
+ }
+ }
+}