Remove O_CLOEXEC from socket test configurations where irrelevant.

The implementation of O_CLOEXEC is orthogonal to every property tested
by these tests; removing it significantly reduces the number of
redundant tests we run.

Also remove no-op calls to VecCat (calls with a single argument).

PiperOrigin-RevId: 230959537
Change-Id: I83fe7db24e481ef67ca1f1992228af423f640b5c
This commit is contained in:
Jamie Liu
2019-01-25 13:35:32 -08:00
committed by Shentubot
parent cc99520753
commit 876b241fac
34 changed files with 139 additions and 250 deletions
+2 -4
View File
@@ -586,13 +586,11 @@ INSTANTIATE_TEST_CASE_P(
ApplyVec<SocketPairKind>(
FilesystemUnboundUnixDomainSocketPair,
AllBitwiseCombinations(List<int>{SOCK_STREAM, SOCK_SEQPACKET},
List<int>{0, SOCK_NONBLOCK},
List<int>{0, SOCK_CLOEXEC})),
List<int>{0, SOCK_NONBLOCK})),
ApplyVec<SocketPairKind>(
AbstractUnboundUnixDomainSocketPair,
AllBitwiseCombinations(List<int>{SOCK_STREAM, SOCK_SEQPACKET},
List<int>{0, SOCK_NONBLOCK},
List<int>{0, SOCK_CLOEXEC})))));
List<int>{0, SOCK_NONBLOCK})))));
} // namespace
+5 -7
View File
@@ -76,16 +76,14 @@ TEST_P(AllSocketPairTest, BoundSenderAddrCoalesced) {
INSTANTIATE_TEST_CASE_P(
AllUnixDomainSockets, AllSocketPairTest,
::testing::ValuesIn(VecCat<SocketPairKind>(
ApplyVec<SocketPairKind>(
FilesystemUnboundUnixDomainSocketPair,
AllBitwiseCombinations(List<int>{SOCK_STREAM},
List<int>{0, SOCK_NONBLOCK},
List<int>{0, SOCK_CLOEXEC})),
ApplyVec<SocketPairKind>(FilesystemUnboundUnixDomainSocketPair,
AllBitwiseCombinations(List<int>{SOCK_STREAM},
List<int>{
0, SOCK_NONBLOCK})),
ApplyVec<SocketPairKind>(
AbstractUnboundUnixDomainSocketPair,
AllBitwiseCombinations(List<int>{SOCK_STREAM},
List<int>{0, SOCK_NONBLOCK},
List<int>{0, SOCK_CLOEXEC})))));
List<int>{0, SOCK_NONBLOCK})))));
} // namespace
+6 -6
View File
@@ -131,14 +131,14 @@ INSTANTIATE_TEST_CASE_P(
::testing::ValuesIn(VecCat<SocketPairKind>(
ApplyVec<SocketPairKind>(
FilesystemUnboundUnixDomainSocketPair,
AllBitwiseCombinations(
List<int>{SOCK_STREAM, SOCK_DGRAM, SOCK_SEQPACKET},
List<int>{0, SOCK_NONBLOCK}, List<int>{0, SOCK_CLOEXEC})),
AllBitwiseCombinations(List<int>{SOCK_STREAM, SOCK_DGRAM,
SOCK_SEQPACKET},
List<int>{0, SOCK_NONBLOCK})),
ApplyVec<SocketPairKind>(
AbstractUnboundUnixDomainSocketPair,
AllBitwiseCombinations(
List<int>{SOCK_STREAM, SOCK_DGRAM, SOCK_SEQPACKET},
List<int>{0, SOCK_NONBLOCK}, List<int>{0, SOCK_CLOEXEC})))));
AllBitwiseCombinations(List<int>{SOCK_STREAM, SOCK_DGRAM,
SOCK_SEQPACKET},
List<int>{0, SOCK_NONBLOCK})))));
} // namespace
+2 -3
View File
@@ -24,11 +24,10 @@ namespace gvisor {
namespace testing {
std::vector<SocketPairKind> GetSocketPairs() {
return VecCat<SocketPairKind>(ApplyVec<SocketPairKind>(
return ApplyVec<SocketPairKind>(
AbstractBoundUnixDomainSocketPair,
AllBitwiseCombinations(List<int>{SOCK_STREAM, SOCK_DGRAM, SOCK_SEQPACKET},
List<int>{0, SOCK_NONBLOCK},
List<int>{0, SOCK_CLOEXEC})));
List<int>{0, SOCK_NONBLOCK}));
}
INSTANTIATE_TEST_CASE_P(
+2 -3
View File
@@ -24,11 +24,10 @@ namespace gvisor {
namespace testing {
std::vector<SocketPairKind> GetSocketPairs() {
return VecCat<SocketPairKind>(ApplyVec<SocketPairKind>(
return ApplyVec<SocketPairKind>(
FilesystemBoundUnixDomainSocketPair,
AllBitwiseCombinations(List<int>{SOCK_STREAM, SOCK_DGRAM, SOCK_SEQPACKET},
List<int>{0, SOCK_NONBLOCK},
List<int>{0, SOCK_CLOEXEC})));
List<int>{0, SOCK_NONBLOCK}));
}
INSTANTIATE_TEST_CASE_P(
@@ -25,22 +25,17 @@ namespace testing {
std::vector<SocketPairKind> GetSocketPairs() {
return VecCat<SocketPairKind>(
ApplyVec<SocketPairKind>(
IPv6UDPBidirectionalBindSocketPair,
AllBitwiseCombinations(List<int>{0, SOCK_CLOEXEC})),
ApplyVec<SocketPairKind>(
IPv4UDPBidirectionalBindSocketPair,
AllBitwiseCombinations(List<int>{0, SOCK_CLOEXEC})),
std::vector<SocketPairKind>{
IPv6UDPBidirectionalBindSocketPair(0),
IPv4UDPBidirectionalBindSocketPair(0),
},
ApplyVecToVec<SocketPairKind>(
std::vector<Middleware>{
NoOp, SetSockOpt(IPPROTO_TCP, TCP_NODELAY, &kSockOptOn)},
VecCat<SocketPairKind>(
ApplyVec<SocketPairKind>(
IPv6TCPAcceptBindSocketPair,
AllBitwiseCombinations(List<int>{0, SOCK_CLOEXEC})),
ApplyVec<SocketPairKind>(
IPv4TCPAcceptBindSocketPair,
AllBitwiseCombinations(List<int>{0, SOCK_CLOEXEC})))));
std::vector<SocketPairKind>{
IPv6TCPAcceptBindSocketPair(0),
IPv4TCPAcceptBindSocketPair(0),
}));
}
INSTANTIATE_TEST_CASE_P(
@@ -27,16 +27,11 @@ std::vector<SocketPairKind> GetSocketPairs() {
return ApplyVecToVec<SocketPairKind>(
std::vector<Middleware>{
NoOp, SetSockOpt(IPPROTO_TCP, TCP_NODELAY, &kSockOptOn)},
VecCat<SocketPairKind>(
ApplyVec<SocketPairKind>(
IPv6TCPAcceptBindSocketPair,
AllBitwiseCombinations(List<int>{0, SOCK_CLOEXEC})),
ApplyVec<SocketPairKind>(
IPv4TCPAcceptBindSocketPair,
AllBitwiseCombinations(List<int>{0, SOCK_CLOEXEC})),
ApplyVec<SocketPairKind>(
DualStackTCPAcceptBindSocketPair,
AllBitwiseCombinations(List<int>{0, SOCK_CLOEXEC}))));
std::vector<SocketPairKind>{
IPv6TCPAcceptBindSocketPair(0),
IPv4TCPAcceptBindSocketPair(0),
DualStackTCPAcceptBindSocketPair(0),
});
}
INSTANTIATE_TEST_CASE_P(
+5 -10
View File
@@ -23,16 +23,11 @@ namespace gvisor {
namespace testing {
std::vector<SocketPairKind> GetSocketPairs() {
return VecCat<SocketPairKind>(
ApplyVec<SocketPairKind>(
IPv6TCPAcceptBindSocketPair,
AllBitwiseCombinations(List<int>{0, SOCK_CLOEXEC})),
ApplyVec<SocketPairKind>(
IPv4TCPAcceptBindSocketPair,
AllBitwiseCombinations(List<int>{0, SOCK_CLOEXEC})),
ApplyVec<SocketPairKind>(
DualStackTCPAcceptBindSocketPair,
AllBitwiseCombinations(List<int>{0, SOCK_CLOEXEC})));
return {
IPv6TCPAcceptBindSocketPair(0),
IPv4TCPAcceptBindSocketPair(0),
DualStackTCPAcceptBindSocketPair(0),
};
}
INSTANTIATE_TEST_CASE_P(
@@ -27,13 +27,11 @@ std::vector<SocketPairKind> GetSocketPairs() {
return ApplyVecToVec<SocketPairKind>(
std::vector<Middleware>{
NoOp, SetSockOpt(IPPROTO_TCP, TCP_NODELAY, &kSockOptOn)},
VecCat<SocketPairKind>(
ApplyVec<SocketPairKind>(
IPv6TCPAcceptBindSocketPair,
AllBitwiseCombinations(List<int>{0, SOCK_CLOEXEC})),
ApplyVec<SocketPairKind>(
IPv4TCPAcceptBindSocketPair,
AllBitwiseCombinations(List<int>{0, SOCK_CLOEXEC}))));
std::vector<SocketPairKind>{
IPv6TCPAcceptBindSocketPair(0),
IPv4TCPAcceptBindSocketPair(0),
DualStackTCPAcceptBindSocketPair(0),
});
}
INSTANTIATE_TEST_CASE_P(
@@ -27,15 +27,10 @@ std::vector<SocketPairKind> GetSocketPairs() {
return ApplyVecToVec<SocketPairKind>(
std::vector<Middleware>{
NoOp, SetSockOpt(IPPROTO_TCP, TCP_NODELAY, &kSockOptOn)},
VecCat<SocketPairKind>(
ApplyVec<SocketPairKind>(
IPv6TCPAcceptBindSocketPair,
AllBitwiseCombinations(List<int>{SOCK_NONBLOCK},
List<int>{0, SOCK_CLOEXEC})),
ApplyVec<SocketPairKind>(
IPv4TCPAcceptBindSocketPair,
AllBitwiseCombinations(List<int>{SOCK_NONBLOCK},
List<int>{0, SOCK_CLOEXEC}))));
std::vector<SocketPairKind>{
IPv6TCPAcceptBindSocketPair(SOCK_NONBLOCK),
IPv4TCPAcceptBindSocketPair(SOCK_NONBLOCK),
});
}
INSTANTIATE_TEST_CASE_P(
+5 -10
View File
@@ -25,16 +25,11 @@ namespace gvisor {
namespace testing {
std::vector<SocketPairKind> GetSocketPairs() {
return VecCat<SocketPairKind>(
ApplyVec<SocketPairKind>(
IPv6UDPBidirectionalBindSocketPair,
AllBitwiseCombinations(List<int>{0, SOCK_CLOEXEC})),
ApplyVec<SocketPairKind>(
IPv4UDPBidirectionalBindSocketPair,
AllBitwiseCombinations(List<int>{0, SOCK_CLOEXEC})),
ApplyVec<SocketPairKind>(
DualStackUDPBidirectionalBindSocketPair,
AllBitwiseCombinations(List<int>{0, SOCK_CLOEXEC})));
return {
IPv6UDPBidirectionalBindSocketPair(0),
IPv4UDPBidirectionalBindSocketPair(0),
DualStackUDPBidirectionalBindSocketPair(0),
};
}
INSTANTIATE_TEST_CASE_P(
@@ -23,13 +23,10 @@ namespace gvisor {
namespace testing {
std::vector<SocketPairKind> GetSocketPairs() {
return VecCat<SocketPairKind>(
ApplyVec<SocketPairKind>(
IPv6UDPBidirectionalBindSocketPair,
AllBitwiseCombinations(List<int>{0, SOCK_CLOEXEC})),
ApplyVec<SocketPairKind>(
IPv4UDPBidirectionalBindSocketPair,
AllBitwiseCombinations(List<int>{0, SOCK_CLOEXEC})));
return {
IPv6UDPBidirectionalBindSocketPair(0),
IPv4UDPBidirectionalBindSocketPair(0),
};
}
INSTANTIATE_TEST_CASE_P(
@@ -23,15 +23,10 @@ namespace gvisor {
namespace testing {
std::vector<SocketPairKind> GetSocketPairs() {
return VecCat<SocketPairKind>(
ApplyVec<SocketPairKind>(
IPv6UDPBidirectionalBindSocketPair,
AllBitwiseCombinations(List<int>{SOCK_NONBLOCK},
List<int>{0, SOCK_CLOEXEC})),
ApplyVec<SocketPairKind>(
IPv4UDPBidirectionalBindSocketPair,
AllBitwiseCombinations(List<int>{SOCK_NONBLOCK},
List<int>{0, SOCK_CLOEXEC})));
return {
IPv6UDPBidirectionalBindSocketPair(SOCK_NONBLOCK),
IPv4UDPBidirectionalBindSocketPair(SOCK_NONBLOCK),
};
}
INSTANTIATE_TEST_CASE_P(
+2 -3
View File
@@ -23,11 +23,10 @@ namespace gvisor {
namespace testing {
std::vector<SocketPairKind> GetSocketPairs() {
return VecCat<SocketPairKind>(ApplyVec<SocketPairKind>(
return ApplyVec<SocketPairKind>(
AbstractBoundUnixDomainSocketPair,
AllBitwiseCombinations(List<int>{SOCK_STREAM, SOCK_DGRAM, SOCK_SEQPACKET},
List<int>{0, SOCK_NONBLOCK},
List<int>{0, SOCK_CLOEXEC})));
List<int>{0, SOCK_NONBLOCK}));
}
INSTANTIATE_TEST_CASE_P(
@@ -23,11 +23,10 @@ namespace gvisor {
namespace testing {
std::vector<SocketPairKind> GetSocketPairs() {
return VecCat<SocketPairKind>(ApplyVec<SocketPairKind>(
return ApplyVec<SocketPairKind>(
AbstractBoundUnixDomainSocketPair,
AllBitwiseCombinations(List<int>{SOCK_STREAM, SOCK_DGRAM, SOCK_SEQPACKET},
List<int>{SOCK_NONBLOCK},
List<int>{0, SOCK_CLOEXEC})));
List<int>{SOCK_NONBLOCK}));
}
INSTANTIATE_TEST_CASE_P(
@@ -27,19 +27,13 @@ std::vector<SocketPairKind> GetSocketPairs() {
return VecCat<SocketPairKind>(
ApplyVec<SocketPairKind>(
UnixDomainSocketPair,
AllBitwiseCombinations(
List<int>{SOCK_STREAM, SOCK_SEQPACKET, SOCK_DGRAM},
List<int>{0, SOCK_CLOEXEC})),
std::vector<int>{SOCK_STREAM, SOCK_SEQPACKET, SOCK_DGRAM}),
ApplyVec<SocketPairKind>(
FilesystemBoundUnixDomainSocketPair,
AllBitwiseCombinations(
List<int>{SOCK_STREAM, SOCK_SEQPACKET, SOCK_DGRAM},
List<int>{0, SOCK_CLOEXEC})),
std::vector<int>{SOCK_STREAM, SOCK_SEQPACKET, SOCK_DGRAM}),
ApplyVec<SocketPairKind>(
AbstractBoundUnixDomainSocketPair,
AllBitwiseCombinations(
List<int>{SOCK_STREAM, SOCK_SEQPACKET, SOCK_DGRAM},
List<int>{0, SOCK_CLOEXEC})));
std::vector<int>{SOCK_STREAM, SOCK_SEQPACKET, SOCK_DGRAM}));
}
INSTANTIATE_TEST_CASE_P(
@@ -29,18 +29,15 @@ std::vector<SocketPairKind> GetSocketPairs() {
ApplyVec<SocketPairKind>(
UnixDomainSocketPair,
AllBitwiseCombinations(List<int>{SOCK_DGRAM},
List<int>{0, SOCK_NONBLOCK},
List<int>{0, SOCK_CLOEXEC})),
List<int>{0, SOCK_NONBLOCK})),
ApplyVec<SocketPairKind>(
FilesystemBoundUnixDomainSocketPair,
AllBitwiseCombinations(List<int>{SOCK_DGRAM},
List<int>{0, SOCK_NONBLOCK},
List<int>{0, SOCK_CLOEXEC})),
List<int>{0, SOCK_NONBLOCK})),
ApplyVec<SocketPairKind>(
AbstractBoundUnixDomainSocketPair,
AllBitwiseCombinations(List<int>{SOCK_DGRAM},
List<int>{0, SOCK_NONBLOCK},
List<int>{0, SOCK_CLOEXEC}))));
List<int>{0, SOCK_NONBLOCK}))));
}
INSTANTIATE_TEST_CASE_P(
@@ -45,22 +45,11 @@ TEST_P(NonBlockingDgramUnixSocketPairTest, ReadOneSideClosed) {
INSTANTIATE_TEST_CASE_P(
AllUnixDomainSockets, NonBlockingDgramUnixSocketPairTest,
::testing::ValuesIn(IncludeReversals(VecCat<SocketPairKind>(
ApplyVec<SocketPairKind>(
UnixDomainSocketPair,
AllBitwiseCombinations(List<int>{SOCK_DGRAM},
List<int>{SOCK_NONBLOCK},
List<int>{0, SOCK_CLOEXEC})),
ApplyVec<SocketPairKind>(
FilesystemBoundUnixDomainSocketPair,
AllBitwiseCombinations(List<int>{SOCK_DGRAM},
List<int>{SOCK_NONBLOCK},
List<int>{0, SOCK_CLOEXEC})),
ApplyVec<SocketPairKind>(
AbstractBoundUnixDomainSocketPair,
AllBitwiseCombinations(List<int>{SOCK_DGRAM},
List<int>{SOCK_NONBLOCK},
List<int>{0, SOCK_CLOEXEC}))))));
::testing::ValuesIn(IncludeReversals(std::vector<SocketPairKind>{
UnixDomainSocketPair(SOCK_DGRAM | SOCK_NONBLOCK),
FilesystemBoundUnixDomainSocketPair(SOCK_DGRAM | SOCK_NONBLOCK),
AbstractBoundUnixDomainSocketPair(SOCK_DGRAM | SOCK_NONBLOCK),
})));
} // namespace
+2 -3
View File
@@ -23,11 +23,10 @@ namespace gvisor {
namespace testing {
std::vector<SocketPairKind> GetSocketPairs() {
return VecCat<SocketPairKind>(ApplyVec<SocketPairKind>(
return ApplyVec<SocketPairKind>(
UnixDomainSocketPair,
AllBitwiseCombinations(List<int>{SOCK_STREAM, SOCK_DGRAM, SOCK_SEQPACKET},
List<int>{0, SOCK_NONBLOCK},
List<int>{0, SOCK_CLOEXEC})));
List<int>{0, SOCK_NONBLOCK}));
}
INSTANTIATE_TEST_CASE_P(
@@ -23,11 +23,10 @@ namespace gvisor {
namespace testing {
std::vector<SocketPairKind> GetSocketPairs() {
return VecCat<SocketPairKind>(ApplyVec<SocketPairKind>(
return ApplyVec<SocketPairKind>(
FilesystemBoundUnixDomainSocketPair,
AllBitwiseCombinations(List<int>{SOCK_STREAM, SOCK_DGRAM, SOCK_SEQPACKET},
List<int>{0, SOCK_NONBLOCK},
List<int>{0, SOCK_CLOEXEC})));
List<int>{0, SOCK_NONBLOCK}));
}
INSTANTIATE_TEST_CASE_P(

Some files were not shown because too many files have changed in this diff Show More