diff options
author | Sergei Trofimovich <slyfox@gentoo.org> | 2018-12-23 13:25:47 +0000 |
---|---|---|
committer | Sergei Trofimovich <slyfox@gentoo.org> | 2018-12-23 13:26:04 +0000 |
commit | ce14d2a533200d2917090e18b324d3bbf914ea18 (patch) | |
tree | ceace199f14e3ac50bcd4ae1190856d84ba756a4 /dev-lang/crystal | |
parent | sys-kernel/linux-firmware: Fix building with USE="savedconfig". (diff) | |
download | gentoo-ce14d2a533200d2917090e18b324d3bbf914ea18.tar.gz gentoo-ce14d2a533200d2917090e18b324d3bbf914ea18.tar.bz2 gentoo-ce14d2a533200d2917090e18b324d3bbf914ea18.zip |
dev-lang/crystal: disable broken tests
networking tests don't work with FEATURES=network-sandbox
unix tests don't work on paths more than 107 bytes (crystal limitation)
Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
Diffstat (limited to 'dev-lang/crystal')
4 files changed, 151 insertions, 0 deletions
diff --git a/dev-lang/crystal/crystal-0.27.0.ebuild b/dev-lang/crystal/crystal-0.27.0.ebuild index b7dcd5f70cfe..763582835a2d 100644 --- a/dev-lang/crystal/crystal-0.27.0.ebuild +++ b/dev-lang/crystal/crystal-0.27.0.ebuild @@ -44,6 +44,9 @@ PATCHES=( "${FILESDIR}"/${PN}-0.26.1-gentoo-tests-sandbox.patch "${FILESDIR}"/${PN}-0.26.1-gentoo-tests-network-sandbox-3.patch "${FILESDIR}"/${PN}-0.27.0-extra-spec-flags.patch + "${FILESDIR}"/${PN}-0.27.0-max-age-0-test.patch + "${FILESDIR}"/${PN}-0.27.0-gentoo-tests-network-sandbox.patch + "${FILESDIR}"/${PN}-0.27.0-gentoo-tests-long-unix.patch ) src_prepare() { diff --git a/dev-lang/crystal/files/crystal-0.27.0-gentoo-tests-long-unix.patch b/dev-lang/crystal/files/crystal-0.27.0-gentoo-tests-long-unix.patch new file mode 100644 index 000000000000..51b049ee9801 --- /dev/null +++ b/dev-lang/crystal/files/crystal-0.27.0-gentoo-tests-long-unix.patch @@ -0,0 +1,90 @@ +--- a/spec/std/socket/unix_server_spec.cr ++++ b/spec/std/socket/unix_server_spec.cr +@@ -14,7 +14,9 @@ describe UNIXServer do + end + end + +- it "creates the socket file" do ++ # On large non-standard temp paths the test fails as: ++ # Path size exceeds the maximum size of 107 bytes ++ pending "creates the socket file" do + with_tempfile("unix_server.sock") do |path| + UNIXServer.open(path) do + File.exists?(path).should be_true +@@ -24,7 +26,9 @@ describe UNIXServer do + end + end + +- it "deletes socket file on close" do ++ # On large non-standard temp paths the test fails as: ++ # Path size exceeds the maximum size of 107 bytes ++ pending "deletes socket file on close" do + with_tempfile("unix_server-close.sock") do |path| + server = UNIXServer.new(path) + server.close +@@ -33,7 +37,9 @@ describe UNIXServer do + end + end + +- it "raises when socket file already exists" do ++ # On large non-standard temp paths the test fails as: ++ # Path size exceeds the maximum size of 107 bytes ++ pending "raises when socket file already exists" do + with_tempfile("unix_server-twice.sock") do |path| + server = UNIXServer.new(path) + +@@ -45,7 +51,9 @@ describe UNIXServer do + end + end + +- it "won't delete existing file on bind failure" do ++ # On large non-standard temp paths the test fails as: ++ # Path size exceeds the maximum size of 107 bytes ++ pending "won't delete existing file on bind failure" do + with_tempfile("unix_server-exist.sock") do |path| + File.write(path, "") + File.exists?(path).should be_true +@@ -60,7 +68,9 @@ describe UNIXServer do + end + + describe "accept" do +- it "returns the client UNIXSocket" do ++ # On large non-standard temp paths the test fails as: ++ # Path size exceeds the maximum size of 107 bytes ++ pending "returns the client UNIXSocket" do + with_tempfile("unix_server-accept.sock") do |path| + UNIXServer.open(path) do |server| + UNIXSocket.open(path) do |_| +@@ -72,7 +82,9 @@ describe UNIXServer do + end + end + +- it "raises when server is closed" do ++ # On large non-standard temp paths the test fails as: ++ # Path size exceeds the maximum size of 107 bytes ++ pending "raises when server is closed" do + with_tempfile("unix_server-closed.sock") do |path| + server = UNIXServer.new(path) + exception = nil +@@ -97,7 +109,9 @@ describe UNIXServer do + end + + describe "accept?" do +- it "returns the client UNIXSocket" do ++ # On large non-standard temp paths the test fails as: ++ # Path size exceeds the maximum size of 107 bytes ++ pending "returns the client UNIXSocket" do + with_tempfile("unix_server-accept_.sock") do |path| + UNIXServer.open(path) do |server| + UNIXSocket.open(path) do |_| +@@ -109,7 +123,9 @@ describe UNIXServer do + end + end + +- it "returns nil when server is closed" do ++ # On large non-standard temp paths the test fails as: ++ # Path size exceeds the maximum size of 107 bytes ++ pending "returns nil when server is closed" do + with_tempfile("unix_server-accept2.sock") do |path| + server = UNIXServer.new(path) + ret = :initial diff --git a/dev-lang/crystal/files/crystal-0.27.0-gentoo-tests-network-sandbox.patch b/dev-lang/crystal/files/crystal-0.27.0-gentoo-tests-network-sandbox.patch new file mode 100644 index 000000000000..0ba0f18f73d8 --- /dev/null +++ b/dev-lang/crystal/files/crystal-0.27.0-gentoo-tests-network-sandbox.patch @@ -0,0 +1,44 @@ +--- a/spec/std/socket/tcp_server_spec.cr ++++ b/spec/std/socket/tcp_server_spec.cr +@@ -76,13 +76,17 @@ describe TCPServer do + TCPServer.new("localhost", unused_local_port) + end + +- it "raises when host doesn't exist" do ++ # gentoo's FEATURES=network-sandbox blocks external network: ++ # Socket::Error: getaddrinfo: Temporary failure in name resolution ++ pending "raises when host doesn't exist" do + expect_raises(Socket::Error, "No address") do + TCPServer.new("doesnotexist.example.org.", 12345) + end + end + +- it "raises (rather than segfault on darwin) when host doesn't exist and port is 0" do ++ # gentoo's FEATURES=network-sandbox blocks external network: ++ # Socket::Error: getaddrinfo: Temporary failure in name resolution ++ pending "raises (rather than segfault on darwin) when host doesn't exist and port is 0" do + expect_raises(Socket::Error, "No address") do + TCPServer.new("doesnotexist.example.org.", 0) + end +--- a/spec/std/socket/tcp_socket_spec.cr ++++ b/spec/std/socket/tcp_socket_spec.cr +@@ -56,13 +56,17 @@ describe TCPSocket do + end + end + +- it "raises when host doesn't exist" do ++ # gentoo's FEATURES=network-sandbox blocks external network: ++ # Socket::Error: getaddrinfo: Temporary failure in name resolution ++ pending "raises when host doesn't exist" do + expect_raises(Socket::Error, "No address") do + TCPSocket.new("doesnotexist.example.org.", 12345) + end + end + +- it "raises (rather than segfault on darwin) when host doesn't exist and port is 0" do ++ # gentoo's FEATURES=network-sandbox blocks external network: ++ # Socket::Error: getaddrinfo: Temporary failure in name resolution ++ pending "raises (rather than segfault on darwin) when host doesn't exist and port is 0" do + expect_raises(Socket::Error, "No address") do + TCPSocket.new("doesnotexist.example.org.", 0) + end diff --git a/dev-lang/crystal/files/crystal-0.27.0-max-age-0-test.patch b/dev-lang/crystal/files/crystal-0.27.0-max-age-0-test.patch new file mode 100644 index 000000000000..d78927ab3eef --- /dev/null +++ b/dev-lang/crystal/files/crystal-0.27.0-max-age-0-test.patch @@ -0,0 +1,14 @@ +--- a/spec/std/http/cookie_spec.cr ++++ b/spec/std/http/cookie_spec.cr +@@ -150,7 +150,10 @@ module HTTP + parse_set_cookie("a=1; domain=127.0.0.1; path=/; HttpOnly").domain.should eq "127.0.0.1" + end + +- it "parse max-age as seconds from Time.now" do ++ # unstable test: sometimes 'now - max-age=0' == 0.0: ++ # Failure/Error: delta.should be > 0.seconds ++ # Expected 00:00:00 to be > 00:00:00 ++ pending "parse max-age as seconds from Time.now" do + cookie = parse_set_cookie("a=1; max-age=10") + delta = cookie.expires.not_nil! - Time.now + delta.should be > 9.seconds |