// Copyright 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #include "chrome/browser/translate/cld_data_harness.h" #include "base/lazy_instance.h" #include "base/path_service.h" #include "chrome/browser/translate/component_cld_data_harness.h" #include "chrome/browser/translate/standalone_cld_data_harness.h" #include "chrome/common/chrome_paths.h" #include "components/translate/content/common/cld_data_source.h" #include "testing/gtest/include/gtest/gtest.h" namespace { // This constant yields the version of the CRX that has been extracted into // the test data directory, and must be kept in sync with what is there. // A reciprocal comment has been placed in // chrome/test/data/cld2_component/README.chromium; don't update one without // updating the other. const base::FilePath::CharType kCrxVersion[] = FILE_PATH_LITERAL("160"); class StaticCldDataHarness : public test::CldDataHarness { public: StaticCldDataHarness() {} ~StaticCldDataHarness() override {}; void Init() override { translate::CldDataSource::Set( translate::CldDataSource::GetStaticDataSource()); } private: DISALLOW_COPY_AND_ASSIGN(StaticCldDataHarness); }; } // namespace namespace test { const base::FilePath::CharType* CldDataHarness::GetTestDataSourceCrxVersion() { return kCrxVersion; } void CldDataHarness::GetTestDataSourceDirectory(base::FilePath* out_path) { ASSERT_TRUE(PathService::Get(chrome::DIR_TEST_DATA, out_path)); *out_path = out_path->Append(FILE_PATH_LITERAL("cld2_component")).Append(kCrxVersion); } // static scoped_ptr CldDataHarness::CreateStaticDataHarness() { return scoped_ptr(new StaticCldDataHarness()); } // static scoped_ptr CldDataHarness::CreateStandaloneDataHarness() { return scoped_ptr(new StandaloneCldDataHarness()); } // static scoped_ptr CldDataHarness::CreateComponentDataHarness() { return scoped_ptr(new ComponentCldDataHarness()); } } // namespace test