[folks] Add navigation tests for LinkedHashSet.Iterator
- From: Philip Withnall <pwithnall src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [folks] Add navigation tests for LinkedHashSet.Iterator
- Date: Sat, 16 Apr 2011 14:17:30 +0000 (UTC)
commit 858e80d7649ebe7af0553531a940098f6d3c8449
Author: Philip Withnall <philip withnall collabora co uk>
Date: Thu Mar 24 13:19:12 2011 +0000
Add navigation tests for LinkedHashSet.Iterator
Helps: bgo#645684
tests/folks/linked-hash-set.vala | 59 ++++++++++++++++++++++++++++++++++++++
1 files changed, 59 insertions(+), 0 deletions(-)
---
diff --git a/tests/folks/linked-hash-set.vala b/tests/folks/linked-hash-set.vala
index 2e205a8..b52f20a 100644
--- a/tests/folks/linked-hash-set.vala
+++ b/tests/folks/linked-hash-set.vala
@@ -12,6 +12,8 @@ public class LinkedHashSetTests : Folks.TestCase
this.add_test ("bgo640551", this.test_bgo640551);
this.add_test ("iterator", this.test_iterator);
this.add_test ("iterator removal", this.test_iterator_removal);
+ this.add_test ("iterator empty", this.test_iterator_empty);
+ this.add_test ("iterator navigation", this.test_iterator_navigation);
}
public override void set_up ()
@@ -330,6 +332,63 @@ public class LinkedHashSetTests : Folks.TestCase
for (var i = 0; i < 10; i++)
assert (!lhs.contains (i));
}
+
+ public void test_iterator_empty ()
+ {
+ LinkedHashSet<int> lhs = new LinkedHashSet<int> ();
+ var _iter = lhs.iterator ();
+ assert (_iter is BidirIterator);
+ var iter = (BidirIterator<int>) _iter;
+
+ /* Check the iterator behaves correctly for an empty LinkedHashSet */
+ assert (!iter.next ());
+ assert (!iter.has_next ());
+ assert (!iter.first ());
+ assert (!iter.previous ());
+ assert (!iter.has_previous ());
+ assert (!iter.last ());
+ }
+
+ public void test_iterator_navigation ()
+ {
+ LinkedHashSet<int> lhs = new LinkedHashSet<int> ();
+
+ lhs.add (0);
+ lhs.add (1);
+ lhs.add (2);
+
+ var _iter = lhs.iterator ();
+ assert (_iter is BidirIterator);
+ var iter = (BidirIterator<int>) _iter;
+
+ assert (iter.has_next ());
+ assert (!iter.has_previous ());
+ assert (iter.next ());
+ assert (iter.get () == 0);
+
+ assert (iter.first ());
+ assert (iter.get () == 0);
+
+ assert (iter.has_next ());
+ assert (iter.next ());
+ assert (iter.has_previous ());
+ assert (iter.get () == 1);
+
+ assert (iter.first ());
+ assert (iter.get () == 0);
+
+ assert (iter.next ());
+ assert (iter.next ());
+ assert (iter.get () == 2);
+ assert (!iter.has_next ());
+ assert (iter.has_previous ());
+
+ assert (iter.last ());
+ assert (iter.get () == 2);
+
+ assert (iter.previous ());
+ assert (iter.get () == 1);
+ }
}
public int main (string[] args)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]