about summary refs log tree commit
path: root/test/test_nodes.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/test_nodes.rb')
-rw-r--r--test/test_nodes.rb29
1 files changed, 29 insertions, 0 deletions
diff --git a/test/test_nodes.rb b/test/test_nodes.rb
new file mode 100644
index 0000000..580a1f9
--- /dev/null
+++ b/test/test_nodes.rb
@@ -0,0 +1,29 @@
+require 'test/unit'
+require 'rpatricia'
+
+class TestShowNodes < Test::Unit::TestCase
+
+  def test_nodes
+    t = Patricia.new
+    string = "pref_10"
+    array = [:something]
+    t.add("127.0.0.0/24")
+    t.add("192.168.1.0/24")
+    t.add("192.168.2.0/24")
+    t.add("192.168.3.100")
+    t.add("10.0.0.0/8", string)
+    t.add("10.0.0.0/9", array)
+
+    assert_equal({"10.0.0.0/8" => "pref_10",
+                  "10.0.0.0/9" => [:something],
+                  "127.0.0.0/24" => "",
+                  "192.168.1.0/24" => "",
+                  "192.168.2.0/24" => "",
+                  "192.168.3.100/32" => ""},
+                  t.nodes)
+
+    assert(string.object_id != t.nodes["10.0.0.0/8"].object_id)
+    assert(array.object_id == t.nodes["10.0.0.0/9"].object_id)
+  end
+
+end