Package: icedove
Version: 44.0~b1-1
Severity: wishlist
Tags: patch

Hi,
I've added three simple autopkgtests in oder to ease releasing and backporting:

 * help.sh - parse icedoves help and version output to make sure we have
   at least enought parts in the package to launch the process
 * xpcshellTest.sh - make sure we can run the xpcshell from the dev package
 * idlTest.sh - make sure we can process idl files as needed by
   extension building against the dev package

I'm happy to push these to the experimental branch but wanted to make
sure the current maintainers are fine with it.

Chees,
 -- Guido

-- System Information:
Debian Release: stretch/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'stable-updates'), (500, 'unstable'), 
(500, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.4.0-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages icedove depends on:
ii  debianutils               4.7
ii  fontconfig                2.11.0-6.4
ii  libasound2                1.1.0-1
ii  libatk1.0-0               2.20.0-1
ii  libc6                     2.22-6
ii  libcairo2                 1.14.6-1+b1
ii  libdbus-1-3               1.10.8-1
ii  libdbus-glib-1-2          0.106-1
ii  libevent-2.0-5            2.0.21-stable-2+b1
ii  libffi6                   3.2.1-4
ii  libfontconfig1            2.11.0-6.4
ii  libfreetype6              2.6.3-3+b1
ii  libgcc1                   1:5.3.1-13
ii  libgdk-pixbuf2.0-0        2.32.3-2
ii  libglib2.0-0              2.48.0-1
ii  libgtk2.0-0               2.24.30-1.1
ii  libhunspell-1.3-0         1.3.3-4
ii  libnspr4                  2:4.12-2
ii  libnss3                   2:3.23-2
ii  libpango-1.0-0            1.38.1-1
ii  libpangocairo-1.0-0       1.38.1-1
ii  libpangoft2-1.0-0         1.38.1-1
ii  libpixman-1-0             0.33.6-1
ii  libsqlite3-0              3.11.1-1
ii  libstartup-notification0  0.12-4
ii  libstdc++6                5.3.1-13
ii  libvpx3                   1.5.0-2
ii  libx11-6                  2:1.6.3-1
ii  libxcomposite1            1:0.4.4-1
ii  libxdamage1               1:1.1.4-2+b1
ii  libxext6                  2:1.3.3-1
ii  libxfixes3                1:5.0.1-2+b2
ii  libxrender1               1:0.9.9-2
ii  libxt6                    1:1.1.5-1
ii  psmisc                    22.21-2.1+b1
ii  zlib1g                    1:1.2.8.dfsg-2+b1

Versions of packages icedove recommends:
ii  hunspell-en-us [hunspell-dictionary]  20070829-6
ii  iceowl-extension                      38.6.0-1

Versions of packages icedove suggests:
ii  fonts-lyx         2.1.4-2
ii  libgssapi-krb5-2  1.13.2+dfsg-5

-- no debconf information
>From c000692bfc647fad25f7066d442410e9bbe8b049 Mon Sep 17 00:00:00 2001
Message-Id: <c000692bfc647fad25f7066d442410e9bbe8b049.1463760431.git....@sigxcpu.org>
From: =?UTF-8?q?Guido=20G=C3=BCnther?= <[email protected]>
Date: Sun, 15 May 2016 18:09:35 +0200
Subject: [PATCH 1/3] Add minimalistic autopkgtest

that executes "icedove -help" catching apocalyptic regressions.
---
 debian/tests/control | 6 ++++++
 debian/tests/help.sh | 9 +++++++++
 2 files changed, 15 insertions(+)
 create mode 100644 debian/tests/control
 create mode 100755 debian/tests/help.sh

diff --git a/debian/tests/control b/debian/tests/control
new file mode 100644
index 0000000..eebf6e3
--- /dev/null
+++ b/debian/tests/control
@@ -0,0 +1,6 @@
+Tests: help.sh
+Restrictions: allow-stderr
+Depends: icedove,
+ xvfb,
+ xauth
+
diff --git a/debian/tests/help.sh b/debian/tests/help.sh
new file mode 100755
index 0000000..fa59145
--- /dev/null
+++ b/debian/tests/help.sh
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+set -e
+set -x
+
+# At least check we can execute the main binary
+# to catch missing dependenies
+xvfb-run icedove -help
+xvfb-run icedove -version | grep -qs Icedove
-- 
2.8.0.rc3

>From 5bfb45fca4087c257bc2eb993f213040f1fbb011 Mon Sep 17 00:00:00 2001
Message-Id: <5bfb45fca4087c257bc2eb993f213040f1fbb011.1463760431.git....@sigxcpu.org>
In-Reply-To: <c000692bfc647fad25f7066d442410e9bbe8b049.1463760431.git....@sigxcpu.org>
References: <c000692bfc647fad25f7066d442410e9bbe8b049.1463760431.git....@sigxcpu.org>
From: =?UTF-8?q?Guido=20G=C3=BCnther?= <[email protected]>
Date: Mon, 16 May 2016 19:06:39 +0200
Subject: [PATCH 2/3] Add autopkgtest to test header and typelib generation

---
 debian/tests/control     |  3 +++
 debian/tests/idlTest.idl | 10 ++++++++++
 debian/tests/idlTest.sh  | 39 +++++++++++++++++++++++++++++++++++++++
 3 files changed, 52 insertions(+)
 create mode 100644 debian/tests/idlTest.idl
 create mode 100755 debian/tests/idlTest.sh

diff --git a/debian/tests/control b/debian/tests/control
index eebf6e3..f0136fb 100644
--- a/debian/tests/control
+++ b/debian/tests/control
@@ -4,3 +4,6 @@ Depends: icedove,
  xvfb,
  xauth
 
+Tests: idlTest.sh
+Depends: icedove-dev,
+ build-essential
\ No newline at end of file
diff --git a/debian/tests/idlTest.idl b/debian/tests/idlTest.idl
new file mode 100644
index 0000000..cd45c3a
--- /dev/null
+++ b/debian/tests/idlTest.idl
@@ -0,0 +1,10 @@
+// Include a file from icedove so we're sure these ended up in the right
+// location
+#include "nsIMsgIncomingServer.idl"
+
+[scriptable, uuid(1b9d7057-90f5-4ca5-a379-a59aa47acbd2)]
+interface IdlTestIncomingServer : nsIMsgIncomingServer
+{
+  readonly attribute boolean thisIsATest;
+};
+
diff --git a/debian/tests/idlTest.sh b/debian/tests/idlTest.sh
new file mode 100755
index 0000000..c571009
--- /dev/null
+++ b/debian/tests/idlTest.sh
@@ -0,0 +1,39 @@
+#!/bin/sh
+
+set -e
+
+cleanup() {
+  [ ! -d "${SCRATCHDIR}" ] || rm -rf "${SCRATCHDIR}"
+}
+
+#trap cleanup EXIT
+
+SCRATCHDIR=`mktemp -d`
+TEST_IDL_FILE="debian/tests/idlTest.idl"
+TESTFILE=$(basename $0 .sh)
+
+echo "Running tests in ${TESTFILE}"
+
+echo -n "Test1: Make sure we can generate typelibs..."
+/usr/lib/icedove-devel/sdk/bin/typelib.py \
+    -I"/usr/lib/icedove-devel/idl" \
+    -o "${SCRATCHDIR}/test.xpt" \
+    "${TEST_IDL_FILE}"
+echo "done."
+
+echo -n "Test2: Make sure we can generate C++ headers..."
+/usr/lib/icedove-devel/sdk/bin/header.py \
+    -I"/usr/lib/icedove-devel/idl" \
+    -o "${SCRATCHDIR}/test.h" \
+    "${TEST_IDL_FILE}"
+echo "done."
+
+echo -n "Test3: Compiling generated file..."
+g++ -std=c++11 \
+    -I/usr/include/icedove \
+    -I/usr/include/nspr    \
+    -o "${SCRATCHDIR}/test.o" \
+    "${SCRATCHDIR}/test.h"
+echo "done."
+
+echo "All Tests in ${TESFILE} finished succesfully."
-- 
2.8.0.rc3

>From 50c2bd5385b8758e8f171717a44f38b5bae09f63 Mon Sep 17 00:00:00 2001
Message-Id: <50c2bd5385b8758e8f171717a44f38b5bae09f63.1463760431.git....@sigxcpu.org>
In-Reply-To: <c000692bfc647fad25f7066d442410e9bbe8b049.1463760431.git....@sigxcpu.org>
References: <c000692bfc647fad25f7066d442410e9bbe8b049.1463760431.git....@sigxcpu.org>
From: =?UTF-8?q?Guido=20G=C3=BCnther?= <[email protected]>
Date: Mon, 16 May 2016 19:56:07 +0200
Subject: [PATCH 3/3] Add autopkgtest to smoke test xpcshell

---
 debian/tests/control         |  5 ++++-
 debian/tests/xpcshellTest.js |  1 +
 debian/tests/xpcshellTest.sh | 11 +++++++++++
 3 files changed, 16 insertions(+), 1 deletion(-)
 create mode 100644 debian/tests/xpcshellTest.js
 create mode 100755 debian/tests/xpcshellTest.sh

diff --git a/debian/tests/control b/debian/tests/control
index f0136fb..6b4485d 100644
--- a/debian/tests/control
+++ b/debian/tests/control
@@ -4,6 +4,9 @@ Depends: icedove,
  xvfb,
  xauth
 
+Tests: xpcshellTest.sh
+Depends: icedove-dev
+
 Tests: idlTest.sh
 Depends: icedove-dev,
- build-essential
\ No newline at end of file
+ build-essential
diff --git a/debian/tests/xpcshellTest.js b/debian/tests/xpcshellTest.js
new file mode 100644
index 0000000..806b289
--- /dev/null
+++ b/debian/tests/xpcshellTest.js
@@ -0,0 +1 @@
+dump("running xpcshell...");
diff --git a/debian/tests/xpcshellTest.sh b/debian/tests/xpcshellTest.sh
new file mode 100755
index 0000000..843beca
--- /dev/null
+++ b/debian/tests/xpcshellTest.sh
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+set -e
+
+echo -n "Checking if we can run xpcshell..."
+
+LD_LIBRARY_PATH=/usr/lib/icedove/ \
+/usr/lib/icedove-devel/sdk/bin/xpcshell \
+  -g /usr/share/icedove/ debian/tests/xpcshellTest.js
+
+echo "done."
-- 
2.8.0.rc3

Reply via email to