 
     func testEmptyQueue() {
         var q = Queue<Int>()
-        assert(q.isEmpty)
-        assertNil(q.first)
-        assertNil(q.dequeue())
+        assertEmpty(q)
     }
 
     func testEnqueueDequeue() {

        q.enqueue(4)
        assertEqual(q.dequeue(), 3)
        assertEqual(q.dequeue(), 4)
        assertNil(q.dequeue())
    }

    func testArrayLiteralConvertible() {

    func testSliceable() {
        var q: Queue = ["foo", "bar", "baz"]
        let index = q.startIndex.successor()
        var s = q[index..<index.successor()]

        assertEqual(s.first, "bar")
        assertEqual(s.dequeue(), "bar")
        assertEmpty(s)

        assertEqual(q.dequeue(), "foo")
        assertEqual(q.dequeue(), "bar")
        assertEqual(q.dequeue(), "baz")
        assertEmpty(q)
    }

    func assertEmpty<T>(var q: Queue<T>) {
        assertEqual(q.isEmpty, true)
        assertNil(q.first)
        assertNil(q.dequeue())
    }
}
