| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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 // The linux host build of nacl_io can't do wrapping of syscalls so all | 5 // The linux host build of nacl_io can't do wrapping of syscalls so all |
| 6 // these tests must be disabled. | 6 // these tests must be disabled. |
| 7 #if !defined(__linux__) | 7 #if !defined(__linux__) |
| 8 | 8 |
| 9 #include <unistd.h> | 9 #include <unistd.h> |
| 10 | 10 |
| (...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 120 class KernelWrapTest : public ::testing::Test { | 120 class KernelWrapTest : public ::testing::Test { |
| 121 public: | 121 public: |
| 122 KernelWrapTest() {} | 122 KernelWrapTest() {} |
| 123 | 123 |
| 124 virtual void SetUp() { | 124 virtual void SetUp() { |
| 125 // Initialize the global errno value to a consistent value rather than | 125 // Initialize the global errno value to a consistent value rather than |
| 126 // relying on its value from previous test runs. | 126 // relying on its value from previous test runs. |
| 127 errno = 0; | 127 errno = 0; |
| 128 | 128 |
| 129 // Initializing the KernelProxy opens stdin/stdout/stderr. | 129 // Initializing the KernelProxy opens stdin/stdout/stderr. |
| 130 EXPECT_CALL(mock, open(_, _)) | 130 EXPECT_CALL(mock, open(_, _, _)) |
| 131 .WillOnce(Return(0)) | 131 .WillOnce(Return(0)) |
| 132 .WillOnce(Return(1)) | 132 .WillOnce(Return(1)) |
| 133 .WillOnce(Return(2)); | 133 .WillOnce(Return(2)); |
| 134 | 134 |
| 135 ASSERT_EQ(0, ki_push_state_for_testing()); | 135 ASSERT_EQ(0, ki_push_state_for_testing()); |
| 136 ASSERT_EQ(0, ki_init(&mock)); | 136 ASSERT_EQ(0, ki_init(&mock)); |
| 137 | 137 |
| 138 // We allow write to be called any number of times, and it forwards to | 138 // We allow write to be called any number of times, and it forwards to |
| 139 // _real_write. This prevents an infinite loop writing output if there is a | 139 // _real_write. This prevents an infinite loop writing output if there is a |
| 140 // failure. | 140 // failure. |
| (...skipping 302 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 443 // one. The result returned is from the "real" mmap. | 443 // one. The result returned is from the "real" mmap. |
| 444 int dummy1 = 123; | 444 int dummy1 = 123; |
| 445 void* kDummyVoidPtr = &dummy1; | 445 void* kDummyVoidPtr = &dummy1; |
| 446 size_t kDummySizeT = sizeof(kDummyVoidPtr); | 446 size_t kDummySizeT = sizeof(kDummyVoidPtr); |
| 447 EXPECT_CALL(mock, munmap(kDummyVoidPtr, kDummySizeT)); | 447 EXPECT_CALL(mock, munmap(kDummyVoidPtr, kDummySizeT)); |
| 448 munmap(kDummyVoidPtr, kDummySizeT); | 448 munmap(kDummyVoidPtr, kDummySizeT); |
| 449 } | 449 } |
| 450 | 450 |
| 451 TEST_F(KernelWrapTest, open) { | 451 TEST_F(KernelWrapTest, open) { |
| 452 // We pass O_RDONLY because we do not want an error in flags translation | 452 // We pass O_RDONLY because we do not want an error in flags translation |
| 453 EXPECT_CALL(mock, open(kDummyConstChar, 0)) | 453 EXPECT_CALL(mock, open(kDummyConstChar, 0, 0)) |
| 454 .WillOnce(Return(kDummyInt2)) | 454 .WillOnce(Return(kDummyInt2)) |
| 455 .WillOnce(Return(kDummyInt2)); | 455 .WillOnce(Return(kDummyInt2)); |
| 456 | 456 |
| 457 EXPECT_EQ(kDummyInt2, open(kDummyConstChar, 0)); | 457 EXPECT_EQ(kDummyInt2, open(kDummyConstChar, 0, 0)); |
| 458 EXPECT_EQ(kDummyInt2, open(kDummyConstChar, 0)); | 458 EXPECT_EQ(kDummyInt2, open(kDummyConstChar, 0, 0)); |
| 459 } | 459 } |
| 460 | 460 |
| 461 TEST_F(KernelWrapTest, pipe) { | 461 TEST_F(KernelWrapTest, pipe) { |
| 462 int fds[] = {1, 2}; | 462 int fds[] = {1, 2}; |
| 463 EXPECT_CALL(mock, pipe(fds)).WillOnce(Return(kDummyInt)); | 463 EXPECT_CALL(mock, pipe(fds)).WillOnce(Return(kDummyInt)); |
| 464 EXPECT_EQ(kDummyInt, pipe(fds)); | 464 EXPECT_EQ(kDummyInt, pipe(fds)); |
| 465 } | 465 } |
| 466 | 466 |
| 467 TEST_F(KernelWrapTest, read) { | 467 TEST_F(KernelWrapTest, read) { |
| 468 int dummy_value; | 468 int dummy_value; |
| (...skipping 424 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 893 .WillOnce(Return(0)) | 893 .WillOnce(Return(0)) |
| 894 .WillOnce(DoAll(SetErrno(kDummyErrno), Return(-1))); | 894 .WillOnce(DoAll(SetErrno(kDummyErrno), Return(-1))); |
| 895 EXPECT_EQ(0, socketpair(kDummyInt, kDummyInt2, kDummyInt3, &dummy_val)); | 895 EXPECT_EQ(0, socketpair(kDummyInt, kDummyInt2, kDummyInt3, &dummy_val)); |
| 896 EXPECT_EQ(-1, socketpair(kDummyInt, kDummyInt2, kDummyInt3, &dummy_val)); | 896 EXPECT_EQ(-1, socketpair(kDummyInt, kDummyInt2, kDummyInt3, &dummy_val)); |
| 897 EXPECT_EQ(kDummyErrno, errno); | 897 EXPECT_EQ(kDummyErrno, errno); |
| 898 } | 898 } |
| 899 | 899 |
| 900 #endif // PROVIDES_SOCKET_API | 900 #endif // PROVIDES_SOCKET_API |
| 901 | 901 |
| 902 #endif // __linux__ | 902 #endif // __linux__ |
| OLD | NEW |