Index: native_client_sdk/src/tests/nacl_io_test/kernel_wrap_test.cc |
diff --git a/native_client_sdk/src/tests/nacl_io_test/kernel_wrap_test.cc b/native_client_sdk/src/tests/nacl_io_test/kernel_wrap_test.cc |
index 299592bb903582571259735622bde73cdc95d463..6023cb3277711d41e54fb4059df89f394fddefe1 100644 |
--- a/native_client_sdk/src/tests/nacl_io_test/kernel_wrap_test.cc |
+++ b/native_client_sdk/src/tests/nacl_io_test/kernel_wrap_test.cc |
@@ -653,11 +653,15 @@ TEST_F(KernelWrapTest, bind) { |
// The way we wrap bind does not support returning arbitrary values, so we |
// test 0 and -1. |
struct sockaddr addr; |
+ |
EXPECT_CALL(mock, bind(kDummyInt, &addr, kDummyInt2)) |
- .WillOnce(Return(0)) |
- .WillOnce(Return(-1)); |
+ .WillOnce(Return(0)); |
EXPECT_EQ(0, bind(kDummyInt, &addr, kDummyInt2)); |
+ |
+ EXPECT_CALL(mock, bind(kDummyInt, &addr, kDummyInt2)) |
binji
2014/05/16 20:19:09
I think I like it better without the duplication o
Sam Clegg
2014/05/16 20:29:53
I think that was the conclusion I came to last tim
bradn
2014/05/16 20:52:54
Done.
bradn
2014/05/16 20:52:54
Done.
|
+ .WillOnce(DoAll(SetErrno(kDummyErrno), Return(-1))); |
EXPECT_EQ(-1, bind(kDummyInt, &addr, kDummyInt2)); |
+ EXPECT_EQ(kDummyErrno, errno); |
} |
TEST_F(KernelWrapTest, connect) { |
@@ -665,10 +669,13 @@ TEST_F(KernelWrapTest, connect) { |
// test 0 and -1. |
struct sockaddr addr; |
EXPECT_CALL(mock, connect(kDummyInt, &addr, kDummyInt2)) |
- .WillOnce(Return(0)) |
- .WillOnce(Return(-1)); |
+ .WillOnce(Return(0)); |
EXPECT_EQ(0, connect(kDummyInt, &addr, kDummyInt2)); |
+ |
+ EXPECT_CALL(mock, connect(kDummyInt, &addr, kDummyInt2)) |
+ .WillOnce(DoAll(SetErrno(kDummyErrno), Return(-1))); |
EXPECT_EQ(-1, connect(kDummyInt, &addr, kDummyInt2)); |
+ EXPECT_EQ(kDummyErrno, errno); |
} |
TEST_F(KernelWrapTest, gethostbyname) { |
@@ -682,11 +689,15 @@ TEST_F(KernelWrapTest, getpeername) { |
// so we test 0 and -1. |
struct sockaddr addr; |
socklen_t len; |
+ |
EXPECT_CALL(mock, getpeername(kDummyInt, &addr, &len)) |
- .WillOnce(Return(0)) |
- .WillOnce(Return(-1)); |
+ .WillOnce(Return(0)); |
EXPECT_EQ(0, getpeername(kDummyInt, &addr, &len)); |
+ |
+ EXPECT_CALL(mock, getpeername(kDummyInt, &addr, &len)) |
+ .WillOnce(DoAll(SetErrno(kDummyErrno), Return(-1))); |
EXPECT_EQ(-1, getpeername(kDummyInt, &addr, &len)); |
+ EXPECT_EQ(kDummyErrno, errno); |
} |
TEST_F(KernelWrapTest, getsockname) { |
@@ -694,11 +705,15 @@ TEST_F(KernelWrapTest, getsockname) { |
// so we test 0 and -1. |
struct sockaddr addr; |
socklen_t len; |
+ |
EXPECT_CALL(mock, getsockname(kDummyInt, &addr, &len)) |
- .WillOnce(Return(0)) |
- .WillOnce(Return(-1)); |
+ .WillOnce(Return(0)); |
EXPECT_EQ(0, getsockname(kDummyInt, &addr, &len)); |
+ |
+ EXPECT_CALL(mock, getsockname(kDummyInt, &addr, &len)) |
+ .WillOnce(DoAll(SetErrno(kDummyErrno), Return(-1))); |
EXPECT_EQ(-1, getsockname(kDummyInt, &addr, &len)); |
+ EXPECT_EQ(kDummyErrno, errno); |
} |
TEST_F(KernelWrapTest, getsockopt) { |
@@ -707,26 +722,34 @@ TEST_F(KernelWrapTest, getsockopt) { |
int dummy_val; |
void* dummy_void_ptr = &dummy_val; |
socklen_t len; |
+ |
EXPECT_CALL( |
mock, getsockopt(kDummyInt, kDummyInt2, kDummyInt3, dummy_void_ptr, &len)) |
- .WillOnce(Return(0)) |
- .WillOnce(Return(-1)); |
+ .WillOnce(Return(0)); |
EXPECT_EQ( |
0, |
getsockopt(kDummyInt, kDummyInt2, kDummyInt3, dummy_void_ptr, &len)); |
+ |
+ EXPECT_CALL( |
+ mock, getsockopt(kDummyInt, kDummyInt2, kDummyInt3, dummy_void_ptr, &len)) |
+ .WillOnce(DoAll(SetErrno(kDummyErrno), Return(-1))); |
EXPECT_EQ( |
-1, |
getsockopt(kDummyInt, kDummyInt2, kDummyInt3, dummy_void_ptr, &len)); |
+ EXPECT_EQ(kDummyErrno, errno); |
} |
TEST_F(KernelWrapTest, listen) { |
// The way we wrap listen does not support returning arbitrary values, so we |
// test 0 and -1. |
EXPECT_CALL(mock, listen(kDummyInt, kDummyInt2)) |
- .WillOnce(Return(0)) |
- .WillOnce(Return(-1)); |
+ .WillOnce(Return(0)); |
EXPECT_EQ(0, listen(kDummyInt, kDummyInt2)); |
+ |
+ EXPECT_CALL(mock, listen(kDummyInt, kDummyInt2)) |
+ .WillOnce(DoAll(SetErrno(kDummyErrno), Return(-1))); |
EXPECT_EQ(-1, listen(kDummyInt, kDummyInt2)); |
+ EXPECT_EQ(kDummyErrno, errno); |
} |
TEST_F(KernelWrapTest, recv) { |
@@ -798,30 +821,40 @@ TEST_F(KernelWrapTest, setsockopt) { |
// The way we wrap setsockopt does not support returning arbitrary values, so |
// we test 0 and -1. |
const socklen_t kDummySockLen = 0x50cc5; |
+ |
EXPECT_CALL( |
mock, |
setsockopt( |
kDummyInt, kDummyInt2, kDummyInt3, kDummyVoidPtr, kDummySockLen)) |
- .WillOnce(Return(0)) |
- .WillOnce(Return(-1)); |
+ .WillOnce(Return(0)); |
EXPECT_EQ( |
0, |
setsockopt( |
kDummyInt, kDummyInt2, kDummyInt3, kDummyVoidPtr, kDummySockLen)); |
+ |
+ EXPECT_CALL( |
+ mock, |
+ setsockopt( |
+ kDummyInt, kDummyInt2, kDummyInt3, kDummyVoidPtr, kDummySockLen)) |
+ .WillOnce(DoAll(SetErrno(kDummyErrno), Return(-1))); |
EXPECT_EQ( |
-1, |
setsockopt( |
kDummyInt, kDummyInt2, kDummyInt3, kDummyVoidPtr, kDummySockLen)); |
+ EXPECT_EQ(kDummyErrno, errno); |
} |
TEST_F(KernelWrapTest, shutdown) { |
// The way we wrap shutdown does not support returning arbitrary values, so we |
// test 0 and -1. |
EXPECT_CALL(mock, shutdown(kDummyInt, kDummyInt2)) |
- .WillOnce(Return(0)) |
- .WillOnce(Return(-1)); |
+ .WillOnce(Return(0)); |
EXPECT_EQ(0, shutdown(kDummyInt, kDummyInt2)); |
+ |
+ EXPECT_CALL(mock, shutdown(kDummyInt, kDummyInt2)) |
+ .WillOnce(DoAll(SetErrno(kDummyErrno), Return(-1))); |
EXPECT_EQ(-1, shutdown(kDummyInt, kDummyInt2)); |
+ EXPECT_EQ(kDummyErrno, errno); |
} |
TEST_F(KernelWrapTest, socket) { |
@@ -834,13 +867,15 @@ TEST_F(KernelWrapTest, socketpair) { |
// The way we wrap socketpair does not support returning arbitrary values, |
// so we test 0 and -1. |
int dummy_val; |
+ |
EXPECT_CALL(mock, socketpair(kDummyInt, kDummyInt2, kDummyInt3, &dummy_val)) |
- .WillOnce(Return(0)) |
- .WillOnce(Return(-1)); |
- EXPECT_EQ(0, |
- socketpair(kDummyInt, kDummyInt2, kDummyInt3, &dummy_val)); |
- EXPECT_EQ(-1, |
- socketpair(kDummyInt, kDummyInt2, kDummyInt3, &dummy_val)); |
+ .WillOnce(Return(0)); |
+ EXPECT_EQ(0, socketpair(kDummyInt, kDummyInt2, kDummyInt3, &dummy_val)); |
+ |
+ EXPECT_CALL(mock, socketpair(kDummyInt, kDummyInt2, kDummyInt3, &dummy_val)) |
+ .WillOnce(DoAll(SetErrno(kDummyErrno), Return(-1))); |
+ EXPECT_EQ(-1, socketpair(kDummyInt, kDummyInt2, kDummyInt3, &dummy_val)); |
+ EXPECT_EQ(kDummyErrno, errno); |
} |
#endif // PROVIDES_SOCKET_API |