示例#1
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, StatusCode) {
    DHCPv6 dhcp;
    DHCPv6::status_code_type data(0x72, "libtins, mah frend"), output;
    dhcp.status_code(data);
    output = dhcp.status_code();
    EXPECT_EQ(data.code, output.code);
    EXPECT_EQ(data.message, output.message);
}
示例#2
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, OptionRequest) {
    DHCPv6 dhcp;
    DHCPv6::option_request_type data, output;
    data.push_back(DHCPv6::IA_ADDR);
    data.push_back(DHCPv6::IA_NA);
    
    dhcp.option_request(data);
    output = dhcp.option_request();
    
    EXPECT_EQ(data, output);
}
示例#3
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, RelayMessage) {
    DHCPv6 dhcp;
    DHCPv6::relay_msg_type data, output;
    data.push_back(1);
    data.push_back(156);
    data.push_back(12);
    
    dhcp.relay_message(data);
    output = dhcp.relay_message();
    
    EXPECT_EQ(data, output);
}
示例#4
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, InterfaceID) {
    DHCPv6 dhcp;
    DHCPv6::interface_id_type data, output;
    data.push_back(1);
    data.push_back(156);
    data.push_back(12);
    
    dhcp.interface_id(data);
    output = dhcp.interface_id();
    
    EXPECT_EQ(data, output);
}
示例#5
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, IA_TA) {
    DHCPv6 dhcp;
    DHCPv6::ia_ta_type data, output;
    data.id = 0x9283f78a;
    data.options.push_back(0);
    data.options.push_back(1);
    data.options.push_back(2);
    dhcp.ia_ta(data);
    output = dhcp.ia_ta();
    
    EXPECT_EQ(data.id, output.id);
    EXPECT_EQ(data.options, output.options);
}
示例#6
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, VendorInfo) {
    DHCPv6 dhcp;
    DHCPv6::vendor_info_type data(0x72988fad), output;
    data.data.push_back(22);
    data.data.push_back(176);
    data.data.push_back(99);
    data.data.push_back(231);
    
    dhcp.vendor_info(data);
    output = dhcp.vendor_info();
    
    EXPECT_EQ(data.enterprise_number, output.enterprise_number);
    EXPECT_EQ(data.data, output.data);
}
示例#7
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, IA_Address) {
    DHCPv6 dhcp;
    DHCPv6::ia_address_type data, output;
    data.address = "fe00:feaa::1";
    data.preferred_lifetime = 0x9283f78a;
    data.valid_lifetime = 0x938fda32;
    data.options.push_back(0);
    data.options.push_back(1);
    data.options.push_back(2);
    dhcp.ia_address(data);
    output = dhcp.ia_address();
    
    EXPECT_EQ(data.address, output.address);
    EXPECT_EQ(data.preferred_lifetime, output.preferred_lifetime);
    EXPECT_EQ(data.valid_lifetime, output.valid_lifetime);
    EXPECT_EQ(data.options, output.options);
}
示例#8
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, IA_NA) {
    DHCPv6 dhcp;
    DHCPv6::ia_na_type data, output;
    data.id = 0x9283f78a;
    data.t1 = 0xaf235212;
    data.t2 = 0x9a8293fa;
    data.options.push_back(0);
    data.options.push_back(1);
    data.options.push_back(2);
    dhcp.ia_na(data);
    output = dhcp.ia_na();
    
    EXPECT_EQ(data.id, output.id);
    EXPECT_EQ(data.t1, output.t1);
    EXPECT_EQ(data.t2, output.t2);
    EXPECT_EQ(data.options, output.options);
}
示例#9
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, UserClass) {
    DHCPv6 dhcp;
    DHCPv6::user_class_type data, output;
    DHCPv6::class_option_data_type user_data;
    user_data.push_back(22);
    user_data.push_back(176);
    data.data.push_back(user_data);
    
    user_data.push_back(99);
    user_data.push_back(231);
    data.data.push_back(user_data);
    
    dhcp.user_class(data);
    output = dhcp.user_class();
    
    EXPECT_EQ(data.data, output.data);
}
示例#10
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, VendorClass) {
    DHCPv6 dhcp;
    DHCPv6::vendor_class_type data(15), output;
    DHCPv6::class_option_data_type user_data;
    user_data.push_back(22);
    user_data.push_back(176);
    data.vendor_class_data.push_back(user_data);
    
    user_data.push_back(99);
    user_data.push_back(231);
    data.vendor_class_data.push_back(user_data);
    
    dhcp.vendor_class(data);
    output = dhcp.vendor_class();
    
    EXPECT_EQ(data.enterprise_number, output.enterprise_number);
    EXPECT_EQ(data.vendor_class_data, output.vendor_class_data);
}
示例#11
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, Client_Server_ID_DUIDLL) {
    DHCPv6 dhcp;
    DHCPv6::duid_ll data, output;
    DHCPv6::duid_type tmp, tmp2;
    data.hw_type = 0x5f;
    data.lladdress.push_back(78);
    data.lladdress.push_back(66);
    data.lladdress.push_back(209);
    dhcp.client_id(data);
    tmp = dhcp.client_id();
    output = DHCPv6::duid_ll::from_bytes(&tmp.data[0], (uint32_t)tmp.data.size());
    EXPECT_EQ(data.hw_type, output.hw_type);
    EXPECT_EQ(data.lladdress, output.lladdress);
    
    dhcp.server_id(data);
    tmp2 = dhcp.server_id();
    EXPECT_EQ(tmp.id, tmp2.id);
    EXPECT_EQ(tmp.data, tmp2.data);
}
示例#12
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, Client_Server_ID_DUIDEN) {
    DHCPv6 dhcp;
    DHCPv6::duid_en data, output;
    DHCPv6::duid_type tmp, tmp2;
    data.enterprise_number = 0x5faa23da;
    data.identifier.push_back(78);
    data.identifier.push_back(66);
    data.identifier.push_back(209);
    dhcp.client_id(data);
    tmp = dhcp.client_id();
    output = DHCPv6::duid_en::from_bytes(&tmp.data[0], (uint32_t)tmp.data.size());
    EXPECT_EQ(data.enterprise_number, output.enterprise_number);
    EXPECT_EQ(data.identifier, output.identifier);
    
    dhcp.server_id(data);
    tmp2 = dhcp.server_id();
    EXPECT_EQ(tmp.id, tmp2.id);
    EXPECT_EQ(tmp.data, tmp2.data);
}
示例#13
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, Authentication) {
    DHCPv6 dhcp;
    DHCPv6::authentication_type data, output;
    data.protocol = 0x92;
    data.algorithm = 0x8f;
    data.rdm = 0xa1;
    data.replay_detection = 0x78ad6d5290398df7ULL;
    data.auth_info.push_back(0);
    data.auth_info.push_back(1);
    data.auth_info.push_back(2);
    dhcp.authentication(data);
    output = dhcp.authentication();
    
    EXPECT_EQ(data.protocol, output.protocol);
    EXPECT_EQ(data.algorithm, output.algorithm);
    EXPECT_EQ(data.rdm, output.rdm);
    EXPECT_EQ(data.replay_detection, output.replay_detection);
    EXPECT_EQ(data.auth_info, output.auth_info);
}
示例#14
0
TEST_F(DHCPv6Test, RemoveOption) {
    DHCPv6 dhcp;
    PDU::serialization_type old_buffer = dhcp.serialize();

    dhcp.server_unicast("fe00:0a9d:dd23::1");
    dhcp.preference(12);

    EXPECT_TRUE(dhcp.remove_option(DHCPv6::UNICAST));
    EXPECT_TRUE(dhcp.remove_option(DHCPv6::PREFERENCE));

    PDU::serialization_type new_buffer = dhcp.serialize();
    EXPECT_EQ(old_buffer, new_buffer);
}
示例#15
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, Preference) {
    DHCPv6 dhcp;
    dhcp.preference(0x8a);
    EXPECT_EQ(0x8a, dhcp.preference());
}
示例#16
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, TransactionId) {
    DHCPv6 dhcp;
    dhcp.transaction_id(0x8af2ad);
    EXPECT_EQ(0x8af2adU, dhcp.transaction_id());
}
示例#17
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, HopCount) {
    DHCPv6 dhcp;
    dhcp.hop_count(0x8a);
    EXPECT_EQ(0x8a, dhcp.hop_count());
}
示例#18
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, MessageType) {
    DHCPv6 dhcp;
    dhcp.msg_type(DHCPv6::SOLICIT);
    EXPECT_EQ(DHCPv6::SOLICIT, dhcp.msg_type());
}
示例#19
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, ReconfigureAccept) {
    DHCPv6 dhcp;
    dhcp.reconfigure_accept();
    EXPECT_EQ(true, dhcp.has_reconfigure_accept());
}
示例#20
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, ReconfigureMsg) {
    DHCPv6 dhcp;
    dhcp.reconfigure_msg(0x8a);
    EXPECT_EQ(0x8a, dhcp.reconfigure_msg());
}
示例#21
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, ElapsedTime) {
    DHCPv6 dhcp;
    dhcp.elapsed_time(0x8a2f);
    EXPECT_EQ(0x8a2f, dhcp.elapsed_time());
}
示例#22
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, ServerUnicast) {
    const IPv6Address addr("fe00:0a9d:dd23::1");
    DHCPv6 dhcp;
    dhcp.server_unicast(addr);
    EXPECT_EQ(addr, dhcp.server_unicast());
}
示例#23
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, DefaultConstructor) {
    DHCPv6 dhcp;
    EXPECT_EQ(0, (int)dhcp.msg_type());
    EXPECT_EQ(0, dhcp.hop_count());
    EXPECT_EQ(0U, dhcp.transaction_id());
}
示例#24
0
文件: dhcpv6.cpp 项目: Imva/libtins
TEST_F(DHCPv6Test, RapidCommit) {
    DHCPv6 dhcp;
    dhcp.rapid_commit();
    EXPECT_EQ(true, dhcp.has_rapid_commit());
}