| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/safe_browsing/safe_browsing_store_unittest_helper.h" | 5 #include "chrome/browser/safe_browsing/safe_browsing_store_unittest_helper.h" |
| 6 | 6 |
| 7 #include "base/file_util.h" | 7 #include "base/file_util.h" |
| 8 | 8 |
| 9 namespace { | 9 namespace { |
| 10 | 10 |
| (...skipping 25 matching lines...) Expand all Loading... |
| 36 // Shouldn't see anything, but anything is a big set to test. | 36 // Shouldn't see anything, but anything is a big set to test. |
| 37 EXPECT_FALSE(store->CheckAddChunk(0)); | 37 EXPECT_FALSE(store->CheckAddChunk(0)); |
| 38 EXPECT_FALSE(store->CheckAddChunk(1)); | 38 EXPECT_FALSE(store->CheckAddChunk(1)); |
| 39 EXPECT_FALSE(store->CheckAddChunk(-1)); | 39 EXPECT_FALSE(store->CheckAddChunk(-1)); |
| 40 | 40 |
| 41 EXPECT_FALSE(store->CheckSubChunk(0)); | 41 EXPECT_FALSE(store->CheckSubChunk(0)); |
| 42 EXPECT_FALSE(store->CheckSubChunk(1)); | 42 EXPECT_FALSE(store->CheckSubChunk(1)); |
| 43 EXPECT_FALSE(store->CheckSubChunk(-1)); | 43 EXPECT_FALSE(store->CheckSubChunk(-1)); |
| 44 | 44 |
| 45 std::vector<SBAddFullHash> pending_adds; | 45 std::vector<SBAddFullHash> pending_adds; |
| 46 std::set<SBPrefix> prefix_misses; | |
| 47 SBAddPrefixes add_prefixes_result; | 46 SBAddPrefixes add_prefixes_result; |
| 48 std::vector<SBAddFullHash> add_full_hashes_result; | 47 std::vector<SBAddFullHash> add_full_hashes_result; |
| 49 | 48 |
| 50 EXPECT_TRUE(store->FinishUpdate(pending_adds, | 49 EXPECT_TRUE(store->FinishUpdate(pending_adds, |
| 51 prefix_misses, | |
| 52 &add_prefixes_result, | 50 &add_prefixes_result, |
| 53 &add_full_hashes_result)); | 51 &add_full_hashes_result)); |
| 54 EXPECT_TRUE(add_prefixes_result.empty()); | 52 EXPECT_TRUE(add_prefixes_result.empty()); |
| 55 EXPECT_TRUE(add_full_hashes_result.empty()); | 53 EXPECT_TRUE(add_full_hashes_result.empty()); |
| 56 } | 54 } |
| 57 | 55 |
| 58 void SafeBrowsingStoreTestStorePrefix(SafeBrowsingStore* store) { | 56 void SafeBrowsingStoreTestStorePrefix(SafeBrowsingStore* store) { |
| 59 EXPECT_TRUE(store->BeginUpdate()); | 57 EXPECT_TRUE(store->BeginUpdate()); |
| 60 | 58 |
| 61 const base::Time now = base::Time::Now(); | 59 const base::Time now = base::Time::Now(); |
| (...skipping 19 matching lines...) Expand all Loading... |
| 81 std::vector<int> chunks; | 79 std::vector<int> chunks; |
| 82 store->GetAddChunks(&chunks); | 80 store->GetAddChunks(&chunks); |
| 83 ASSERT_EQ(1U, chunks.size()); | 81 ASSERT_EQ(1U, chunks.size()); |
| 84 EXPECT_EQ(kAddChunk1, chunks[0]); | 82 EXPECT_EQ(kAddChunk1, chunks[0]); |
| 85 | 83 |
| 86 store->GetSubChunks(&chunks); | 84 store->GetSubChunks(&chunks); |
| 87 ASSERT_EQ(1U, chunks.size()); | 85 ASSERT_EQ(1U, chunks.size()); |
| 88 EXPECT_EQ(kSubChunk1, chunks[0]); | 86 EXPECT_EQ(kSubChunk1, chunks[0]); |
| 89 | 87 |
| 90 std::vector<SBAddFullHash> pending_adds; | 88 std::vector<SBAddFullHash> pending_adds; |
| 91 std::set<SBPrefix> prefix_misses; | |
| 92 SBAddPrefixes add_prefixes_result; | 89 SBAddPrefixes add_prefixes_result; |
| 93 std::vector<SBAddFullHash> add_full_hashes_result; | 90 std::vector<SBAddFullHash> add_full_hashes_result; |
| 94 | 91 |
| 95 EXPECT_TRUE(store->FinishUpdate(pending_adds, | 92 EXPECT_TRUE(store->FinishUpdate(pending_adds, |
| 96 prefix_misses, | |
| 97 &add_prefixes_result, | 93 &add_prefixes_result, |
| 98 &add_full_hashes_result)); | 94 &add_full_hashes_result)); |
| 99 | 95 |
| 100 ASSERT_EQ(2U, add_prefixes_result.size()); | 96 ASSERT_EQ(2U, add_prefixes_result.size()); |
| 101 EXPECT_EQ(kAddChunk1, add_prefixes_result[0].chunk_id); | 97 EXPECT_EQ(kAddChunk1, add_prefixes_result[0].chunk_id); |
| 102 EXPECT_EQ(kHash1.prefix, add_prefixes_result[0].prefix); | 98 EXPECT_EQ(kHash1.prefix, add_prefixes_result[0].prefix); |
| 103 EXPECT_EQ(kAddChunk1, add_prefixes_result[1].chunk_id); | 99 EXPECT_EQ(kAddChunk1, add_prefixes_result[1].chunk_id); |
| 104 EXPECT_EQ(kHash2.prefix, add_prefixes_result[1].prefix); | 100 EXPECT_EQ(kHash2.prefix, add_prefixes_result[1].prefix); |
| 105 | 101 |
| 106 ASSERT_EQ(1U, add_full_hashes_result.size()); | 102 ASSERT_EQ(1U, add_full_hashes_result.size()); |
| (...skipping 13 matching lines...) Expand all Loading... |
| 120 EXPECT_EQ(kAddChunk1, chunks[0]); | 116 EXPECT_EQ(kAddChunk1, chunks[0]); |
| 121 | 117 |
| 122 store->GetSubChunks(&chunks); | 118 store->GetSubChunks(&chunks); |
| 123 ASSERT_EQ(1U, chunks.size()); | 119 ASSERT_EQ(1U, chunks.size()); |
| 124 EXPECT_EQ(kSubChunk1, chunks[0]); | 120 EXPECT_EQ(kSubChunk1, chunks[0]); |
| 125 | 121 |
| 126 EXPECT_TRUE(store->CheckAddChunk(kAddChunk1)); | 122 EXPECT_TRUE(store->CheckAddChunk(kAddChunk1)); |
| 127 EXPECT_TRUE(store->CheckSubChunk(kSubChunk1)); | 123 EXPECT_TRUE(store->CheckSubChunk(kSubChunk1)); |
| 128 | 124 |
| 129 EXPECT_TRUE(store->FinishUpdate(pending_adds, | 125 EXPECT_TRUE(store->FinishUpdate(pending_adds, |
| 130 prefix_misses, | |
| 131 &add_prefixes_result, | 126 &add_prefixes_result, |
| 132 &add_full_hashes_result)); | 127 &add_full_hashes_result)); |
| 133 | 128 |
| 134 // Still has the expected contents. | 129 // Still has the expected contents. |
| 135 ASSERT_EQ(2U, add_prefixes_result.size()); | 130 ASSERT_EQ(2U, add_prefixes_result.size()); |
| 136 EXPECT_EQ(kAddChunk1, add_prefixes_result[0].chunk_id); | 131 EXPECT_EQ(kAddChunk1, add_prefixes_result[0].chunk_id); |
| 137 EXPECT_EQ(kHash1.prefix, add_prefixes_result[0].prefix); | 132 EXPECT_EQ(kHash1.prefix, add_prefixes_result[0].prefix); |
| 138 EXPECT_EQ(kAddChunk1, add_prefixes_result[1].chunk_id); | 133 EXPECT_EQ(kAddChunk1, add_prefixes_result[1].chunk_id); |
| 139 EXPECT_EQ(kHash2.prefix, add_prefixes_result[1].prefix); | 134 EXPECT_EQ(kHash2.prefix, add_prefixes_result[1].prefix); |
| 140 | 135 |
| (...skipping 13 matching lines...) Expand all Loading... |
| 154 EXPECT_TRUE(store->WriteAddPrefix(kAddChunk1, kHash1.prefix)); | 149 EXPECT_TRUE(store->WriteAddPrefix(kAddChunk1, kHash1.prefix)); |
| 155 EXPECT_TRUE(store->WriteAddPrefix(kAddChunk1, kHash2.prefix)); | 150 EXPECT_TRUE(store->WriteAddPrefix(kAddChunk1, kHash2.prefix)); |
| 156 EXPECT_TRUE(store->WriteAddHash(kAddChunk1, now, kHash2)); | 151 EXPECT_TRUE(store->WriteAddHash(kAddChunk1, now, kHash2)); |
| 157 | 152 |
| 158 store->SetSubChunk(kSubChunk1); | 153 store->SetSubChunk(kSubChunk1); |
| 159 EXPECT_TRUE(store->WriteSubPrefix(kSubChunk1, kAddChunk3, kHash3.prefix)); | 154 EXPECT_TRUE(store->WriteSubPrefix(kSubChunk1, kAddChunk3, kHash3.prefix)); |
| 160 EXPECT_TRUE(store->WriteSubPrefix(kSubChunk1, kAddChunk1, kHash2.prefix)); | 155 EXPECT_TRUE(store->WriteSubPrefix(kSubChunk1, kAddChunk1, kHash2.prefix)); |
| 161 EXPECT_TRUE(store->FinishChunk()); | 156 EXPECT_TRUE(store->FinishChunk()); |
| 162 | 157 |
| 163 std::vector<SBAddFullHash> pending_adds; | 158 std::vector<SBAddFullHash> pending_adds; |
| 164 std::set<SBPrefix> prefix_misses; | |
| 165 SBAddPrefixes add_prefixes_result; | 159 SBAddPrefixes add_prefixes_result; |
| 166 std::vector<SBAddFullHash> add_full_hashes_result; | 160 std::vector<SBAddFullHash> add_full_hashes_result; |
| 167 | 161 |
| 168 EXPECT_TRUE(store->FinishUpdate(pending_adds, | 162 EXPECT_TRUE(store->FinishUpdate(pending_adds, |
| 169 prefix_misses, | |
| 170 &add_prefixes_result, | 163 &add_prefixes_result, |
| 171 &add_full_hashes_result)); | 164 &add_full_hashes_result)); |
| 172 | 165 |
| 173 // Knocked out the chunk expected. | 166 // Knocked out the chunk expected. |
| 174 ASSERT_EQ(1U, add_prefixes_result.size()); | 167 ASSERT_EQ(1U, add_prefixes_result.size()); |
| 175 EXPECT_EQ(kAddChunk1, add_prefixes_result[0].chunk_id); | 168 EXPECT_EQ(kAddChunk1, add_prefixes_result[0].chunk_id); |
| 176 EXPECT_EQ(kHash1.prefix, add_prefixes_result[0].prefix); | 169 EXPECT_EQ(kHash1.prefix, add_prefixes_result[0].prefix); |
| 177 EXPECT_TRUE(add_full_hashes_result.empty()); | 170 EXPECT_TRUE(add_full_hashes_result.empty()); |
| 178 | 171 |
| 179 add_prefixes_result.clear(); | 172 add_prefixes_result.clear(); |
| 180 | 173 |
| 181 EXPECT_TRUE(store->BeginUpdate()); | 174 EXPECT_TRUE(store->BeginUpdate()); |
| 182 | 175 |
| 183 // This add should be knocked out by an existing sub. | 176 // This add should be knocked out by an existing sub. |
| 184 EXPECT_TRUE(store->BeginChunk()); | 177 EXPECT_TRUE(store->BeginChunk()); |
| 185 store->SetAddChunk(kAddChunk3); | 178 store->SetAddChunk(kAddChunk3); |
| 186 EXPECT_TRUE(store->WriteAddPrefix(kAddChunk3, kHash3.prefix)); | 179 EXPECT_TRUE(store->WriteAddPrefix(kAddChunk3, kHash3.prefix)); |
| 187 EXPECT_TRUE(store->FinishChunk()); | 180 EXPECT_TRUE(store->FinishChunk()); |
| 188 | 181 |
| 189 EXPECT_TRUE(store->FinishUpdate(pending_adds, | 182 EXPECT_TRUE(store->FinishUpdate(pending_adds, |
| 190 prefix_misses, | |
| 191 &add_prefixes_result, | 183 &add_prefixes_result, |
| 192 &add_full_hashes_result)); | 184 &add_full_hashes_result)); |
| 193 EXPECT_EQ(1U, add_prefixes_result.size()); | 185 EXPECT_EQ(1U, add_prefixes_result.size()); |
| 194 EXPECT_EQ(kAddChunk1, add_prefixes_result[0].chunk_id); | 186 EXPECT_EQ(kAddChunk1, add_prefixes_result[0].chunk_id); |
| 195 EXPECT_EQ(kHash1.prefix, add_prefixes_result[0].prefix); | 187 EXPECT_EQ(kHash1.prefix, add_prefixes_result[0].prefix); |
| 196 EXPECT_TRUE(add_full_hashes_result.empty()); | 188 EXPECT_TRUE(add_full_hashes_result.empty()); |
| 197 | 189 |
| 198 add_prefixes_result.clear(); | 190 add_prefixes_result.clear(); |
| 199 | 191 |
| 200 EXPECT_TRUE(store->BeginUpdate()); | 192 EXPECT_TRUE(store->BeginUpdate()); |
| 201 | 193 |
| 202 // But by here the sub should be gone, so it should stick this time. | 194 // But by here the sub should be gone, so it should stick this time. |
| 203 EXPECT_TRUE(store->BeginChunk()); | 195 EXPECT_TRUE(store->BeginChunk()); |
| 204 store->SetAddChunk(kAddChunk3); | 196 store->SetAddChunk(kAddChunk3); |
| 205 EXPECT_TRUE(store->WriteAddPrefix(kAddChunk3, kHash3.prefix)); | 197 EXPECT_TRUE(store->WriteAddPrefix(kAddChunk3, kHash3.prefix)); |
| 206 EXPECT_TRUE(store->FinishChunk()); | 198 EXPECT_TRUE(store->FinishChunk()); |
| 207 | 199 |
| 208 EXPECT_TRUE(store->FinishUpdate(pending_adds, | 200 EXPECT_TRUE(store->FinishUpdate(pending_adds, |
| 209 prefix_misses, | |
| 210 &add_prefixes_result, | 201 &add_prefixes_result, |
| 211 &add_full_hashes_result)); | 202 &add_full_hashes_result)); |
| 212 ASSERT_EQ(2U, add_prefixes_result.size()); | 203 ASSERT_EQ(2U, add_prefixes_result.size()); |
| 213 EXPECT_EQ(kAddChunk1, add_prefixes_result[0].chunk_id); | 204 EXPECT_EQ(kAddChunk1, add_prefixes_result[0].chunk_id); |
| 214 EXPECT_EQ(kHash1.prefix, add_prefixes_result[0].prefix); | 205 EXPECT_EQ(kHash1.prefix, add_prefixes_result[0].prefix); |
| 215 EXPECT_EQ(kAddChunk3, add_prefixes_result[1].chunk_id); | 206 EXPECT_EQ(kAddChunk3, add_prefixes_result[1].chunk_id); |
| 216 EXPECT_EQ(kHash3.prefix, add_prefixes_result[1].prefix); | 207 EXPECT_EQ(kHash3.prefix, add_prefixes_result[1].prefix); |
| 217 EXPECT_TRUE(add_full_hashes_result.empty()); | 208 EXPECT_TRUE(add_full_hashes_result.empty()); |
| 218 } | 209 } |
| 219 | 210 |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 258 store->DeleteAddChunk(kAddChunk1); | 249 store->DeleteAddChunk(kAddChunk1); |
| 259 store->DeleteSubChunk(kSubChunk1); | 250 store->DeleteSubChunk(kSubChunk1); |
| 260 | 251 |
| 261 // Not actually deleted until finish. | 252 // Not actually deleted until finish. |
| 262 EXPECT_TRUE(store->CheckAddChunk(kAddChunk1)); | 253 EXPECT_TRUE(store->CheckAddChunk(kAddChunk1)); |
| 263 EXPECT_TRUE(store->CheckAddChunk(kAddChunk2)); | 254 EXPECT_TRUE(store->CheckAddChunk(kAddChunk2)); |
| 264 EXPECT_TRUE(store->CheckSubChunk(kSubChunk1)); | 255 EXPECT_TRUE(store->CheckSubChunk(kSubChunk1)); |
| 265 EXPECT_TRUE(store->CheckSubChunk(kSubChunk2)); | 256 EXPECT_TRUE(store->CheckSubChunk(kSubChunk2)); |
| 266 | 257 |
| 267 std::vector<SBAddFullHash> pending_adds; | 258 std::vector<SBAddFullHash> pending_adds; |
| 268 std::set<SBPrefix> prefix_misses; | |
| 269 SBAddPrefixes add_prefixes_result; | 259 SBAddPrefixes add_prefixes_result; |
| 270 std::vector<SBAddFullHash> add_full_hashes_result; | 260 std::vector<SBAddFullHash> add_full_hashes_result; |
| 271 | 261 |
| 272 EXPECT_TRUE(store->FinishUpdate(pending_adds, | 262 EXPECT_TRUE(store->FinishUpdate(pending_adds, |
| 273 prefix_misses, | |
| 274 &add_prefixes_result, | 263 &add_prefixes_result, |
| 275 &add_full_hashes_result)); | 264 &add_full_hashes_result)); |
| 276 | 265 |
| 277 EXPECT_EQ(1U, add_prefixes_result.size()); | 266 EXPECT_EQ(1U, add_prefixes_result.size()); |
| 278 EXPECT_EQ(kAddChunk2, add_prefixes_result[0].chunk_id); | 267 EXPECT_EQ(kAddChunk2, add_prefixes_result[0].chunk_id); |
| 279 EXPECT_EQ(kHash3.prefix, add_prefixes_result[0].prefix); | 268 EXPECT_EQ(kHash3.prefix, add_prefixes_result[0].prefix); |
| 280 EXPECT_EQ(1U, add_full_hashes_result.size()); | 269 EXPECT_EQ(1U, add_full_hashes_result.size()); |
| 281 EXPECT_EQ(kAddChunk2, add_full_hashes_result[0].chunk_id); | 270 EXPECT_EQ(kAddChunk2, add_full_hashes_result[0].chunk_id); |
| 282 EXPECT_EQ(now.ToTimeT(), add_full_hashes_result[0].received); | 271 EXPECT_EQ(now.ToTimeT(), add_full_hashes_result[0].received); |
| 283 EXPECT_TRUE(SBFullHashEq(kHash3, add_full_hashes_result[0].full_hash)); | 272 EXPECT_TRUE(SBFullHashEq(kHash3, add_full_hashes_result[0].full_hash)); |
| 284 | 273 |
| 285 // Expected chunks are there in another update. | 274 // Expected chunks are there in another update. |
| 286 EXPECT_TRUE(store->BeginUpdate()); | 275 EXPECT_TRUE(store->BeginUpdate()); |
| 287 EXPECT_FALSE(store->CheckAddChunk(kAddChunk1)); | 276 EXPECT_FALSE(store->CheckAddChunk(kAddChunk1)); |
| 288 EXPECT_TRUE(store->CheckAddChunk(kAddChunk2)); | 277 EXPECT_TRUE(store->CheckAddChunk(kAddChunk2)); |
| 289 EXPECT_FALSE(store->CheckSubChunk(kSubChunk1)); | 278 EXPECT_FALSE(store->CheckSubChunk(kSubChunk1)); |
| 290 EXPECT_TRUE(store->CheckSubChunk(kSubChunk2)); | 279 EXPECT_TRUE(store->CheckSubChunk(kSubChunk2)); |
| 291 | 280 |
| 292 // Delete them, too. | 281 // Delete them, too. |
| 293 store->DeleteAddChunk(kAddChunk2); | 282 store->DeleteAddChunk(kAddChunk2); |
| 294 store->DeleteSubChunk(kSubChunk2); | 283 store->DeleteSubChunk(kSubChunk2); |
| 295 | 284 |
| 296 add_prefixes_result.clear(); | 285 add_prefixes_result.clear(); |
| 297 add_full_hashes_result.clear(); | 286 add_full_hashes_result.clear(); |
| 298 EXPECT_TRUE(store->FinishUpdate(pending_adds, | 287 EXPECT_TRUE(store->FinishUpdate(pending_adds, |
| 299 prefix_misses, | |
| 300 &add_prefixes_result, | 288 &add_prefixes_result, |
| 301 &add_full_hashes_result)); | 289 &add_full_hashes_result)); |
| 302 | 290 |
| 303 // Expect no more chunks. | 291 // Expect no more chunks. |
| 304 EXPECT_TRUE(store->BeginUpdate()); | 292 EXPECT_TRUE(store->BeginUpdate()); |
| 305 EXPECT_FALSE(store->CheckAddChunk(kAddChunk1)); | 293 EXPECT_FALSE(store->CheckAddChunk(kAddChunk1)); |
| 306 EXPECT_FALSE(store->CheckAddChunk(kAddChunk2)); | 294 EXPECT_FALSE(store->CheckAddChunk(kAddChunk2)); |
| 307 EXPECT_FALSE(store->CheckSubChunk(kSubChunk1)); | 295 EXPECT_FALSE(store->CheckSubChunk(kSubChunk1)); |
| 308 EXPECT_FALSE(store->CheckSubChunk(kSubChunk2)); | 296 EXPECT_FALSE(store->CheckSubChunk(kSubChunk2)); |
| 309 add_prefixes_result.clear(); | 297 add_prefixes_result.clear(); |
| 310 add_full_hashes_result.clear(); | 298 add_full_hashes_result.clear(); |
| 311 EXPECT_TRUE(store->FinishUpdate(pending_adds, | 299 EXPECT_TRUE(store->FinishUpdate(pending_adds, |
| 312 prefix_misses, | |
| 313 &add_prefixes_result, | 300 &add_prefixes_result, |
| 314 &add_full_hashes_result)); | 301 &add_full_hashes_result)); |
| 315 EXPECT_TRUE(add_prefixes_result.empty()); | 302 EXPECT_TRUE(add_prefixes_result.empty()); |
| 316 EXPECT_TRUE(add_full_hashes_result.empty()); | 303 EXPECT_TRUE(add_full_hashes_result.empty()); |
| 317 } | 304 } |
| 318 | 305 |
| 319 void SafeBrowsingStoreTestDelete(SafeBrowsingStore* store, | 306 void SafeBrowsingStoreTestDelete(SafeBrowsingStore* store, |
| 320 const base::FilePath& filename) { | 307 const base::FilePath& filename) { |
| 321 // Delete should work if the file wasn't there in the first place. | 308 // Delete should work if the file wasn't there in the first place. |
| 322 EXPECT_FALSE(base::PathExists(filename)); | 309 EXPECT_FALSE(base::PathExists(filename)); |
| 323 EXPECT_TRUE(store->Delete()); | 310 EXPECT_TRUE(store->Delete()); |
| 324 | 311 |
| 325 // Create a store file. | 312 // Create a store file. |
| 326 EXPECT_TRUE(store->BeginUpdate()); | 313 EXPECT_TRUE(store->BeginUpdate()); |
| 327 | 314 |
| 328 EXPECT_TRUE(store->BeginChunk()); | 315 EXPECT_TRUE(store->BeginChunk()); |
| 329 store->SetAddChunk(kAddChunk1); | 316 store->SetAddChunk(kAddChunk1); |
| 330 EXPECT_TRUE(store->WriteAddPrefix(kAddChunk1, kHash1.prefix)); | 317 EXPECT_TRUE(store->WriteAddPrefix(kAddChunk1, kHash1.prefix)); |
| 331 EXPECT_TRUE(store->WriteAddPrefix(kAddChunk1, kHash2.prefix)); | 318 EXPECT_TRUE(store->WriteAddPrefix(kAddChunk1, kHash2.prefix)); |
| 332 | 319 |
| 333 store->SetSubChunk(kSubChunk1); | 320 store->SetSubChunk(kSubChunk1); |
| 334 EXPECT_TRUE(store->WriteSubPrefix(kSubChunk1, kAddChunk3, kHash3.prefix)); | 321 EXPECT_TRUE(store->WriteSubPrefix(kSubChunk1, kAddChunk3, kHash3.prefix)); |
| 335 EXPECT_TRUE(store->FinishChunk()); | 322 EXPECT_TRUE(store->FinishChunk()); |
| 336 | 323 |
| 337 std::vector<SBAddFullHash> pending_adds; | 324 std::vector<SBAddFullHash> pending_adds; |
| 338 std::set<SBPrefix> prefix_misses; | |
| 339 SBAddPrefixes add_prefixes_result; | 325 SBAddPrefixes add_prefixes_result; |
| 340 std::vector<SBAddFullHash> add_full_hashes_result; | 326 std::vector<SBAddFullHash> add_full_hashes_result; |
| 341 | 327 |
| 342 EXPECT_TRUE(store->FinishUpdate(pending_adds, | 328 EXPECT_TRUE(store->FinishUpdate(pending_adds, |
| 343 prefix_misses, | |
| 344 &add_prefixes_result, | 329 &add_prefixes_result, |
| 345 &add_full_hashes_result)); | 330 &add_full_hashes_result)); |
| 346 | 331 |
| 347 EXPECT_TRUE(base::PathExists(filename)); | 332 EXPECT_TRUE(base::PathExists(filename)); |
| 348 EXPECT_TRUE(store->Delete()); | 333 EXPECT_TRUE(store->Delete()); |
| 349 EXPECT_FALSE(base::PathExists(filename)); | 334 EXPECT_FALSE(base::PathExists(filename)); |
| 350 } | 335 } |
| OLD | NEW |