111 Ipv6InterfaceAddress ifaceAddr3 = Ipv6InterfaceAddress ( |
111 Ipv6InterfaceAddress ifaceAddr3 = Ipv6InterfaceAddress ( |
112 "2001:ffff:5678:9001::2", Ipv6Prefix (64)); |
112 "2001:ffff:5678:9001::2", Ipv6Prefix (64)); |
113 interface2->AddAddress (ifaceAddr3); |
113 interface2->AddAddress (ifaceAddr3); |
114 |
114 |
115 uint32_t num = interface->GetNAddresses (); |
115 uint32_t num = interface->GetNAddresses (); |
116 NS_TEST_ASSERT_MSG_EQ (num, 3, "Number of adresses should be 3??"); /* 2 global addresses + link-local ones */ |
116 NS_TEST_ASSERT_MSG_EQ (num, 3, "Number of addresses should be 3??"); /* 2 global addresses + link-local ones */ |
117 |
117 |
118 num = interface2->GetNAddresses (); |
118 num = interface2->GetNAddresses (); |
119 NS_TEST_ASSERT_MSG_EQ (num, 2, "1 global addresses + link-local ones"); /* 1 global addresses + link-local ones */ |
119 NS_TEST_ASSERT_MSG_EQ (num, 2, "1 global addresses + link-local ones"); /* 1 global addresses + link-local ones */ |
120 |
120 |
121 interface->RemoveAddress (2); |
121 interface->RemoveAddress (2); |
122 num = interface->GetNAddresses (); |
122 num = interface->GetNAddresses (); |
123 NS_TEST_ASSERT_MSG_EQ (num, 2, "Number of adresses should be 2??"); |
123 NS_TEST_ASSERT_MSG_EQ (num, 2, "Number of addresses should be 2??"); |
124 |
124 |
125 Ipv6InterfaceAddress output = interface->GetAddress (1); |
125 Ipv6InterfaceAddress output = interface->GetAddress (1); |
126 NS_TEST_ASSERT_MSG_EQ (ifaceAddr1, output, |
126 NS_TEST_ASSERT_MSG_EQ (ifaceAddr1, output, |
127 "Should be the interface address 1?"); |
127 "Should be the interface address 1?"); |
128 |
128 |
129 index = ipv6->GetInterfaceForPrefix ("2001:1234:5678:9000::0", |
129 index = ipv6->GetInterfaceForPrefix ("2001:1234:5678:9000::0", |
130 Ipv6Prefix (64)); |
130 Ipv6Prefix (64)); |
131 NS_TEST_ASSERT_MSG_EQ (index, 1, "We should get one address??"); /* link-local address is always index 0 */ |
131 NS_TEST_ASSERT_MSG_EQ (index, 1, "We should get one address??"); /* link-local address is always index 0 */ |
132 |
132 |
133 index = ipv6->GetInterfaceForAddress ("2001:ffff:5678:9001::2"); |
133 index = ipv6->GetInterfaceForAddress ("2001:ffff:5678:9001::2"); |
134 NS_TEST_ASSERT_MSG_EQ (index, 2, "Number of adresses should be 2??"); |
134 NS_TEST_ASSERT_MSG_EQ (index, 2, "Number of addresses should be 2??"); |
135 |
135 |
136 index = ipv6->GetInterfaceForAddress ("2001:ffff:5678:9000::1"); /* address we just remove */ |
136 index = ipv6->GetInterfaceForAddress ("2001:ffff:5678:9000::1"); /* address we just remove */ |
137 NS_TEST_ASSERT_MSG_EQ (index, (uint32_t) -1, "Address should not be found??"); |
137 NS_TEST_ASSERT_MSG_EQ (index, (uint32_t) -1, "Address should not be found??"); |
138 Simulator::Destroy (); |
138 Simulator::Destroy (); |
139 return false; |
139 return false; |