blob: cc390114bce01b3f6b7cc1857a98a10b1fd0a2e2 [file] [log] [blame]
// Copyright 2018 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 "base/macros.h"
#include "chrome/browser/ui/browser_commands.h"
#include "chrome/browser/ui/simple_message_box_internal.h"
#include "chrome/common/chrome_paths.h"
#include "chrome/test/base/in_process_browser_test.h"
// https://crbug.com/833624
class InvalidUserDataDirTest : public InProcessBrowserTest {
public:
InvalidUserDataDirTest() {}
~InvalidUserDataDirTest() override {}
private:
void SetUp() override {
// Skip showing the error message box to avoid freezing the main thread.
chrome::internal::g_should_skip_message_box_for_test = true;
chrome::SetInvalidSpecifiedUserDataDir(
base::FilePath(FILE_PATH_LITERAL("foo/bar/baz")));
InProcessBrowserTest::SetUp();
}
// This override makes sure the screen instance is not set because in normal
// browser initialization, the screen is not set until after the call to
// chrome::GetInvalidSpecifiedUserDataDir.
void SetScreenInstance() override {}
DISALLOW_COPY_AND_ASSIGN(InvalidUserDataDirTest);
};
IN_PROC_BROWSER_TEST_F(InvalidUserDataDirTest, Basic) {
// A message dialog may be showing which would block shutdown.
chrome::Exit();
}