OLD | NEW |
---|---|
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "net/dns/dns_config_service_win.h" | 5 #include "net/dns/dns_config_service_win.h" |
6 | 6 |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
8 #include "base/win/windows_version.h" | 8 #include "base/win/windows_version.h" |
9 #include "net/dns/dns_protocol.h" | 9 #include "net/dns/dns_protocol.h" |
10 #include "testing/gtest/include/gtest/gtest.h" | 10 #include "testing/gtest/include/gtest/gtest.h" |
mmenke
2013/09/16 16:34:46
Think we should be including basictypes.h for arra
szym
2013/09/16 19:17:35
Done.
| |
11 | 11 |
12 namespace net { | 12 namespace net { |
13 | 13 |
14 namespace { | 14 namespace { |
15 | 15 |
16 TEST(DnsConfigServiceWinTest, ParseSearchList) { | 16 TEST(DnsConfigServiceWinTest, ParseSearchList) { |
17 const struct TestCase { | 17 const struct TestCase { |
18 const wchar_t* input; | 18 const wchar_t* input; |
19 const char* output[4]; // NULL-terminated, empty if expected false | 19 const char* output[4]; // NULL-terminated, empty if expected false |
20 } cases[] = { | 20 } cases[] = { |
(...skipping 392 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
413 CreateAdapterAddresses(infos), | 413 CreateAdapterAddresses(infos), |
414 { false }, { false }, { false }, { false }, | 414 { false }, { false }, { false }, { false }, |
415 { { false }, { false } }, | 415 { { false }, { false } }, |
416 { { false }, { false } }, | 416 { { false }, { false } }, |
417 { { false }, { false } }, | 417 { { false }, { false } }, |
418 t.input, | 418 t.input, |
419 }; | 419 }; |
420 DnsConfig config; | 420 DnsConfig config; |
421 EXPECT_EQ(internal::CONFIG_PARSE_WIN_OK, | 421 EXPECT_EQ(internal::CONFIG_PARSE_WIN_OK, |
422 internal::ConvertSettingsToDnsConfig(settings, &config)); | 422 internal::ConvertSettingsToDnsConfig(settings, &config)); |
423 EXPECT_EQ(config.append_to_multi_label_name, t.expected_output); | 423 EXPECT_EQ(t.expected_output, config.append_to_multi_label_name); |
424 } | 424 } |
425 } | 425 } |
426 | 426 |
427 // Setting have_name_resolution_policy_table should set unhandled_options. | |
428 TEST(DnsConfigServiceWinTest, HaveNRPT) { | |
429 AdapterInfo infos[2] = { | |
430 { IF_TYPE_USB, IfOperStatusUp, L"connection.suffix", { "1.0.0.1" } }, | |
431 { 0 }, | |
432 }; | |
433 | |
434 const struct TestCase { | |
435 bool have_nrpt; | |
436 bool unhandled_options; | |
437 internal::ConfigParseWinResult result; | |
438 } cases[] = { | |
439 { false, false, internal::CONFIG_PARSE_WIN_OK }, | |
440 { true, true, internal::CONFIG_PARSE_WIN_UNHANDLED_OPTIONS }, | |
441 }; | |
442 | |
443 for (size_t i = 0; i < arraysize(cases); ++i) { | |
444 const TestCase& t = cases[i]; | |
445 internal::DnsSystemSettings settings = { | |
446 CreateAdapterAddresses(infos), | |
447 { false }, { false }, { false }, { false }, | |
448 { { false }, { false } }, | |
449 { { false }, { false } }, | |
450 { { false }, { false } }, | |
451 { false }, | |
452 t.have_nrpt, | |
453 }; | |
454 DnsConfig config; | |
455 EXPECT_EQ(t.result, | |
456 internal::ConvertSettingsToDnsConfig(settings, &config)); | |
457 EXPECT_EQ(t.unhandled_options, config.unhandled_options); | |
458 EXPECT_EQ(t.have_nrpt, config.use_local_ipv6); | |
459 } | |
460 } | |
461 | |
462 | |
427 } // namespace | 463 } // namespace |
428 | 464 |
429 } // namespace net | 465 } // namespace net |
430 | 466 |
OLD | NEW |