++remote_id_it;
}
}
- auto link_addr_it = link_addr6_.begin();
- while (link_addr_it != link_addr6_.end()) {
- if ((*link_addr_it)->lease_addr_ == addr) {
- link_addr_it = link_addr6_.erase(link_addr_it);
- } else {
- ++link_addr_it;
- }
- }
}
/// @brief Add lease6 extended info into by-relay-id table.
// List supports easier erase.
list<Lease6ExtendedInfoPtr> relay_id6_;
list<Lease6ExtendedInfoPtr> remote_id6_;
- list<Lease6SimpleExtendedInfoPtr> link_addr6_;
};
class LeaseMgrTest : public GenericLeaseMgrTest {
lease->setContext(user_context);
mgr->relay_id6_.clear();
mgr->remote_id6_.clear();
- mgr->link_addr6_.clear();
EXPECT_NO_THROW(mgr->addExtendedInfo6(lease));
EXPECT_TRUE(mgr->relay_id6_.empty());
EXPECT_TRUE(mgr->remote_id6_.empty());
- EXPECT_TRUE(mgr->link_addr6_.empty());
}
}
EXPECT_NO_THROW(mgr->addExtendedInfo6(lease));
EXPECT_TRUE(mgr->relay_id6_.empty());
EXPECT_TRUE(mgr->remote_id6_.empty());
- ASSERT_EQ(1, mgr->link_addr6_.size());
- Lease6SimpleExtendedInfoPtr sex_info = mgr->link_addr6_.front();
- ASSERT_TRUE(sex_info);
- EXPECT_EQ("2001:db8::1", sex_info->link_addr_.toText());
- EXPECT_EQ("2001:db8::100", sex_info->lease_addr_.toText());
}
/// Verify setExtendedInfoTablesEnabled with one relay with ids.
EXPECT_EQ(1, mgr->relay_id6_.size());
Lease6ExtendedInfoPtr ex_info = mgr->relay_id6_.front();
ASSERT_TRUE(ex_info);
- EXPECT_EQ("2001:db8::5", ex_info->link_addr_.toText());
EXPECT_EQ("2001:db8::100", ex_info->lease_addr_.toText());
const vector<uint8_t>& relay_id = ex_info->id_;
const vector<uint8_t>& exp_relay_id = vector<uint8_t>(8, 0x64);
EXPECT_EQ(1, mgr->remote_id6_.size());
ex_info = mgr->remote_id6_.front();
ASSERT_TRUE(ex_info);
- EXPECT_EQ("2001:db8::5", ex_info->link_addr_.toText());
EXPECT_EQ("2001:db8::100", ex_info->lease_addr_.toText());
const vector<uint8_t>& remote_id = ex_info->id_;
const vector<uint8_t>& exp_remote_id = { 1, 2, 3, 4, 5, 6 };
EXPECT_EQ(exp_remote_id, remote_id);
-
- ASSERT_EQ(1, mgr->link_addr6_.size());
- Lease6SimpleExtendedInfoPtr sex_info = mgr->link_addr6_.front();
- ASSERT_TRUE(sex_info);
- EXPECT_EQ("2001:db8::5", sex_info->link_addr_.toText());
- EXPECT_EQ("2001:db8::100", sex_info->lease_addr_.toText());
}
/// Verify setExtendedInfoTablesEnabled with one relay with ids but
EXPECT_EQ(1, mgr->relay_id6_.size());
Lease6ExtendedInfoPtr ex_info = mgr->relay_id6_.front();
ASSERT_TRUE(ex_info);
- EXPECT_EQ("::", ex_info->link_addr_.toText());
EXPECT_EQ("2001:db8::100", ex_info->lease_addr_.toText());
const vector<uint8_t>& relay_id = ex_info->id_;
const vector<uint8_t>& exp_relay_id = vector<uint8_t>(8, 0x64);
EXPECT_EQ(1, mgr->remote_id6_.size());
ex_info = mgr->remote_id6_.front();
ASSERT_TRUE(ex_info);
- EXPECT_EQ("::", ex_info->link_addr_.toText());
EXPECT_EQ("2001:db8::100", ex_info->lease_addr_.toText());
const vector<uint8_t>& remote_id = ex_info->id_;
const vector<uint8_t>& exp_remote_id = { 1, 2, 3, 4, 5, 6 };
EXPECT_EQ(exp_remote_id, remote_id);
-
- EXPECT_TRUE(mgr->link_addr6_.empty());
}
/// Verify setExtendedInfoTablesEnabled with two relays.
EXPECT_EQ(1, mgr->relay_id6_.size());
Lease6ExtendedInfoPtr ex_info = mgr->relay_id6_.front();
ASSERT_TRUE(ex_info);
- EXPECT_EQ("2001:db8::5", ex_info->link_addr_.toText());
EXPECT_EQ("2001:db8::100", ex_info->lease_addr_.toText());
const vector<uint8_t>& relay_id = ex_info->id_;
const vector<uint8_t>& exp_relay_id = vector<uint8_t>(8, 0x64);
EXPECT_EQ(1, mgr->remote_id6_.size());
ex_info = mgr->remote_id6_.front();
ASSERT_TRUE(ex_info);
- EXPECT_EQ("2001:db8::5", ex_info->link_addr_.toText());
EXPECT_EQ("2001:db8::100", ex_info->lease_addr_.toText());
const vector<uint8_t>& remote_id = ex_info->id_;
const vector<uint8_t>& exp_remote_id = { 1, 2, 3, 4, 5, 6 };
EXPECT_EQ(exp_remote_id, remote_id);
-
- ASSERT_EQ(2, mgr->link_addr6_.size());
- Lease6SimpleExtendedInfoPtr sex_info = mgr->link_addr6_.front();
- ASSERT_TRUE(sex_info);
- EXPECT_EQ("2001:db8::1", sex_info->link_addr_.toText());
- EXPECT_EQ("2001:db8::100", sex_info->lease_addr_.toText());
- sex_info = mgr->link_addr6_.back();
- ASSERT_TRUE(sex_info);
- EXPECT_EQ("2001:db8::5", sex_info->link_addr_.toText());
- EXPECT_EQ("2001:db8::100", sex_info->lease_addr_.toText());
}
// There's no point in calling any other methods in LeaseMgr, as they
// Create parameter values.
IOAddress lease_addr(ADDRESS6[0]);
- IOAddress link_addr(ADDRESS6[1]);
vector<uint8_t> relay_id = createFromString(DUID6[0]);
vector<uint8_t> remote_id = createFromString(DUID6[1]);
// Fill the table.
- EXPECT_NO_THROW(lease_mgr_->addRelayId6(lease_addr, link_addr, relay_id));
- EXPECT_NO_THROW(lease_mgr_->addRemoteId6(lease_addr, link_addr, remote_id));
- EXPECT_NO_THROW(lease_mgr_->addLinkAddr6(lease_addr, link_addr));
+ EXPECT_NO_THROW(lease_mgr_->addRelayId6(lease_addr, relay_id));
+ EXPECT_NO_THROW(lease_mgr_->addRemoteId6(lease_addr, remote_id));
EXPECT_EQ(1, lease_mgr_->relay_id6_.size());
EXPECT_EQ(1, lease_mgr_->remote_id6_.size());
- EXPECT_EQ(1, lease_mgr_->link_addr6_.size());
// Delete the second lease: no side effect on tables.
Lease6Ptr lease = leases6[1];
EXPECT_EQ(Lease::ACTION_IGNORE, lease->extended_info_action_);
EXPECT_EQ(1, lease_mgr_->relay_id6_.size());
EXPECT_EQ(1, lease_mgr_->remote_id6_.size());
- EXPECT_EQ(1, lease_mgr_->link_addr6_.size());
// Delete the first lease: tables are cleared.
lease = leases6[0];
EXPECT_TRUE(ret);
EXPECT_TRUE(lease_mgr_->relay_id6_.empty());
EXPECT_TRUE(lease_mgr_->remote_id6_.empty());
- EXPECT_TRUE(lease_mgr_->link_addr6_.empty());
}
/// @brief Verifies that v6 deleteLease does not touch extended info tables
// Create parameter values.
IOAddress lease_addr(ADDRESS6[0]);
- IOAddress link_addr(ADDRESS6[1]);
vector<uint8_t> relay_id = createFromString(DUID6[0]);
vector<uint8_t> remote_id = createFromString(DUID6[1]);
// Fill the table.
- EXPECT_NO_THROW(lease_mgr_->addRelayId6(lease_addr, link_addr, relay_id));
- EXPECT_NO_THROW(lease_mgr_->addRemoteId6(lease_addr, link_addr, remote_id));
- EXPECT_NO_THROW(lease_mgr_->addLinkAddr6(lease_addr, link_addr));
+ EXPECT_NO_THROW(lease_mgr_->addRelayId6(lease_addr, relay_id));
+ EXPECT_NO_THROW(lease_mgr_->addRemoteId6(lease_addr, remote_id));
EXPECT_EQ(1, lease_mgr_->relay_id6_.size());
EXPECT_EQ(1, lease_mgr_->remote_id6_.size());
- EXPECT_EQ(1, lease_mgr_->link_addr6_.size());
// Delete the first lease: tables are no longer cleared.
Lease6Ptr lease = leases6[0];
EXPECT_EQ(Lease::ACTION_IGNORE, lease->extended_info_action_);
EXPECT_EQ(1, lease_mgr_->relay_id6_.size());
EXPECT_EQ(1, lease_mgr_->remote_id6_.size());
- EXPECT_EQ(1, lease_mgr_->link_addr6_.size());
}
/// @brief Verifies that v6 addLease adds references to extended info tables.
EXPECT_TRUE(lease_mgr_->getExtendedInfoTablesEnabled());
EXPECT_TRUE(lease_mgr_->relay_id6_.empty());
EXPECT_TRUE(lease_mgr_->remote_id6_.empty());
- EXPECT_TRUE(lease_mgr_->link_addr6_.empty());
// Create parameter values.
Lease6Ptr lease;
IOAddress lease_addr(ADDRESS6[1]);
- IOAddress link_addr(ADDRESS6[2]);
vector<uint8_t> duid_data = createFromString(DUID6[0]);
DuidPtr duid(new DUID(duid_data));
ASSERT_NO_THROW(lease.reset(new Lease6(Lease::TYPE_NA, lease_addr, duid,
Lease6ExtendedInfoPtr ex_info = *relay_id_it;
ASSERT_TRUE(ex_info);
EXPECT_EQ(ADDRESS6[1], ex_info->lease_addr_.toText());
- EXPECT_EQ(ADDRESS6[2], ex_info->link_addr_.toText());
const vector<uint8_t>& relay_id = ex_info->id_;
const vector<uint8_t>& exp_relay_id = vector<uint8_t>(8, 0x64);
EXPECT_EQ(exp_relay_id, relay_id);
ex_info = *remote_id_it;
ASSERT_TRUE(ex_info);
EXPECT_EQ(ADDRESS6[1], ex_info->lease_addr_.toText());
- EXPECT_EQ(ADDRESS6[2], ex_info->link_addr_.toText());
const vector<uint8_t>& remote_id = ex_info->id_;
const vector<uint8_t>& exp_remote_id = { 1, 2, 3, 4, 5, 6 };
EXPECT_EQ(exp_remote_id, remote_id);
-
- ASSERT_EQ(1, lease_mgr_->link_addr6_.size());
- auto link_addr_it = lease_mgr_->link_addr6_.cbegin();
- ASSERT_NE(link_addr_it, lease_mgr_->link_addr6_.cend());
- Lease6SimpleExtendedInfoPtr sex_info = *link_addr_it;
- ASSERT_TRUE(sex_info);
- EXPECT_EQ(ADDRESS6[1], sex_info->lease_addr_.toText());
- EXPECT_EQ(ADDRESS6[2], sex_info->link_addr_.toText());
}
/// @brief Verifies that v6 addLease does not touch extended info tables
// Create parameter values.
Lease6Ptr lease;
IOAddress lease_addr(ADDRESS6[1]);
- IOAddress link_addr(ADDRESS6[2]);
vector<uint8_t> duid_data = createFromString(DUID6[0]);
DuidPtr duid(new DUID(duid_data));
ASSERT_NO_THROW(lease.reset(new Lease6(Lease::TYPE_NA, lease_addr, duid,
EXPECT_EQ(Lease::ACTION_IGNORE, lease->extended_info_action_);
EXPECT_TRUE(lease_mgr_->relay_id6_.empty());
EXPECT_TRUE(lease_mgr_->remote_id6_.empty());
- EXPECT_TRUE(lease_mgr_->link_addr6_.empty());
}
/// @brief Verifies that updateLease6 does not references to extended
// Create parameter values.
Lease6Ptr lease;
IOAddress lease_addr(ADDRESS6[1]);
- IOAddress link_addr(ADDRESS6[2]);
vector<uint8_t> duid_data = createFromString(DUID6[0]);
DuidPtr duid(new DUID(duid_data));
ASSERT_NO_THROW(lease.reset(new Lease6(Lease::TYPE_NA, lease_addr, duid,
// Tables were not touched.
EXPECT_TRUE(lease_mgr_->relay_id6_.empty());
EXPECT_TRUE(lease_mgr_->remote_id6_.empty());
- EXPECT_TRUE(lease_mgr_->link_addr6_.empty());
// Note that with persist when the database is reloaded the user context
// is still there so tables will be updated: the ACTION_IGNORE setting
// Create parameter values.
Lease6Ptr lease;
IOAddress lease_addr(ADDRESS6[1]);
- IOAddress link_addr(ADDRESS6[2]);
vector<uint8_t> duid_data = createFromString(DUID6[0]);
DuidPtr duid(new DUID(duid_data));
ASSERT_NO_THROW(lease.reset(new Lease6(Lease::TYPE_NA, lease_addr, duid,
EXPECT_TRUE(ret);
EXPECT_EQ(1, lease_mgr_->relay_id6_.size());
EXPECT_EQ(1, lease_mgr_->remote_id6_.size());
- EXPECT_EQ(1, lease_mgr_->link_addr6_.size());
// Set action and call updateLease6.
lease.reset(new Lease6(*lease));
// Tables were cleared.
EXPECT_TRUE(lease_mgr_->relay_id6_.empty());
EXPECT_TRUE(lease_mgr_->remote_id6_.empty());
- EXPECT_TRUE(lease_mgr_->link_addr6_.empty());
}
/// @brief Verifies that updateLease6 does not clears references from extended
// Create parameter values.
Lease6Ptr lease;
IOAddress lease_addr(ADDRESS6[1]);
- IOAddress link_addr(ADDRESS6[2]);
vector<uint8_t> duid_data = createFromString(DUID6[0]);
DuidPtr duid(new DUID(duid_data));
ASSERT_NO_THROW(lease.reset(new Lease6(Lease::TYPE_NA, lease_addr, duid,
EXPECT_TRUE(ret);
EXPECT_EQ(1, lease_mgr_->relay_id6_.size());
EXPECT_EQ(1, lease_mgr_->remote_id6_.size());
- EXPECT_EQ(1, lease_mgr_->link_addr6_.size());
// Disable on the fly extended info tables.
// Note it is a priori an illegal operation so this could have to be
// Tables were not touched.
EXPECT_EQ(1, lease_mgr_->relay_id6_.size());
EXPECT_EQ(1, lease_mgr_->remote_id6_.size());
- EXPECT_EQ(1, lease_mgr_->link_addr6_.size());
}
/// @brief Verifies that updateLease6 adds references to extended
// Create parameter values.
Lease6Ptr lease;
IOAddress lease_addr(ADDRESS6[1]);
- IOAddress link_addr(ADDRESS6[2]);
vector<uint8_t> duid_data = createFromString(DUID6[0]);
DuidPtr duid(new DUID(duid_data));
ASSERT_NO_THROW(lease.reset(new Lease6(Lease::TYPE_NA, lease_addr, duid,
EXPECT_TRUE(ret);
EXPECT_TRUE(lease_mgr_->relay_id6_.empty());
EXPECT_TRUE(lease_mgr_->remote_id6_.empty());
- EXPECT_TRUE(lease_mgr_->link_addr6_.empty());
// Set user context.
lease.reset(new Lease6(*lease));
Lease6ExtendedInfoPtr ex_info = *relay_id_it;
ASSERT_TRUE(ex_info);
EXPECT_EQ(ADDRESS6[1], ex_info->lease_addr_.toText());
- EXPECT_EQ(ADDRESS6[2], ex_info->link_addr_.toText());
const vector<uint8_t>& relay_id = ex_info->id_;
const vector<uint8_t>& exp_relay_id = vector<uint8_t>(8, 0x64);
EXPECT_EQ(exp_relay_id, relay_id);
ex_info = *remote_id_it;
ASSERT_TRUE(ex_info);
EXPECT_EQ(ADDRESS6[1], ex_info->lease_addr_.toText());
- EXPECT_EQ(ADDRESS6[2], ex_info->link_addr_.toText());
const vector<uint8_t>& remote_id = ex_info->id_;
const vector<uint8_t>& exp_remote_id = { 1, 2, 3, 4, 5, 6 };
EXPECT_EQ(exp_remote_id, remote_id);
-
- ASSERT_EQ(1, lease_mgr_->link_addr6_.size());
- auto link_addr_it = lease_mgr_->link_addr6_.cbegin();
- ASSERT_NE(link_addr_it, lease_mgr_->link_addr6_.cend());
- Lease6SimpleExtendedInfoPtr sex_info = *link_addr_it;
- ASSERT_TRUE(sex_info);
- EXPECT_EQ(ADDRESS6[1], sex_info->lease_addr_.toText());
- EXPECT_EQ(ADDRESS6[2], sex_info->link_addr_.toText());
}
/// @brief Verifies that updateLease6 does not add references to extended
// Create parameter values.
Lease6Ptr lease;
IOAddress lease_addr(ADDRESS6[1]);
- IOAddress link_addr(ADDRESS6[2]);
vector<uint8_t> duid_data = createFromString(DUID6[0]);
DuidPtr duid(new DUID(duid_data));
ASSERT_NO_THROW(lease.reset(new Lease6(Lease::TYPE_NA, lease_addr, duid,
// Tables were not touched.
EXPECT_TRUE(lease_mgr_->relay_id6_.empty());
EXPECT_TRUE(lease_mgr_->remote_id6_.empty());
- EXPECT_TRUE(lease_mgr_->link_addr6_.empty());
}
/// @brief Verifies that updateLease6 modifies references to extended
// Create parameter values.
Lease6Ptr lease;
IOAddress lease_addr(ADDRESS6[1]);
- IOAddress link_addr(ADDRESS6[2]);
vector<uint8_t> duid_data = createFromString(DUID6[0]);
DuidPtr duid(new DUID(duid_data));
ASSERT_NO_THROW(lease.reset(new Lease6(Lease::TYPE_NA, lease_addr, duid,
Lease6ExtendedInfoPtr ex_info = *relay_id_it;
ASSERT_TRUE(ex_info);
EXPECT_EQ(ADDRESS6[1], ex_info->lease_addr_.toText());
- EXPECT_EQ(ADDRESS6[2], ex_info->link_addr_.toText());
const vector<uint8_t>& relay_id = ex_info->id_;
const vector<uint8_t>& exp_relay_id = vector<uint8_t>(8, 0x64);
EXPECT_EQ(exp_relay_id, relay_id);
ex_info = *remote_id_it;
ASSERT_TRUE(ex_info);
EXPECT_EQ(ADDRESS6[1], ex_info->lease_addr_.toText());
- EXPECT_EQ(ADDRESS6[2], ex_info->link_addr_.toText());
const vector<uint8_t>& remote_id = ex_info->id_;
const vector<uint8_t>& exp_remote_id = { 1, 2, 3, 4, 5, 6 };
EXPECT_EQ(exp_remote_id, remote_id);
- ASSERT_EQ(1, lease_mgr_->link_addr6_.size());
- auto link_addr_it = lease_mgr_->link_addr6_.cbegin();
- ASSERT_NE(link_addr_it, lease_mgr_->link_addr6_.cend());
- Lease6SimpleExtendedInfoPtr sex_info = *link_addr_it;
- ASSERT_TRUE(sex_info);
- EXPECT_EQ(ADDRESS6[1], sex_info->lease_addr_.toText());
- EXPECT_EQ(ADDRESS6[2], sex_info->link_addr_.toText());
-
// Change the user context.
- IOAddress link_addr2(ADDRESS6[4]);
user_context_txt =
"{ \"ISC\": { \"relay-info\": [ { \"hop\": 44,"
" \"link\": \"2001:db8::4\", \"peer\": \"2001:db8::5\","
ex_info = *relay_id_it;
ASSERT_TRUE(ex_info);
EXPECT_EQ(ADDRESS6[1], ex_info->lease_addr_.toText());
- EXPECT_NE(ADDRESS6[2], ex_info->link_addr_.toText());
- EXPECT_EQ(ADDRESS6[4], ex_info->link_addr_.toText());
const vector<uint8_t>& relay_id2 = ex_info->id_;
const vector<uint8_t>& exp_relay_id2 = vector<uint8_t>(8, 0x65);
EXPECT_NE(exp_relay_id, relay_id2);
ex_info = *remote_id_it;
ASSERT_TRUE(ex_info);
EXPECT_EQ(ADDRESS6[1], ex_info->lease_addr_.toText());
- EXPECT_NE(ADDRESS6[2], ex_info->link_addr_.toText());
- EXPECT_EQ(ADDRESS6[4], ex_info->link_addr_.toText());
const vector<uint8_t>& remote_id2 = ex_info->id_;
const vector<uint8_t>& exp_remote_id2 = { 1, 2, 3, 4, 5, 7 };
EXPECT_NE(exp_remote_id, remote_id2);
EXPECT_EQ(exp_remote_id2, remote_id2);
-
- ASSERT_EQ(1, lease_mgr_->link_addr6_.size());
- link_addr_it = lease_mgr_->link_addr6_.cbegin();
- ASSERT_NE(link_addr_it, lease_mgr_->link_addr6_.cend());
- sex_info = *link_addr_it;
- ASSERT_TRUE(sex_info);
- EXPECT_EQ(ADDRESS6[1], sex_info->lease_addr_.toText());
- EXPECT_NE(ADDRESS6[2], sex_info->link_addr_.toText());
- EXPECT_EQ(ADDRESS6[4], sex_info->link_addr_.toText());
}
} // namespace
using Memfile_LeaseMgr::setExtendedInfoTablesEnabled;
using Memfile_LeaseMgr::relay_id6_;
using Memfile_LeaseMgr::remote_id6_;
- using Memfile_LeaseMgr::link_addr6_;
};
/// @brief Test fixture class for @c Memfile_LeaseMgr
Lease6ExtendedInfoPtr ex_info = *relay_id_it;
ASSERT_TRUE(ex_info);
EXPECT_EQ("2001:db8:1::2", ex_info->lease_addr_.toText());
- EXPECT_EQ("2001:db8::4", ex_info->link_addr_.toText());
const vector<uint8_t>& exp_relay_id = vector<uint8_t>(8, 0x64);
EXPECT_EQ(exp_relay_id, ex_info->id_);
ex_info = *remote_id_it;
ASSERT_TRUE(ex_info);
EXPECT_EQ("2001:db8:1::2", ex_info->lease_addr_.toText());
- EXPECT_EQ("2001:db8::4", ex_info->link_addr_.toText());
const vector<uint8_t>& exp_remote_id = { 1, 2, 3, 4, 5, 6 };
EXPECT_EQ(exp_remote_id, ex_info->id_);
-
- ASSERT_EQ(1, lease_mgr->link_addr6_.size());
- auto link_addr_it = lease_mgr->link_addr6_.cbegin();
- ASSERT_NE(link_addr_it, lease_mgr->link_addr6_.cend());
- Lease6SimpleExtendedInfoPtr sex_info = *link_addr_it;
- ASSERT_TRUE(sex_info);
- EXPECT_EQ("2001:db8:1::2", sex_info->lease_addr_.toText());
- EXPECT_EQ("2001:db8::4", sex_info->link_addr_.toText());
}
/// @brief Checks that buildExtendedInfoTables6 does not update
// Check that extended info tables were not updated.
EXPECT_TRUE(lease_mgr->relay_id6_.empty());
EXPECT_TRUE(lease_mgr->remote_id6_.empty());
- EXPECT_TRUE(lease_mgr->link_addr6_.empty());
}
/// @brief Checks that buildExtendedInfoTables6 adds extended info to tables
Lease6ExtendedInfoPtr ex_info = *relay_id_it;
ASSERT_TRUE(ex_info);
EXPECT_EQ("2001:db8:1::2", ex_info->lease_addr_.toText());
- EXPECT_EQ("2001:db8::4", ex_info->link_addr_.toText());
const vector<uint8_t>& exp_relay_id = vector<uint8_t>(8, 0x64);
EXPECT_EQ(exp_relay_id, ex_info->id_);
ex_info = *remote_id_it;
ASSERT_TRUE(ex_info);
EXPECT_EQ("2001:db8:1::2", ex_info->lease_addr_.toText());
- EXPECT_EQ("2001:db8::4", ex_info->link_addr_.toText());
const vector<uint8_t>& exp_remote_id = { 1, 2, 3, 4, 5, 6 };
EXPECT_EQ(exp_remote_id, ex_info->id_);
-
- ASSERT_EQ(1, lease_mgr->link_addr6_.size());
- auto link_addr_it = lease_mgr->link_addr6_.cbegin();
- ASSERT_NE(link_addr_it, lease_mgr->link_addr6_.cend());
- Lease6SimpleExtendedInfoPtr sex_info = *link_addr_it;
- ASSERT_TRUE(sex_info);
- EXPECT_EQ("2001:db8:1::2", sex_info->lease_addr_.toText());
- EXPECT_EQ("2001:db8::4", sex_info->link_addr_.toText());
}
/// @brief Checks that buildExtendedInfoTables6 does not add extended info
// Check that extended info tables were not updated.
EXPECT_TRUE(lease_mgr->relay_id6_.empty());
EXPECT_TRUE(lease_mgr->remote_id6_.empty());
- EXPECT_TRUE(lease_mgr->link_addr6_.empty());
}
/// @brief Checks that buildExtendedInfoTables6 updates when explicitly
// Check that extended info tables were updated.
EXPECT_EQ(1, lease_mgr->relay_id6_.size());
EXPECT_EQ(1, lease_mgr->remote_id6_.size());
- EXPECT_EQ(1, lease_mgr->link_addr6_.size());
// Add a junk entry in each table.
IOAddress lease_addr("2001:db8:1::10");
- IOAddress link_addr("2001:db8::11");
const vector<uint8_t>& relay_id = vector<uint8_t>(10, 0x65);
Lease6ExtendedInfoPtr relay;
- relay.reset(new Lease6ExtendedInfo(lease_addr, link_addr, relay_id));
+ relay.reset(new Lease6ExtendedInfo(lease_addr, relay_id));
lease_mgr->relay_id6_.insert(relay);
const vector<uint8_t>& remote_id = { 10, 11, 12, 13, 14, 15, 16 };
Lease6ExtendedInfoPtr remote;
- remote.reset(new Lease6ExtendedInfo(lease_addr, link_addr, remote_id));
+ remote.reset(new Lease6ExtendedInfo(lease_addr, remote_id));
lease_mgr->remote_id6_.insert(remote);
- Lease6SimpleExtendedInfoPtr link;
- link.reset(new Lease6SimpleExtendedInfo(lease_addr, link_addr));
- lease_mgr->link_addr6_.insert(link);
// Check that tables grown.
EXPECT_EQ(2, lease_mgr->relay_id6_.size());
EXPECT_EQ(2, lease_mgr->remote_id6_.size());
- EXPECT_EQ(2, lease_mgr->link_addr6_.size());
// Rebuild the tables.
size_t updated = 0;
Lease6ExtendedInfoPtr ex_info = *relay_id_it;
ASSERT_TRUE(ex_info);
EXPECT_EQ("2001:db8:1::2", ex_info->lease_addr_.toText());
- EXPECT_EQ("2001:db8::4", ex_info->link_addr_.toText());
const vector<uint8_t>& exp_relay_id = vector<uint8_t>(8, 0x64);
EXPECT_EQ(exp_relay_id, ex_info->id_);
ex_info = *remote_id_it;
ASSERT_TRUE(ex_info);
EXPECT_EQ("2001:db8:1::2", ex_info->lease_addr_.toText());
- EXPECT_EQ("2001:db8::4", ex_info->link_addr_.toText());
const vector<uint8_t>& exp_remote_id = { 1, 2, 3, 4, 5, 6 };
EXPECT_EQ(exp_remote_id, ex_info->id_);
-
- ASSERT_EQ(1, lease_mgr->link_addr6_.size());
- auto link_addr_it = lease_mgr->link_addr6_.cbegin();
- ASSERT_NE(link_addr_it, lease_mgr->link_addr6_.cend());
- Lease6SimpleExtendedInfoPtr sex_info = *link_addr_it;
- ASSERT_TRUE(sex_info);
- EXPECT_EQ("2001:db8:1::2", sex_info->lease_addr_.toText());
- EXPECT_EQ("2001:db8::4", sex_info->link_addr_.toText());
}
} // namespace