indexing description: "Tests the accesspoint advertisement" license: "MIT license (see ../../license.txt)" author: "Beat Strasser " date: "$Date$" revision: "$Revision$" deferred class TEST_ACCESSPOINT_ADVERTISEMENT inherit T_ADVERTISEMENT feature -- Tests test_setters is -- Test setters/getters local apa: P2P_ACCESSPOINT_ADVERTISEMENT tea: P2P_ENDPOINT_ADDRESS do -- create accesspoint advertisement create apa.make assert_same ("peer_id 1", Void, apa.peer_id) assert_equal ("endpoint_addresses.count 1", 0, apa.endpoint_addresses.count) assert_same ("unique_id 1", Void, apa.unique_id) assert_same ("index_elements.count 1", 0, apa.index_elements.count) assert_false ("match PID 1", apa.match ("PID", Void)) -- set peer id apa.set_peer_id (pid) assert_equal ("peer_id 2", pid, apa.peer_id) assert_equal ("unique_id 2", "APA-" + pid.out_short, apa.unique_id) assert_same ("index_elements.count 2", 1, apa.index_elements.count) assert_true ("match PID 2", apa.match ("PID", pid.out)) assert_true ("match PID 3", apa.match ("PID", Void)) -- add endpoint address tea := an_ea apa.add_address (tea) assert_true ("endpoint_addresses.has 1", apa.endpoint_addresses.has (tea)) assert_equal ("endpoint_addresses.count 2", 1, apa.endpoint_addresses.count) -- remove endpoint address apa.remove_address (tea) assert_false ("endpoint_addresses.has 2", apa.endpoint_addresses.has (tea)) assert_equal ("endpoint_addresses.count 3", 0, apa.endpoint_addresses.count) -- remove addresses with special protocol apa.add_address (tea) apa.remove_addresses_with_protocol ("tcp") assert_false ("endpoint_addresses.has 3", apa.endpoint_addresses.has (tea)) assert_equal ("endpoint_addresses.count 4", 0, apa.endpoint_addresses.count) end test_document is -- Test document parsing/creating local apa: P2P_ACCESSPOINT_ADVERTISEMENT source: STRING tea1, tea2: P2P_ENDPOINT_ADDRESS do tea1 := an_ea create tea2.make ("http", "127.0.0.1:9701") source := "%N% %" + pid.out + "" + tea1.out + "% %" + tea2.out + "" -- parse create apa.parse_from_string (source) assert_true ("is_valid", apa.is_valid) assert_equal ("peer_id", pid, apa.peer_id) assert_equal ("endpoint_addresses", 2, apa.endpoint_addresses.count) assert_true ("endpoint_address.has 1", apa.endpoint_addresses.has (tea1)) assert_true ("endpoint_address.has 2", apa.endpoint_addresses.has (tea2)) -- create apa.renew_document assert_equal ("document", source, apa.document.out) end test_general is -- Test general advertisement local apa: P2P_ACCESSPOINT_ADVERTISEMENT do create apa.make dtest_lifetime (apa) end end