| OLD | NEW |
| 1 // Copyright 2014 The Crashpad Authors. All rights reserved. | 1 // Copyright 2014 The Crashpad Authors. All rights reserved. |
| 2 // | 2 // |
| 3 // Licensed under the Apache License, Version 2.0 (the "License"); | 3 // Licensed under the Apache License, Version 2.0 (the "License"); |
| 4 // you may not use this file except in compliance with the License. | 4 // you may not use this file except in compliance with the License. |
| 5 // You may obtain a copy of the License at | 5 // You may obtain a copy of the License at |
| 6 // | 6 // |
| 7 // http://www.apache.org/licenses/LICENSE-2.0 | 7 // http://www.apache.org/licenses/LICENSE-2.0 |
| 8 // | 8 // |
| 9 // Unless required by applicable law or agreed to in writing, software | 9 // Unless required by applicable law or agreed to in writing, software |
| 10 // distributed under the License is distributed on an "AS IS" BASIS, | 10 // distributed under the License is distributed on an "AS IS" BASIS, |
| (...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 190 EXPECT_TRUE(string_file.string().empty()); | 190 EXPECT_TRUE(string_file.string().empty()); |
| 191 EXPECT_EQ(0, string_file.Seek(0, SEEK_CUR)); | 191 EXPECT_EQ(0, string_file.Seek(0, SEEK_CUR)); |
| 192 } | 192 } |
| 193 | 193 |
| 194 TEST(StringFile, WriteInvalid) { | 194 TEST(StringFile, WriteInvalid) { |
| 195 StringFile string_file; | 195 StringFile string_file; |
| 196 | 196 |
| 197 EXPECT_EQ(0, string_file.Seek(0, SEEK_CUR)); | 197 EXPECT_EQ(0, string_file.Seek(0, SEEK_CUR)); |
| 198 | 198 |
| 199 EXPECT_FALSE(string_file.Write( | 199 EXPECT_FALSE(string_file.Write( |
| 200 "", implicit_cast<size_t>(std::numeric_limits<ssize_t>::max()) + 1)); | 200 "", |
| 201 implicit_cast<size_t>(std::numeric_limits<FileOperationResult>::max()) + |
| 202 1)); |
| 201 EXPECT_TRUE(string_file.string().empty()); | 203 EXPECT_TRUE(string_file.string().empty()); |
| 202 EXPECT_EQ(0, string_file.Seek(0, SEEK_CUR)); | 204 EXPECT_EQ(0, string_file.Seek(0, SEEK_CUR)); |
| 203 | 205 |
| 204 EXPECT_TRUE(string_file.Write("a", 1)); | 206 EXPECT_TRUE(string_file.Write("a", 1)); |
| 205 EXPECT_FALSE(string_file.Write( | 207 EXPECT_FALSE(string_file.Write( |
| 206 "", implicit_cast<size_t>(std::numeric_limits<ssize_t>::max()))); | 208 "", |
| 209 implicit_cast<size_t>(std::numeric_limits<FileOperationResult>::max()))); |
| 207 EXPECT_EQ(1u, string_file.string().size()); | 210 EXPECT_EQ(1u, string_file.string().size()); |
| 208 EXPECT_EQ("a", string_file.string()); | 211 EXPECT_EQ("a", string_file.string()); |
| 209 EXPECT_EQ(1, string_file.Seek(0, SEEK_CUR)); | 212 EXPECT_EQ(1, string_file.Seek(0, SEEK_CUR)); |
| 210 } | 213 } |
| 211 | 214 |
| 212 TEST(StringFile, WriteIoVec) { | 215 TEST(StringFile, WriteIoVec) { |
| 213 StringFile string_file; | 216 StringFile string_file; |
| 214 | 217 |
| 215 std::vector<WritableIoVec> iovecs; | 218 std::vector<WritableIoVec> iovecs; |
| 216 WritableIoVec iov; | 219 WritableIoVec iov; |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 283 StringFile string_file; | 286 StringFile string_file; |
| 284 | 287 |
| 285 std::vector<WritableIoVec> iovecs; | 288 std::vector<WritableIoVec> iovecs; |
| 286 EXPECT_FALSE(string_file.WriteIoVec(&iovecs)); | 289 EXPECT_FALSE(string_file.WriteIoVec(&iovecs)); |
| 287 EXPECT_TRUE(string_file.string().empty()); | 290 EXPECT_TRUE(string_file.string().empty()); |
| 288 EXPECT_EQ(0, string_file.Seek(0, SEEK_CUR)); | 291 EXPECT_EQ(0, string_file.Seek(0, SEEK_CUR)); |
| 289 | 292 |
| 290 WritableIoVec iov; | 293 WritableIoVec iov; |
| 291 EXPECT_EQ(1, string_file.Seek(1, SEEK_CUR)); | 294 EXPECT_EQ(1, string_file.Seek(1, SEEK_CUR)); |
| 292 iov.iov_base = "a"; | 295 iov.iov_base = "a"; |
| 293 iov.iov_len = std::numeric_limits<ssize_t>::max(); | 296 iov.iov_len = std::numeric_limits<FileOperationResult>::max(); |
| 294 iovecs.push_back(iov); | 297 iovecs.push_back(iov); |
| 295 EXPECT_FALSE(string_file.WriteIoVec(&iovecs)); | 298 EXPECT_FALSE(string_file.WriteIoVec(&iovecs)); |
| 296 EXPECT_TRUE(string_file.string().empty()); | 299 EXPECT_TRUE(string_file.string().empty()); |
| 297 EXPECT_EQ(1, string_file.Seek(0, SEEK_CUR)); | 300 EXPECT_EQ(1, string_file.Seek(0, SEEK_CUR)); |
| 298 | 301 |
| 299 iovecs.clear(); | 302 iovecs.clear(); |
| 300 iov.iov_base = "a"; | 303 iov.iov_base = "a"; |
| 301 iov.iov_len = 1; | 304 iov.iov_len = 1; |
| 302 iovecs.push_back(iov); | 305 iovecs.push_back(iov); |
| 303 iov.iov_len = std::numeric_limits<ssize_t>::max() - 1; | 306 iov.iov_len = std::numeric_limits<FileOperationResult>::max() - 1; |
| 304 iovecs.push_back(iov); | 307 iovecs.push_back(iov); |
| 305 EXPECT_FALSE(string_file.WriteIoVec(&iovecs)); | 308 EXPECT_FALSE(string_file.WriteIoVec(&iovecs)); |
| 306 EXPECT_TRUE(string_file.string().empty()); | 309 EXPECT_TRUE(string_file.string().empty()); |
| 307 EXPECT_EQ(1, string_file.Seek(0, SEEK_CUR)); | 310 EXPECT_EQ(1, string_file.Seek(0, SEEK_CUR)); |
| 308 } | 311 } |
| 309 | 312 |
| 310 TEST(StringFile, Seek) { | 313 TEST(StringFile, Seek) { |
| 311 StringFile string_file; | 314 StringFile string_file; |
| 312 | 315 |
| 313 EXPECT_TRUE(string_file.Write("abcd", 4)); | 316 EXPECT_TRUE(string_file.Write("abcd", 4)); |
| (...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 442 } | 445 } |
| 443 | 446 |
| 444 TEST(StringFile, SeekInvalid) { | 447 TEST(StringFile, SeekInvalid) { |
| 445 StringFile string_file; | 448 StringFile string_file; |
| 446 | 449 |
| 447 EXPECT_EQ(0, string_file.Seek(0, SEEK_CUR)); | 450 EXPECT_EQ(0, string_file.Seek(0, SEEK_CUR)); |
| 448 EXPECT_EQ(1, string_file.Seek(1, SEEK_SET)); | 451 EXPECT_EQ(1, string_file.Seek(1, SEEK_SET)); |
| 449 EXPECT_EQ(1, string_file.Seek(0, SEEK_CUR)); | 452 EXPECT_EQ(1, string_file.Seek(0, SEEK_CUR)); |
| 450 EXPECT_LT(string_file.Seek(-1, SEEK_SET), 0); | 453 EXPECT_LT(string_file.Seek(-1, SEEK_SET), 0); |
| 451 EXPECT_EQ(1, string_file.Seek(0, SEEK_CUR)); | 454 EXPECT_EQ(1, string_file.Seek(0, SEEK_CUR)); |
| 452 EXPECT_LT(string_file.Seek(std::numeric_limits<ssize_t>::min(), SEEK_SET), 0); | 455 EXPECT_LT(string_file.Seek(std::numeric_limits<FileOperationResult>::min(), |
| 456 SEEK_SET), |
| 457 0); |
| 453 EXPECT_EQ(1, string_file.Seek(0, SEEK_CUR)); | 458 EXPECT_EQ(1, string_file.Seek(0, SEEK_CUR)); |
| 454 EXPECT_LT(string_file.Seek(std::numeric_limits<FileOffset>::min(), SEEK_SET), | 459 EXPECT_LT(string_file.Seek(std::numeric_limits<FileOffset>::min(), SEEK_SET), |
| 455 0); | 460 0); |
| 456 EXPECT_EQ(1, string_file.Seek(0, SEEK_CUR)); | 461 EXPECT_EQ(1, string_file.Seek(0, SEEK_CUR)); |
| 457 EXPECT_TRUE(string_file.string().empty()); | 462 EXPECT_TRUE(string_file.string().empty()); |
| 458 | 463 |
| 459 static_assert(SEEK_SET != 3 && SEEK_CUR != 3 && SEEK_END != 3, | 464 static_assert(SEEK_SET != 3 && SEEK_CUR != 3 && SEEK_END != 3, |
| 460 "3 must be invalid for whence"); | 465 "3 must be invalid for whence"); |
| 461 EXPECT_LT(string_file.Seek(0, 3), 0); | 466 EXPECT_LT(string_file.Seek(0, 3), 0); |
| 462 | 467 |
| (...skipping 17 matching lines...) Expand all Loading... |
| 480 TEST(StringFile, SeekSet) { | 485 TEST(StringFile, SeekSet) { |
| 481 StringFile string_file; | 486 StringFile string_file; |
| 482 EXPECT_TRUE(string_file.SeekSet(1)); | 487 EXPECT_TRUE(string_file.SeekSet(1)); |
| 483 EXPECT_EQ(1, string_file.Seek(0, SEEK_CUR)); | 488 EXPECT_EQ(1, string_file.Seek(0, SEEK_CUR)); |
| 484 EXPECT_TRUE(string_file.SeekSet(0)); | 489 EXPECT_TRUE(string_file.SeekSet(0)); |
| 485 EXPECT_EQ(0, string_file.Seek(0, SEEK_CUR)); | 490 EXPECT_EQ(0, string_file.Seek(0, SEEK_CUR)); |
| 486 EXPECT_TRUE(string_file.SeekSet(10)); | 491 EXPECT_TRUE(string_file.SeekSet(10)); |
| 487 EXPECT_EQ(10, string_file.Seek(0, SEEK_CUR)); | 492 EXPECT_EQ(10, string_file.Seek(0, SEEK_CUR)); |
| 488 EXPECT_FALSE(string_file.SeekSet(-1)); | 493 EXPECT_FALSE(string_file.SeekSet(-1)); |
| 489 EXPECT_EQ(10, string_file.Seek(0, SEEK_CUR)); | 494 EXPECT_EQ(10, string_file.Seek(0, SEEK_CUR)); |
| 490 EXPECT_FALSE(string_file.SeekSet(std::numeric_limits<ssize_t>::min())); | 495 EXPECT_FALSE( |
| 496 string_file.SeekSet(std::numeric_limits<FileOperationResult>::min())); |
| 491 EXPECT_EQ(10, string_file.Seek(0, SEEK_CUR)); | 497 EXPECT_EQ(10, string_file.Seek(0, SEEK_CUR)); |
| 492 EXPECT_FALSE(string_file.SeekSet(std::numeric_limits<FileOffset>::min())); | 498 EXPECT_FALSE(string_file.SeekSet(std::numeric_limits<FileOffset>::min())); |
| 493 EXPECT_EQ(10, string_file.Seek(0, SEEK_CUR)); | 499 EXPECT_EQ(10, string_file.Seek(0, SEEK_CUR)); |
| 494 } | 500 } |
| 495 | 501 |
| 496 } // namespace | 502 } // namespace |
| 497 } // namespace test | 503 } // namespace test |
| 498 } // namespace crashpad | 504 } // namespace crashpad |
| OLD | NEW |