]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[3682] Stub entries for MySQL host data source unit-tests added.
authorTomek Mrugalski <tomasz@isc.org>
Sun, 18 Oct 2015 22:59:05 +0000 (00:59 +0200)
committerTomek Mrugalski <tomasz@isc.org>
Sun, 18 Oct 2015 22:59:05 +0000 (00:59 +0200)
src/lib/dhcpsrv/tests/mysql_host_data_source_unittest.cc

index 0190ea45eb5067dec4e907ee74f2ce72d566f943..113d2d64fed8eb37c90204d323b3755246d52f58 100644 (file)
@@ -298,4 +298,132 @@ TEST_F(MySqlHostDataSourceTest, checkTimeConversion) {
     EXPECT_EQ(cltt, converted_cltt);
 }
 
+// Test verifies if a host reservation can be added and later retrieved by IPv4
+// address.
+TEST_F(MySqlHostDataSourceTest, basic4) {
+    /// @todo: basic - add host reserveration, retrieve it by address and
+    /// confirm that all fields have correct value.
+}
+
+// Test verifies if a host reservation can be added and later retrieved by
+// hardware address.
+TEST_F(MySqlHostDataSourceTest, hwaddr) {
+    /// @todo: add host reservation with hardware address, retrieve it by
+    /// hardware address and make sure the values are correct.
+}
+
+// Test verifies if a host reservation can be added and later retrieved by
+// client identifier.
+TEST_F(MySqlHostDataSourceTest, clientId) {
+    /// @todo: add host reservation with hardware address, retrieve it by
+    /// hardware address and make sure the values are correct.
+}
+
+// Test verifies if hardware address and client identifier are not confused.
+TEST_F(MySqlHostDataSourceTest, hwaddrNotClientId1) {
+    /// @todo: add host reservation with hardware address X, try to retrieve
+    /// host by client-identifier X, verify that the reservation is not returned.
+}
+
+// Test verifies if hardware address and client identifier are not confused.
+TEST_F(MySqlHostDataSourceTest, hwaddrNotClientId2) {
+    /// @todo: add host reservation with client identifier X, try to retrieve host
+    /// by hardware address X, verify that the reservation is not returned.
+}
+
+// Test verifies if the hardware or client-id query can match hardware address.
+TEST_F(MySqlHostDataSourceTest, hwaddrOrClientId1) {
+    /// @todo: Add host reservation with hardware address X, try to retrieve
+    /// host for hardware address X or client identifier Y, verify that the
+    /// reservation is returned.
+}
+
+// Test verifies if the hardware or client-id query can match client-id.
+TEST_F(MySqlHostDataSourceTest, hwaddrOrClientId2) {
+    /// @todo: Add host reservation with client identifier Y, try to retrieve
+    /// host for hardware address X or client identifier Y, verify that the
+    /// reservation is returned.
+}
+
+// Test verifies if a host reservation can be added and later retrieved by IPv6
+// address.
+TEST_F(MySqlHostDataSourceTest, basic6) {
+    /// @todo: basic - add host reserveration, retrieve it by address and
+    /// confirm that all fields (including IPv6 address) have correct values.
+}
+
+// Test verifies if a host reservation can be stored with both IPv6 address and
+// prefix.
+TEST_F(MySqlHostDataSourceTest, addr6AndPrefix) {
+    /// @todo: Add host reservation with an IPv6 address and IPv6 prefix,
+    /// retrieve it and verify that both v6 address and prefix are retrieved
+    /// correctly.
+}
+
+// Test verifies if multiple client classes for IPv4 can be stored.
+TEST_F(MySqlHostDataSourceTest, DISABLED_multipleClientClasses4) {
+    /// @todo: Implement this test later.
+
+    /// Add host reservation with a multiple v4 client-classes, retrieve it and
+    /// make sure that all client classes are retrieved properly.
+}
+
+// Test verifies if multiple client classes for IPv6 can be stored.
+TEST_F(MySqlHostDataSourceTest, DISABLED_multipleClientClasses6) {
+    /// @todo: Implement this test later.
+
+    /// Add host reservation with a multiple v6 client-classes, retrieve it and
+    /// make sure that all client classes are retrieved properly.
+}
+
+// Test verifies if multiple client classes for both IPv4 and IPv6 can be stored.
+TEST_F(MySqlHostDataSourceTest, DISABLED_multipleClientClassesBoth) {
+    /// @todo: Implement this test later.
+
+    /// Add host reservation with a multiple v4 and v6 client-classes, retrieve
+    /// it and make sure that all client classes are retrieved properly. Also,
+    /// check that the classes are not confused.
+}
+
+// Test if retrieving hosts by hardware addresses is working correctly.
+TEST_F(MySqlHostDataSourceTest, uniqueHW) {
+    /// @todo: Insert 100 host reservations, each with unique hardware address,
+    /// try to retrieve each and make sure that the correct host is returned.
+}
+
+// Test if the same host can have reservations in different subnets (with the
+// same hardware address)
+TEST_F(MySqlHostDataSourceTest, MultipleSubnetsHWAddr) {
+    /// @todo: Insert 10 host reservations for a given physical host (the same
+    /// hardware address), but for different subnets (different subnet-ids).
+    /// Make sure that getAll() returns them all correctly.
+}
+
+// Test if the same host can have reservations in different subnets (with the
+// same client identifier)
+TEST_F(MySqlHostDataSourceTest, MultipleSubnetsClientId) {
+    /// @todo: Insert 10 host reservations for a given physical host (the same
+    /// client-identifier), but for different subnets (different subnet-ids).
+    /// Make sure that getAll() returns them correctly.
+}
+
+// Test if host reservations made for different IPv4 subnets are handled correctly.
+TEST_F(MySqlHostDataSourceTest, subnetId4) {
+    /// @todo: Insert 10 host reservations for different subnets. Make sure that
+    /// get4(subnet-id, ...) calls return correct reservation.
+}
+
+// Test if host reservations made for different IPv6 subnets are handled correctly.
+TEST_F(MySqlHostDataSourceTest, subnetId6) {
+    /// @todo: Insert 10 host reservations for different subnets. Make sure that
+    /// get6(subnet-id, ...) calls return correct reservation.
+}
+
+// Test if the duplicate host instances can't be inserted.
+TEST_F(MySqlHostDataSourceTest, addDuplicate) {
+    /// @todo: Test for errors, e.g. try to add multiple instances of the same
+    /// host reservation and verify that the second and following attempts will
+    /// throw exceptions.
+}
+
 }; // Of anonymous namespace