From 27384d367e14417ef19a383c603241bab5bc4e8f Mon Sep 17 00:00:00 2001
From: Francesco Ariis <fa-ml@ariis.it>
Date: Wed, 22 Jun 2022 14:59:53 +0200
Subject: [PATCH] (cabal check) Add "No `main-is`" test

---
 .../Check/ConfiguredPackage/Sanity/NoMainIs/cabal.out |  4 ++++
 .../ConfiguredPackage/Sanity/NoMainIs/cabal.test.hs   |  5 +++++
 .../Check/ConfiguredPackage/Sanity/NoMainIs/pkg.cabal | 11 +++++++++++
 3 files changed, 20 insertions(+)
 create mode 100644 cabal-testsuite/PackageTests/Check/ConfiguredPackage/Sanity/NoMainIs/cabal.out
 create mode 100644 cabal-testsuite/PackageTests/Check/ConfiguredPackage/Sanity/NoMainIs/cabal.test.hs
 create mode 100644 cabal-testsuite/PackageTests/Check/ConfiguredPackage/Sanity/NoMainIs/pkg.cabal

diff --git a/cabal-testsuite/PackageTests/Check/ConfiguredPackage/Sanity/NoMainIs/cabal.out b/cabal-testsuite/PackageTests/Check/ConfiguredPackage/Sanity/NoMainIs/cabal.out
new file mode 100644
index 0000000000..33e622b642
--- /dev/null
+++ b/cabal-testsuite/PackageTests/Check/ConfiguredPackage/Sanity/NoMainIs/cabal.out
@@ -0,0 +1,4 @@
+# cabal check
+Warning: The package will not build sanely due to these errors:
+Warning: No 'main-is' field found for executable exe
+Warning: Hackage would reject this package.
diff --git a/cabal-testsuite/PackageTests/Check/ConfiguredPackage/Sanity/NoMainIs/cabal.test.hs b/cabal-testsuite/PackageTests/Check/ConfiguredPackage/Sanity/NoMainIs/cabal.test.hs
new file mode 100644
index 0000000000..b741775332
--- /dev/null
+++ b/cabal-testsuite/PackageTests/Check/ConfiguredPackage/Sanity/NoMainIs/cabal.test.hs
@@ -0,0 +1,5 @@
+import Test.Cabal.Prelude
+
+-- Missing `main-is`.
+main = cabalTest $
+  fails $ cabal "check" []
diff --git a/cabal-testsuite/PackageTests/Check/ConfiguredPackage/Sanity/NoMainIs/pkg.cabal b/cabal-testsuite/PackageTests/Check/ConfiguredPackage/Sanity/NoMainIs/pkg.cabal
new file mode 100644
index 0000000000..970662c948
--- /dev/null
+++ b/cabal-testsuite/PackageTests/Check/ConfiguredPackage/Sanity/NoMainIs/pkg.cabal
@@ -0,0 +1,11 @@
+cabal-version: 3.0
+name: pkg
+synopsis: synopsis
+description: description
+version: 0
+category: example
+maintainer: none@example.com
+license: GPL-3.0-or-later
+
+executable exe
+    default-language: Haskell2010
-- 
GitLab