summaryrefslogtreecommitdiff
path: root/test/files/run/iq.scala
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2009-08-14 23:00:25 +0000
committerPaul Phillips <paulp@improving.org>2009-08-14 23:00:25 +0000
commit43b445579feb1499d3f405c64a45666037255f7d (patch)
treebeceee3e7b8609f82c4bf9ed6d985c280a64b4a0 /test/files/run/iq.scala
parent7838ff734a2018d626086b02cdae0a1416b84e84 (diff)
downloadscala-43b445579feb1499d3f405c64a45666037255f7d.tar.gz
scala-43b445579feb1499d3f405c64a45666037255f7d.tar.bz2
scala-43b445579feb1499d3f405c64a45666037255f7d.zip
Polished up some disabled tests and returned th...
Polished up some disabled tests and returned them to files.
Diffstat (limited to 'test/files/run/iq.scala')
-rw-r--r--test/files/run/iq.scala100
1 files changed, 100 insertions, 0 deletions
diff --git a/test/files/run/iq.scala b/test/files/run/iq.scala
new file mode 100644
index 0000000000..1b57fb3674
--- /dev/null
+++ b/test/files/run/iq.scala
@@ -0,0 +1,100 @@
+/* $Id$
+ * Test file for immutable queues.
+ */
+
+import scala.collection.immutable.Queue
+
+object iq {
+ def main {
+ /* Create an empty queue. */
+ val q: Queue[Int] = Queue.Empty
+
+ /* Test isEmpty.
+ * Expected: Empty
+ */
+ if (q.isEmpty) {
+ Console.println("Empty")
+ }
+
+ /* Test infix enqueing. */
+ //val q2 = q + 42 + 0 // deprecated
+ val q2 = q.enqueue(42).enqueue(0)
+
+ /* Test is empty and dequeue.
+ * Expected: Head: 42
+ */
+ val q4 =
+ if (q2.isEmpty) {
+ Console.println("Empty")
+ q2
+ }
+ else {
+ val (head, q3) = q2.dequeue
+ Console.println("Head: " + head)
+ q3
+ }
+
+ /* Test sequence enqueing. */
+ val q5: Queue[Any] = q4.enqueue(List(1,2,3,4,5,6,7,8,9))
+ /* Test toString.
+ * Expected: Head: q5: Queue(0,1,2,3,4,5,6,7,8,9)
+ */
+ Console.println("q5: " + q5)
+ /* Test apply
+ * Expected: q5[5]: 5
+ */
+ Console.println("q5[5]: " + q5(5))
+
+ val q5c: Queue[Int] = Queue.Empty.enqueue(List(0, 1, 2, 3, 4, 5, 6, 7, 8, 9))
+
+ /* Testing ==
+ * Expected: q5 == q9: true
+ * q9 == q5: true
+ */
+ Console.println("q5 == q5c: " + (q5 == q5c))
+ Console.println("q5c == q5: " + (q5c == q5))
+
+ val (_, q6) = q5.dequeue
+ val (_, q7) = q6.dequeue
+ //val q8 = q7 + 10 + 11 //deprecated
+ val q8 = q7.enqueue(10).enqueue(11)
+ /* Test dequeu
+ * Expected: q8: Queue(2,3,4,5,6,7,8,9,10,11)
+ */
+ Console.println("q8: " + q8)
+ val q9 = Queue(2,3,4,5,6,7,8,9,10,11)
+
+ /* Testing ==
+ * Expected: q8 == q9: true
+ */
+ Console.println("q8 == q9: " + (q8 == q9))
+
+ /* Testing elements
+ * Expected: Elements: 1 2 3 4 5 6 7 8 9
+ */
+ Console.print("Elements: ");
+ q6.iterator.foreach(e => Console.print(" "+ e + " "))
+ Console.println;
+
+ /* Testing mkString
+ * Expected: String: <1-2-3-4-5-6-7-8-9>
+ */
+ Console.println("String: " + q6.mkString("<","-",">"))
+
+ /* Testing length
+ * Expected: Length: 9
+ */
+ Console.println("Length: " + q6.length)
+
+ /* Testing front
+ * Expected: Front: 1
+ */
+ Console.println("Front: " + q6.front);
+ }
+}
+
+object Test {
+ def main(args: Array[String]) {
+ iq.main
+ }
+}