12a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved. 22a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 32a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// found in the LICENSE file. 42a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 52a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chromeos/chromeos_test_utils.h" 62a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 72a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "base/files/file_path.h" 81320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci#include "base/files/file_util.h" 92a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "base/path_service.h" 102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)namespace chromeos { 122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)namespace test_utils { 132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)bool GetTestDataPath(const std::string& component, 152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const std::string& filename, 162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) base::FilePath* data_dir) { 172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) base::FilePath path; 182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) if (!PathService::Get(base::DIR_SOURCE_ROOT, &path)) 192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) return false; 202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) path = path.Append(FILE_PATH_LITERAL("chromeos")); 212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) path = path.Append(FILE_PATH_LITERAL("test")); 222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) path = path.Append(FILE_PATH_LITERAL("data")); 237dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch if (!base::PathExists(path)) // We don't want to create this. 242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) return false; 252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) DCHECK(data_dir); 262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) path = path.Append(component); 272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) *data_dir = path.Append(filename); 282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) return true; 292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} // namespace test_utils 322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} // namespace chromeos 33