// Copyright (c) 2010 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/diagnostics/diagnostics_test.h" #include "base/file_path.h" #include "base/path_service.h" #include "chrome/common/chrome_constants.h" #include "chrome/common/chrome_paths.h" DiagnosticTest::DiagnosticTest(const string16& title) : title_(title), result_(DiagnosticsModel::TEST_NOT_RUN) { } DiagnosticTest::~DiagnosticTest() { } bool DiagnosticTest::Execute(DiagnosticsModel::Observer* observer, DiagnosticsModel* model, size_t index) { result_ = DiagnosticsModel::TEST_RUNNING; observer->OnProgress(index, 0, model); bool keep_going = ExecuteImpl(observer); observer->OnFinished(index, model); return keep_going; } string16 DiagnosticTest::GetTitle() { return title_; } DiagnosticsModel::TestResult DiagnosticTest::GetResult() { return result_; } string16 DiagnosticTest::GetAdditionalInfo() { return additional_info_; } void DiagnosticTest::RecordOutcome(const string16& additional_info, DiagnosticsModel::TestResult result) { additional_info_ = additional_info; result_ = result; } // static FilePath DiagnosticTest::GetUserDefaultProfileDir() { FilePath path; if (!PathService::Get(chrome::DIR_USER_DATA, &path)) return FilePath(); return path.AppendASCII(chrome::kNotSignedInProfile); }