Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(17)

Unified Diff: chrome/browser/sessions/session_backend_unittest.cc

Issue 685133004: Handling |SessionCommand|s as scoped_ptr's (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/sessions/session_backend.cc ('k') | chrome/browser/sessions/session_service.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/sessions/session_backend_unittest.cc
diff --git a/chrome/browser/sessions/session_backend_unittest.cc b/chrome/browser/sessions/session_backend_unittest.cc
index 0c7ea0f6fca41dcb1cba03504d175a98a9814f7d..4b0062fdbb2fd9575b9c228f8f505c28bf976a01 100644
--- a/chrome/browser/sessions/session_backend_unittest.cc
+++ b/chrome/browser/sessions/session_backend_unittest.cc
@@ -11,7 +11,7 @@
namespace {
-typedef std::vector<SessionCommand*> SessionCommands;
+typedef ScopedVector<SessionCommand> SessionCommands;
struct TestData {
SessionCommand::id_type command_id;
@@ -54,10 +54,11 @@ TEST_F(SessionBackendTest, SimpleReadWrite) {
scoped_refptr<SessionBackend> backend(
new SessionBackend(BaseSessionService::SESSION_RESTORE, path_));
struct TestData data = { 1, "a" };
- std::vector<SessionCommand*> commands;
+ SessionCommands commands;
commands.push_back(CreateCommandFromData(data));
- backend->AppendCommands(new SessionCommands(commands), false);
- commands.clear();
+ backend->AppendCommands(new ScopedVector<SessionCommand>(commands.Pass()),
+ false);
+ ASSERT_TRUE(commands.empty());
// Read it back in.
backend = NULL;
@@ -67,7 +68,7 @@ TEST_F(SessionBackendTest, SimpleReadWrite) {
ASSERT_EQ(1U, commands.size());
AssertCommandEqualsData(data, commands[0]);
- STLDeleteElements(&commands);
+ commands.clear();
backend = NULL;
backend = new SessionBackend(BaseSessionService::SESSION_RESTORE, path_);
@@ -101,7 +102,7 @@ TEST_F(SessionBackendTest, RandomData) {
for (size_t i = 0; i < arraysize(data); ++i) {
scoped_refptr<SessionBackend> backend(
new SessionBackend(BaseSessionService::SESSION_RESTORE, path_));
- std::vector<SessionCommand*> commands;
+ SessionCommands commands;
if (i != 0) {
// Read previous data.
backend->ReadLastSessionCommandsImpl(&commands);
@@ -110,11 +111,12 @@ TEST_F(SessionBackendTest, RandomData) {
j != commands.end(); ++j) {
AssertCommandEqualsData(data[j - commands.begin()], *j);
}
- backend->AppendCommands(new SessionCommands(commands), false);
- commands.clear();
+ backend->AppendCommands(new ScopedVector<SessionCommand>(commands.Pass()),
+ false);
}
commands.push_back(CreateCommandFromData(data[i]));
- backend->AppendCommands(new SessionCommands(commands), false);
+ backend->AppendCommands(new ScopedVector<SessionCommand>(commands.Pass()),
+ false);
}
}
@@ -126,7 +128,8 @@ TEST_F(SessionBackendTest, BigData) {
scoped_refptr<SessionBackend> backend(
new SessionBackend(BaseSessionService::SESSION_RESTORE, path_));
- std::vector<SessionCommand*> commands;
+ ScopedVector<SessionCommand> commands;
+
commands.push_back(CreateCommandFromData(data[0]));
const SessionCommand::size_type big_size =
SessionBackend::kFileReadBufferSize + 100;
@@ -136,12 +139,12 @@ TEST_F(SessionBackendTest, BigData) {
reinterpret_cast<char*>(big_command->contents())[big_size - 1] = 'z';
commands.push_back(big_command);
commands.push_back(CreateCommandFromData(data[1]));
- backend->AppendCommands(new SessionCommands(commands), false);
- commands.clear();
+ backend->AppendCommands(new ScopedVector<SessionCommand>(commands.Pass()),
+ false);
backend = NULL;
backend = new SessionBackend(BaseSessionService::SESSION_RESTORE, path_);
- commands.clear();
+
backend->ReadLastSessionCommandsImpl(&commands);
ASSERT_EQ(3U, commands.size());
AssertCommandEqualsData(data[0], commands[0]);
@@ -152,7 +155,7 @@ TEST_F(SessionBackendTest, BigData) {
EXPECT_EQ('a', reinterpret_cast<char*>(commands[1]->contents())[0]);
EXPECT_EQ('z',
reinterpret_cast<char*>(commands[1]->contents())[big_size - 1]);
- STLDeleteElements(&commands);
+ commands.clear();
}
TEST_F(SessionBackendTest, EmptyCommand) {
@@ -160,17 +163,16 @@ TEST_F(SessionBackendTest, EmptyCommand) {
empty_command.command_id = 1;
scoped_refptr<SessionBackend> backend(
new SessionBackend(BaseSessionService::SESSION_RESTORE, path_));
- std::vector<SessionCommand*>* empty_commands =
- new std::vector<SessionCommand*>();
+ SessionCommands* empty_commands = new SessionCommands();
empty_commands->push_back(CreateCommandFromData(empty_command));
backend->AppendCommands(empty_commands, true);
backend->MoveCurrentSessionToLastSession();
- std::vector<SessionCommand*> commands;
+ SessionCommands commands;
backend->ReadLastSessionCommandsImpl(&commands);
ASSERT_EQ(1U, commands.size());
AssertCommandEqualsData(empty_command, commands[0]);
- STLDeleteElements(&commands);
+ commands.clear();
}
// Writes a command, appends another command with reset to true, then reads
@@ -179,16 +181,16 @@ TEST_F(SessionBackendTest, Truncate) {
scoped_refptr<SessionBackend> backend(
new SessionBackend(BaseSessionService::SESSION_RESTORE, path_));
struct TestData first_data = { 1, "a" };
- std::vector<SessionCommand*> commands;
+ SessionCommands commands;
commands.push_back(CreateCommandFromData(first_data));
- backend->AppendCommands(new SessionCommands(commands), false);
- commands.clear();
+ backend->AppendCommands(new ScopedVector<SessionCommand>(commands.Pass()),
+ false);
// Write another command, this time resetting the file when appending.
struct TestData second_data = { 2, "b" };
commands.push_back(CreateCommandFromData(second_data));
- backend->AppendCommands(new SessionCommands(commands), true);
- commands.clear();
+ backend->AppendCommands(new ScopedVector<SessionCommand>(commands.Pass()),
+ true);
// Read it back in.
backend = NULL;
@@ -199,5 +201,5 @@ TEST_F(SessionBackendTest, Truncate) {
ASSERT_EQ(1U, commands.size());
AssertCommandEqualsData(second_data, commands[0]);
- STLDeleteElements(&commands);
+ commands.clear();
}
« no previous file with comments | « chrome/browser/sessions/session_backend.cc ('k') | chrome/browser/sessions/session_service.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698