Home | History | Annotate | Download | only in onc
      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
      3 // found in the LICENSE file.
      4 
      5 #include "chromeos/network/onc/onc_normalizer.h"
      6 
      7 #include "base/memory/scoped_ptr.h"
      8 #include "base/values.h"
      9 #include "chromeos/network/onc/onc_signature.h"
     10 #include "chromeos/network/onc/onc_test_utils.h"
     11 #include "testing/gtest/include/gtest/gtest.h"
     12 
     13 namespace chromeos {
     14 namespace onc {
     15 
     16 // This test case is about validating valid ONC objects.
     17 TEST(ONCNormalizerTest, NormalizeNetworkConfiguration) {
     18   Normalizer normalizer(true);
     19   scoped_ptr<const base::DictionaryValue> data(
     20       test_utils::ReadTestDictionary("settings_with_normalization.json"));
     21 
     22   const base::DictionaryValue* original = NULL;
     23   const base::DictionaryValue* expected_normalized = NULL;
     24   data->GetDictionary("ethernet-and-vpn", &original);
     25   data->GetDictionary("ethernet-and-vpn-normalized", &expected_normalized);
     26 
     27   scoped_ptr<base::DictionaryValue> actual_normalized =
     28       normalizer.NormalizeObject(&kNetworkConfigurationSignature, *original);
     29   EXPECT_TRUE(test_utils::Equals(expected_normalized, actual_normalized.get()));
     30 }
     31 
     32 }  // namespace onc
     33 }  // namespace chromeos
     34