mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-01-07 21:50:18 +01:00
keyfile: add testcase for MAC address case
To make sure you can specify the MAC in either upper and lowercase.
This commit is contained in:
parent
b4d0114ff6
commit
c218be1165
3 changed files with 121 additions and 1 deletions
|
|
@ -1,7 +1,8 @@
|
|||
EXTRA_DIST = \
|
||||
Test_Wired_Connection \
|
||||
Test_GSM_Connection \
|
||||
Test_Wireless_Connection
|
||||
Test_Wireless_Connection \
|
||||
Test_Wired_Connection_MAC_Case
|
||||
|
||||
check-local:
|
||||
@for f in $(EXTRA_DIST); do \
|
||||
|
|
|
|||
|
|
@ -0,0 +1,32 @@
|
|||
|
||||
[connection]
|
||||
id=Test Wired Connection MAC Case
|
||||
uuid=4e80a56d-c99f-4aad-a6dd-b449bc398c57
|
||||
type=802-3-ethernet
|
||||
autoconnect=true
|
||||
timestamp=6654332
|
||||
|
||||
[802-3-ethernet]
|
||||
mac-address=00:11:aa:BB:CC:55
|
||||
speed=0
|
||||
duplex=full
|
||||
auto-negotiate=true
|
||||
mtu=1400
|
||||
|
||||
[ipv4]
|
||||
method=manual
|
||||
dns=4.2.2.1;4.2.2.2;
|
||||
addresses1=192.168.0.5;24;192.168.0.1;
|
||||
addresses2=1.2.3.4;16;1.2.1.1;
|
||||
ignore-auto-routes=false
|
||||
ignore-auto-dns=false
|
||||
|
||||
[ipv6]
|
||||
method=manual
|
||||
dns=1111:dddd::aaaa;1::cafe;
|
||||
dns-search=super-domain.com;redhat.com;gnu.org;
|
||||
addresses1=abcd:1234:ffff::cdde/64
|
||||
addresses2=1:2:3:4:5:6:7:8/96
|
||||
routes1=a:b:c:d::/64;f:e:d:c:1:2:3:4;99;
|
||||
ignore-auto-routes=false
|
||||
ignore-auto-dns=false
|
||||
|
|
@ -708,6 +708,91 @@ test_write_wired_connection (void)
|
|||
g_object_unref (connection);
|
||||
}
|
||||
|
||||
#define TEST_WIRED_MAC_CASE_FILE TEST_KEYFILES_DIR"/Test_Wired_Connection_MAC_Case"
|
||||
|
||||
static void
|
||||
test_read_wired_mac_case (void)
|
||||
{
|
||||
NMConnection *connection;
|
||||
NMSettingConnection *s_con;
|
||||
NMSettingWired *s_wired;
|
||||
GError *error = NULL;
|
||||
const GByteArray *array;
|
||||
char expected_mac_address[ETH_ALEN] = { 0x00, 0x11, 0xaa, 0xbb, 0xcc, 0x55 };
|
||||
const char *tmp;
|
||||
const char *expected_id = "Test Wired Connection MAC Case";
|
||||
const char *expected_uuid = "4e80a56d-c99f-4aad-a6dd-b449bc398c57";
|
||||
|
||||
connection = connection_from_file (TEST_WIRED_MAC_CASE_FILE);
|
||||
ASSERT (connection != NULL,
|
||||
"connection-read", "failed to read %s", TEST_WIRED_MAC_CASE_FILE);
|
||||
|
||||
ASSERT (nm_connection_verify (connection, &error),
|
||||
"connection-verify", "failed to verify %s: %s", TEST_WIRED_MAC_CASE_FILE, error->message);
|
||||
|
||||
/* ===== CONNECTION SETTING ===== */
|
||||
|
||||
s_con = NM_SETTING_CONNECTION (nm_connection_get_setting (connection, NM_TYPE_SETTING_CONNECTION));
|
||||
ASSERT (s_con != NULL,
|
||||
"connection-verify-connection", "failed to verify %s: missing %s setting",
|
||||
TEST_WIRED_MAC_CASE_FILE,
|
||||
NM_SETTING_CONNECTION_SETTING_NAME);
|
||||
|
||||
/* ID */
|
||||
tmp = nm_setting_connection_get_id (s_con);
|
||||
ASSERT (tmp != NULL,
|
||||
"connection-verify-connection", "failed to verify %s: missing %s / %s key",
|
||||
TEST_WIRED_MAC_CASE_FILE,
|
||||
NM_SETTING_CONNECTION_SETTING_NAME,
|
||||
NM_SETTING_CONNECTION_ID);
|
||||
ASSERT (strcmp (tmp, expected_id) == 0,
|
||||
"connection-verify-connection", "failed to verify %s: unexpected %s / %s key value",
|
||||
TEST_WIRED_MAC_CASE_FILE,
|
||||
NM_SETTING_CONNECTION_SETTING_NAME,
|
||||
NM_SETTING_CONNECTION_ID);
|
||||
|
||||
/* UUID */
|
||||
tmp = nm_setting_connection_get_uuid (s_con);
|
||||
ASSERT (tmp != NULL,
|
||||
"connection-verify-connection", "failed to verify %s: missing %s / %s key",
|
||||
TEST_WIRED_MAC_CASE_FILE,
|
||||
NM_SETTING_CONNECTION_SETTING_NAME,
|
||||
NM_SETTING_CONNECTION_UUID);
|
||||
ASSERT (strcmp (tmp, expected_uuid) == 0,
|
||||
"connection-verify-connection", "failed to verify %s: unexpected %s / %s key value",
|
||||
TEST_WIRED_MAC_CASE_FILE,
|
||||
NM_SETTING_CONNECTION_SETTING_NAME,
|
||||
NM_SETTING_CONNECTION_UUID);
|
||||
|
||||
/* ===== WIRED SETTING ===== */
|
||||
|
||||
s_wired = NM_SETTING_WIRED (nm_connection_get_setting (connection, NM_TYPE_SETTING_WIRED));
|
||||
ASSERT (s_wired != NULL,
|
||||
"connection-verify-wired", "failed to verify %s: missing %s setting",
|
||||
TEST_WIRED_MAC_CASE_FILE,
|
||||
NM_SETTING_WIRED_SETTING_NAME);
|
||||
|
||||
/* MAC address */
|
||||
array = nm_setting_wired_get_mac_address (s_wired);
|
||||
ASSERT (array != NULL,
|
||||
"connection-verify-wired", "failed to verify %s: missing %s / %s key",
|
||||
TEST_WIRED_MAC_CASE_FILE,
|
||||
NM_SETTING_WIRED_SETTING_NAME,
|
||||
NM_SETTING_WIRED_MAC_ADDRESS);
|
||||
ASSERT (array->len == ETH_ALEN,
|
||||
"connection-verify-wired", "failed to verify %s: unexpected %s / %s key value length",
|
||||
TEST_WIRED_MAC_CASE_FILE,
|
||||
NM_SETTING_WIRED_SETTING_NAME,
|
||||
NM_SETTING_WIRED_MAC_ADDRESS);
|
||||
ASSERT (memcmp (array->data, &expected_mac_address[0], sizeof (expected_mac_address)) == 0,
|
||||
"connection-verify-wired", "failed to verify %s: unexpected %s / %s key value",
|
||||
TEST_WIRED_MAC_CASE_FILE,
|
||||
NM_SETTING_WIRED_SETTING_NAME,
|
||||
NM_SETTING_WIRED_MAC_ADDRESS);
|
||||
|
||||
g_object_unref (connection);
|
||||
}
|
||||
|
||||
static void
|
||||
test_read_valid_wireless_connection (void)
|
||||
{
|
||||
|
|
@ -957,6 +1042,8 @@ int main (int argc, char **argv)
|
|||
test_read_valid_wired_connection ();
|
||||
test_write_wired_connection ();
|
||||
|
||||
test_read_wired_mac_case ();
|
||||
|
||||
test_read_valid_wireless_connection ();
|
||||
test_write_wireless_connection ();
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue