summaryrefslogtreecommitdiffstats
path: root/t/recipes/checks/emacs
diff options
context:
space:
mode:
Diffstat (limited to 't/recipes/checks/emacs')
-rw-r--r--t/recipes/checks/emacs/elpa/elpa/build-spec/debian/control.in19
-rw-r--r--t/recipes/checks/emacs/elpa/elpa/build-spec/debian/elpa-foo.elpa1
-rwxr-xr-xt/recipes/checks/emacs/elpa/elpa/build-spec/debian/rules4
-rw-r--r--t/recipes/checks/emacs/elpa/elpa/build-spec/fill-values4
-rw-r--r--t/recipes/checks/emacs/elpa/elpa/build-spec/orig/foo.el16
-rw-r--r--t/recipes/checks/emacs/elpa/elpa/eval/desc4
-rw-r--r--t/recipes/checks/emacs/elpa/elpa/eval/hints0
-rw-r--r--t/recipes/checks/emacs/elpa/emacsen-common/build-spec/debian/emacsen-compat1
-rwxr-xr-xt/recipes/checks/emacs/elpa/emacsen-common/build-spec/debian/emacsen-install44
-rwxr-xr-xt/recipes/checks/emacs/elpa/emacsen-common/build-spec/debian/emacsen-remove15
-rw-r--r--t/recipes/checks/emacs/elpa/emacsen-common/build-spec/debian/emacsen-startup24
-rw-r--r--t/recipes/checks/emacs/elpa/emacsen-common/build-spec/debian/install1
-rw-r--r--t/recipes/checks/emacs/elpa/emacsen-common/build-spec/fill-values3
-rw-r--r--t/recipes/checks/emacs/elpa/emacsen-common/build-spec/orig/foo.el1
-rw-r--r--t/recipes/checks/emacs/elpa/emacsen-common/eval/desc2
-rw-r--r--t/recipes/checks/emacs/elpa/emacsen-common/eval/hints1
-rw-r--r--t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/binary.docs3
-rw-r--r--t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/binary.init21
-rw-r--r--t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/binary.install9
-rw-r--r--t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/binary.manpages1
-rw-r--r--t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/clean1
-rw-r--r--t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/control.in30
-rw-r--r--t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/game.install1
-rw-r--r--t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/game.manpages1
-rw-r--r--t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/rules31
-rw-r--r--t/recipes/checks/emacs/files-bad-perm-owner/build-spec/fill-values3
-rw-r--r--t/recipes/checks/emacs/files-bad-perm-owner/build-spec/orig/README1
-rw-r--r--t/recipes/checks/emacs/files-bad-perm-owner/build-spec/orig/read-only1
-rw-r--r--t/recipes/checks/emacs/files-bad-perm-owner/build-spec/orig/sample.ali1
-rwxr-xr-xt/recipes/checks/emacs/files-bad-perm-owner/build-spec/orig/script20
-rw-r--r--t/recipes/checks/emacs/files-bad-perm-owner/build-spec/orig/some-file2
-rw-r--r--t/recipes/checks/emacs/files-bad-perm-owner/eval/desc2
-rw-r--r--t/recipes/checks/emacs/files-bad-perm-owner/eval/hints1
33 files changed, 269 insertions, 0 deletions
diff --git a/t/recipes/checks/emacs/elpa/elpa/build-spec/debian/control.in b/t/recipes/checks/emacs/elpa/elpa/build-spec/debian/control.in
new file mode 100644
index 0000000..0fb6a67
--- /dev/null
+++ b/t/recipes/checks/emacs/elpa/elpa/build-spec/debian/control.in
@@ -0,0 +1,19 @@
+Source: [% $source %]
+Priority: optional
+Section: [% $section %]
+Maintainer: [% $author %]
+Standards-Version: [% $standards_version %]
+Build-Depends: [% $build_depends %], dh-elpa
+Homepage: https://lintian.debian.org/
+# dh-elpa in stretch chokes on unknown fields T_T
+#Rules-Requires-Root: no
+
+Package: elpa-foo
+Section: lisp
+Architecture: [% $package_architecture %]
+Depends: ${shlibs:Depends}, ${misc:Depends}, ${elpa:Depends}
+Description: [% $description %]
+ This is a test package designed to exercise some feature or tag of
+ Lintian. It is part of the Lintian test suite and may do very odd
+ things. It should not be installed like a regular package. It may
+ be an empty package.
diff --git a/t/recipes/checks/emacs/elpa/elpa/build-spec/debian/elpa-foo.elpa b/t/recipes/checks/emacs/elpa/elpa/build-spec/debian/elpa-foo.elpa
new file mode 100644
index 0000000..63163f5
--- /dev/null
+++ b/t/recipes/checks/emacs/elpa/elpa/build-spec/debian/elpa-foo.elpa
@@ -0,0 +1 @@
+foo.el
diff --git a/t/recipes/checks/emacs/elpa/elpa/build-spec/debian/rules b/t/recipes/checks/emacs/elpa/elpa/build-spec/debian/rules
new file mode 100755
index 0000000..e8e22ba
--- /dev/null
+++ b/t/recipes/checks/emacs/elpa/elpa/build-spec/debian/rules
@@ -0,0 +1,4 @@
+#!/usr/bin/make -f
+
+%:
+ dh $@ --with elpa
diff --git a/t/recipes/checks/emacs/elpa/elpa/build-spec/fill-values b/t/recipes/checks/emacs/elpa/elpa/build-spec/fill-values
new file mode 100644
index 0000000..e80a217
--- /dev/null
+++ b/t/recipes/checks/emacs/elpa/elpa/build-spec/fill-values
@@ -0,0 +1,4 @@
+Testname: elpa
+Skeleton: upload-non-native
+Description: Tests for emacsen-common packages using dh-elpa
+Extra-Build-Depends: dh-elpa
diff --git a/t/recipes/checks/emacs/elpa/elpa/build-spec/orig/foo.el b/t/recipes/checks/emacs/elpa/elpa/build-spec/orig/foo.el
new file mode 100644
index 0000000..6234f9d
--- /dev/null
+++ b/t/recipes/checks/emacs/elpa/elpa/build-spec/orig/foo.el
@@ -0,0 +1,16 @@
+;;; foo.el --- foo
+
+;; Copyright (C) 2017 Sean Whitton
+
+;; Author: Sean Whitton <spwhitton@spwhitton.name>
+;; Version: 1.0
+;; Keywords: strings
+
+;;; Commentary:
+
+;;; Code:
+
+(message "Hello, world")
+
+(provide 'foo)
+;;; foo.el ends here
diff --git a/t/recipes/checks/emacs/elpa/elpa/eval/desc b/t/recipes/checks/emacs/elpa/elpa/eval/desc
new file mode 100644
index 0000000..bbc2b36
--- /dev/null
+++ b/t/recipes/checks/emacs/elpa/elpa/eval/desc
@@ -0,0 +1,4 @@
+Testname: elpa
+Check: emacs/elpa
+Test-Against:
+ emacsen-common-without-dh-elpa
diff --git a/t/recipes/checks/emacs/elpa/elpa/eval/hints b/t/recipes/checks/emacs/elpa/elpa/eval/hints
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/t/recipes/checks/emacs/elpa/elpa/eval/hints
diff --git a/t/recipes/checks/emacs/elpa/emacsen-common/build-spec/debian/emacsen-compat b/t/recipes/checks/emacs/elpa/emacsen-common/build-spec/debian/emacsen-compat
new file mode 100644
index 0000000..573541a
--- /dev/null
+++ b/t/recipes/checks/emacs/elpa/emacsen-common/build-spec/debian/emacsen-compat
@@ -0,0 +1 @@
+0
diff --git a/t/recipes/checks/emacs/elpa/emacsen-common/build-spec/debian/emacsen-install b/t/recipes/checks/emacs/elpa/emacsen-common/build-spec/debian/emacsen-install
new file mode 100755
index 0000000..32dd6a5
--- /dev/null
+++ b/t/recipes/checks/emacs/elpa/emacsen-common/build-spec/debian/emacsen-install
@@ -0,0 +1,44 @@
+#! /bin/sh -e
+# /usr/lib/emacsen-common/packages/install/muse
+
+# Written by Jim Van Zandt <jrv@vanzandt.mv.com>, borrowing heavily
+# from the install scripts for gettext by Santiago Vila
+# <sanvila@ctv.es> and octave by Dirk Eddelbuettel <edd@debian.org>.
+
+FLAVOR=$1
+PACKAGE=foo-el
+
+if [ ${FLAVOR} = emacs ]; then exit 0; fi
+
+echo install/${PACKAGE}: Handling install for emacsen flavor ${FLAVOR}
+
+FLAVORTEST=`echo $FLAVOR | cut -c-6`
+if [ ${FLAVORTEST} = xemacs ] ; then
+ SITEFLAG="-no-site-file"
+else
+ SITEFLAG="--no-site-file"
+fi
+FLAGS="${SITEFLAG} -q -batch -l path.el -f batch-byte-compile"
+ELPREFIX=/usr/share/emacs/site-lisp/${PACKAGE}
+
+for i in ${PACKAGE} ${PACKAGE}/contrib; do
+
+ ELDIR=/usr/share/emacs/site-lisp/$i
+ ELCDIR=/usr/share/${FLAVOR}/site-lisp/$i
+
+ install -m 755 -d ${ELCDIR}
+ cd ${ELDIR}
+ FILES=`ls -1 *.el | grep -v autoloads`
+ rm -f ${ELCDIR}/*.el
+ cd ${ELCDIR}
+ ln -sf ${ELDIR}/*.el .
+
+ cat << EOF > path.el
+(setq load-path (cons "${ELPREFIX}" (cons "${ELPREFIX}/contrib" load-path))
+ byte-compile-warnings nil)
+EOF
+ ${FLAVOR} ${FLAGS} ${FILES} 2>&1 | gzip -9qf > CompilationLog.gz
+ rm -f path.el
+done
+
+exit 0
diff --git a/t/recipes/checks/emacs/elpa/emacsen-common/build-spec/debian/emacsen-remove b/t/recipes/checks/emacs/elpa/emacsen-common/build-spec/debian/emacsen-remove
new file mode 100755
index 0000000..9bc1fb3
--- /dev/null
+++ b/t/recipes/checks/emacs/elpa/emacsen-common/build-spec/debian/emacsen-remove
@@ -0,0 +1,15 @@
+#!/bin/sh -e
+# /usr/lib/emacsen-common/packages/remove/muse
+
+FLAVOR=$1
+PACKAGE=foo-el
+
+if [ ${FLAVOR} != emacs ]; then
+ # if test -x /usr/sbin/install-info-altdir; then
+ # echo remove/${PACKAGE}: removing Info links for ${FLAVOR}
+ # install-info-altdir --quiet --remove --dirname=${FLAVOR} /usr/info/emacs-wiki.info.gz
+ # fi
+
+ echo remove/${PACKAGE}: purging byte-compiled files for ${FLAVOR}
+ rm -rf /usr/share/${FLAVOR}/site-lisp/${PACKAGE}
+fi
diff --git a/t/recipes/checks/emacs/elpa/emacsen-common/build-spec/debian/emacsen-startup b/t/recipes/checks/emacs/elpa/emacsen-common/build-spec/debian/emacsen-startup
new file mode 100644
index 0000000..3a059c3
--- /dev/null
+++ b/t/recipes/checks/emacs/elpa/emacsen-common/build-spec/debian/emacsen-startup
@@ -0,0 +1,24 @@
+;; -*-emacs-lisp-*-
+;;
+;; Emacs startup file for the Debian GNU/Linux muse package
+;;
+;; Originally contributed by Nils Naumann <naumann@unileoben.ac.at>
+;; Modified by Dirk Eddelbuettel <edd@debian.org>
+;; Adapted for dh-make by Jim Van Zandt <jrv@vanzandt.mv.com>
+;; Adapted for Muse by Michael Olson <mwolson@gnu.org>
+
+;; The muse package follows the Debian/GNU Linux 'emacsen' policy and
+;; byte-compiles its elisp files for each 'emacs flavor' (emacs19,
+;; xemacs19, emacs20, xemacs20...). The compiled code is then
+;; installed in a subdirectory of the respective site-lisp directory.
+;; We have to add this to the load-path:
+
+(if (not (file-exists-p "/usr/share/emacs/site-lisp/foo-el"))
+ (message "Package foo-el removed but not purged. Skipping setup.")
+ (let ((prefix (concat "/usr/share/"
+ (symbol-name flavor)
+ "/site-lisp/foo-el")))
+ (debian-pkg-add-load-path-item prefix)
+ (debian-pkg-add-load-path-item (concat prefix "/contrib")))
+
+ (load "foo-autoloads.el"))
diff --git a/t/recipes/checks/emacs/elpa/emacsen-common/build-spec/debian/install b/t/recipes/checks/emacs/elpa/emacsen-common/build-spec/debian/install
new file mode 100644
index 0000000..a2af265
--- /dev/null
+++ b/t/recipes/checks/emacs/elpa/emacsen-common/build-spec/debian/install
@@ -0,0 +1 @@
+foo.el /usr/share/emacs/site-lisp/foo-el
diff --git a/t/recipes/checks/emacs/elpa/emacsen-common/build-spec/fill-values b/t/recipes/checks/emacs/elpa/emacsen-common/build-spec/fill-values
new file mode 100644
index 0000000..f0df98f
--- /dev/null
+++ b/t/recipes/checks/emacs/elpa/emacsen-common/build-spec/fill-values
@@ -0,0 +1,3 @@
+Testname: emacsen-common
+Skeleton: upload-non-native
+Description: Tests for emacsen-common packages not using dh-elpa
diff --git a/t/recipes/checks/emacs/elpa/emacsen-common/build-spec/orig/foo.el b/t/recipes/checks/emacs/elpa/emacsen-common/build-spec/orig/foo.el
new file mode 100644
index 0000000..414739b
--- /dev/null
+++ b/t/recipes/checks/emacs/elpa/emacsen-common/build-spec/orig/foo.el
@@ -0,0 +1 @@
+(message "Hello, world")
diff --git a/t/recipes/checks/emacs/elpa/emacsen-common/eval/desc b/t/recipes/checks/emacs/elpa/emacsen-common/eval/desc
new file mode 100644
index 0000000..093a753
--- /dev/null
+++ b/t/recipes/checks/emacs/elpa/emacsen-common/eval/desc
@@ -0,0 +1,2 @@
+Testname: emacsen-common
+Check: emacs/elpa
diff --git a/t/recipes/checks/emacs/elpa/emacsen-common/eval/hints b/t/recipes/checks/emacs/elpa/emacsen-common/eval/hints
new file mode 100644
index 0000000..8cf5a53
--- /dev/null
+++ b/t/recipes/checks/emacs/elpa/emacsen-common/eval/hints
@@ -0,0 +1 @@
+emacsen-common (binary): emacsen-common-without-dh-elpa
diff --git a/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/binary.docs b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/binary.docs
new file mode 100644
index 0000000..42f92ea
--- /dev/null
+++ b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/binary.docs
@@ -0,0 +1,3 @@
+read-only
+README
+some-file
diff --git a/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/binary.init b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/binary.init
new file mode 100644
index 0000000..4ebbdf5
--- /dev/null
+++ b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/binary.init
@@ -0,0 +1,21 @@
+#!/bin/sh
+
+set -e
+
+### BEGIN INIT INFO
+# Provides: binary
+# Required-Start:
+# Required-Stop:
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Short-Description: Useless
+# Description: Does nothing
+### END INIT INFO
+
+. /lib/lsb/init-functions
+
+case "$1" in
+ start|stop|force-reload|restart|status|*)
+ echo hello world
+ ;;
+esac
diff --git a/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/binary.install b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/binary.install
new file mode 100644
index 0000000..c759290
--- /dev/null
+++ b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/binary.install
@@ -0,0 +1,9 @@
+sample.ali usr/lib/some-where/
+script-uid usr/bin/
+script-ugid usr/bin/
+script-gid usr/bin/
+script-wexec usr/bin/
+script-wuid usr/bin/
+script-ro usr/bin/
+script etc/cron.d/
+script etc/emacs.d/
diff --git a/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/binary.manpages b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/binary.manpages
new file mode 100644
index 0000000..ad3e735
--- /dev/null
+++ b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/binary.manpages
@@ -0,0 +1 @@
+script-*.1
diff --git a/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/clean b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/clean
new file mode 100644
index 0000000..1e7cec6
--- /dev/null
+++ b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/clean
@@ -0,0 +1 @@
+script*.1
diff --git a/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/control.in b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/control.in
new file mode 100644
index 0000000..5c8703f
--- /dev/null
+++ b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/control.in
@@ -0,0 +1,30 @@
+Source: [% $source %]
+Priority: optional
+Section: devel
+Maintainer: [% $author %]
+Standards-Version: [% $standards_version %]
+Build-Depends: [% $build_depends %]
+Rules-Requires-Root: binary-targets
+
+Package: binary
+Architecture: all
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends}, lsb-base (>= 3.0-6)
+Description: [% $description %]
+ This is a test package designed to exercise some feature or tag of
+ Lintian. It is part of the Lintian test suite and may do very odd
+ things. It should not be installed like a regular package. It may
+ be an empty package.
+
+Package: game
+Architecture: all
+Section: games
+Depends: ${misc:Depends}
+Description: [% $description %] - game
+ This is a test package designed to exercise some feature or tag of
+ Lintian. It is part of the Lintian test suite and may do very odd
+ things. It should not be installed like a regular package. It may
+ be an empty package.
+ .
+ Game package.
+
diff --git a/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/game.install b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/game.install
new file mode 100644
index 0000000..f708f99
--- /dev/null
+++ b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/game.install
@@ -0,0 +1 @@
+script usr/games/
diff --git a/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/game.manpages b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/game.manpages
new file mode 100644
index 0000000..8d16fb4
--- /dev/null
+++ b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/game.manpages
@@ -0,0 +1 @@
+script.1
diff --git a/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/rules b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/rules
new file mode 100644
index 0000000..951f84c
--- /dev/null
+++ b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/debian/rules
@@ -0,0 +1,31 @@
+#!/usr/bin/make -f
+
+GPKG:=game
+PKG:=binary
+
+%:
+ dh $@
+
+override_dh_auto_build:
+ for N in uid gid ugid wexec wuid ro; do \
+ sed s/script/script-$$N/ < script > script-$$N ; \
+ pod2man --section 1 script-$$N > script-$$N.1 ; \
+ done
+ pod2man --section 1 script > script.1
+
+override_dh_fixperms:
+ dh_fixperms
+
+ chmod 0444 debian/$(PKG)/usr/share/doc/$(PKG)/read-only
+ chmod 4755 debian/$(PKG)/usr/bin/script-uid
+ chmod 2755 debian/$(PKG)/usr/bin/script-gid
+ chmod 6755 debian/$(PKG)/usr/bin/script-ugid
+ chmod 0775 debian/$(PKG)/usr/bin/script-wexec
+ chmod 4744 debian/$(PKG)/usr/bin/script-wuid
+ chmod 0751 debian/$(PKG)/usr/bin/script-ro
+ chmod 0644 debian/$(PKG)/usr/lib/some-where/sample.ali
+ chmod 0744 debian/$(PKG)/usr/share/doc/$(PKG)
+ chmod 0755 debian/$(PKG)/usr/share/doc/$(PKG)/some-file
+ chmod 0755 debian/$(PKG)/etc/cron.d/script
+ chmod 0755 debian/$(PKG)/etc/emacs.d/script
+ chmod 0765 debian/$(PKG)/etc/init.d/binary
diff --git a/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/fill-values b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/fill-values
new file mode 100644
index 0000000..c914891
--- /dev/null
+++ b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/fill-values
@@ -0,0 +1,3 @@
+Skeleton: upload-native
+Testname: files-bad-perm-owner
+Description: General permissions and owner tests
diff --git a/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/orig/README b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/orig/README
new file mode 100644
index 0000000..336f590
--- /dev/null
+++ b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/orig/README
@@ -0,0 +1 @@
+Hallo World
diff --git a/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/orig/read-only b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/orig/read-only
new file mode 100644
index 0000000..1a3fca1
--- /dev/null
+++ b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/orig/read-only
@@ -0,0 +1 @@
+Fadango on the core
diff --git a/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/orig/sample.ali b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/orig/sample.ali
new file mode 100644
index 0000000..fec3fc8
--- /dev/null
+++ b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/orig/sample.ali
@@ -0,0 +1 @@
+This is not a valid ali file
diff --git a/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/orig/script b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/orig/script
new file mode 100755
index 0000000..8521013
--- /dev/null
+++ b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/orig/script
@@ -0,0 +1,20 @@
+#!/bin/sh
+
+set -e
+
+echo "Aloha"
+
+exit 0
+
+=head1 NAME
+
+script -- prints Aloha to stdout
+
+=head1 SYNOPSIS
+
+ script
+
+=head1 DESCRIPTION
+
+Prints Aloha to stdout and that is it.
+
diff --git a/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/orig/some-file b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/orig/some-file
new file mode 100644
index 0000000..0dfa8ff
--- /dev/null
+++ b/t/recipes/checks/emacs/files-bad-perm-owner/build-spec/orig/some-file
@@ -0,0 +1,2 @@
+This is executable and should not be. :)
+ - Unfortunately it triggers an extra tag... oh well.
diff --git a/t/recipes/checks/emacs/files-bad-perm-owner/eval/desc b/t/recipes/checks/emacs/files-bad-perm-owner/eval/desc
new file mode 100644
index 0000000..d6f6fcc
--- /dev/null
+++ b/t/recipes/checks/emacs/files-bad-perm-owner/eval/desc
@@ -0,0 +1,2 @@
+Testname: files-bad-perm-owner
+Check: emacs
diff --git a/t/recipes/checks/emacs/files-bad-perm-owner/eval/hints b/t/recipes/checks/emacs/files-bad-perm-owner/eval/hints
new file mode 100644
index 0000000..e9bbc5f
--- /dev/null
+++ b/t/recipes/checks/emacs/files-bad-perm-owner/eval/hints
@@ -0,0 +1 @@
+binary (binary): bad-permissions-for-etc-emacs-script 0755 != 0644 [etc/emacs.d/script]