summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Trofimovich <slyfox@gentoo.org>2018-12-23 13:25:47 +0000
committerSergei Trofimovich <slyfox@gentoo.org>2018-12-23 13:26:04 +0000
commitce14d2a533200d2917090e18b324d3bbf914ea18 (patch)
treeceace199f14e3ac50bcd4ae1190856d84ba756a4 /dev-lang/crystal
parentsys-kernel/linux-firmware: Fix building with USE="savedconfig". (diff)
downloadgentoo-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')
-rw-r--r--dev-lang/crystal/crystal-0.27.0.ebuild3
-rw-r--r--dev-lang/crystal/files/crystal-0.27.0-gentoo-tests-long-unix.patch90
-rw-r--r--dev-lang/crystal/files/crystal-0.27.0-gentoo-tests-network-sandbox.patch44
-rw-r--r--dev-lang/crystal/files/crystal-0.27.0-max-age-0-test.patch14
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