diff options
author | Jauhien Piatlicki (jauhien) <piatlicki@gmail.com> | 2013-07-09 01:50:07 +0200 |
---|---|---|
committer | Jauhien Piatlicki (jauhien) <piatlicki@gmail.com> | 2013-07-09 01:50:07 +0200 |
commit | e652256da64a26f3a2417b2ba95b813e8fd610f8 (patch) | |
tree | 07f4c895f5bf2d3dad68d9640812f0aadb0a039a /tests | |
parent | ebuild generation for ELPA backend added, different fixes in ebuild generator (diff) | |
download | g-sorcery-e652256da64a26f3a2417b2ba95b813e8fd610f8.tar.gz g-sorcery-e652256da64a26f3a2417b2ba95b813e8fd610f8.tar.bz2 g-sorcery-e652256da64a26f3a2417b2ba95b813e8fd610f8.zip |
g_elpa: all stuff necessary for ebuild generation
Diffstat (limited to 'tests')
-rw-r--r-- | tests/test_elpa_ebuild.py | 41 | ||||
-rw-r--r-- | tests/test_elpa_metadata.py | 47 |
2 files changed, 83 insertions, 5 deletions
diff --git a/tests/test_elpa_ebuild.py b/tests/test_elpa_ebuild.py index 2c7cdf5..1895340 100644 --- a/tests/test_elpa_ebuild.py +++ b/tests/test_elpa_ebuild.py @@ -23,7 +23,7 @@ from tests.test_elpa_db import fill_database, packages class TestElpaEbuildGenerator(BaseTest): - def test_generate(self): + def test_generate_without_digest(self): edb = elpa_db.ElpaDB(os.path.join(self.tempdir.name, 'db'), repo_uri = 'http://127.0.0.1:8080') fill_database(edb, packages, self.tempdir.name) @@ -32,27 +32,58 @@ class TestElpaEbuildGenerator(BaseTest): self.assertEqual(src, ['# automatically generated by g-elpa', '# please do not edit this file', '', - 'EAPI=5', '', 'inherit g-elpa', '', + 'EAPI=5', '', 'REPO_URI="http://127.0.0.1:8080"', + 'PKG_TYPE="tar"', 'REALNAME="ack"', '', 'inherit g-elpa', '', 'DESCRIPTION="Interface to ack-like source code search tools"', 'HOMEPAGE="http://127.0.0.1:8080"', 'SRC_URI=""', 'LICENSE="GPL-2"', '', 'SLOT="0"', 'KEYWORDS="~amd64 ~x86"', - 'IUSE=""', '', 'REPO_URI="http://127.0.0.1:8080"', - 'PKG_TYPE="tar"', 'REALNAME="ack"', '', 'DEPEND=""', 'RDEPEND=""']) + 'IUSE=""', '', 'DEPEND=""', 'RDEPEND=""']) src = ebuild_generator.generate(package_db.Package('app-emacs', 'dict-tree', '0.12.8')) self.assertEqual(src, ['# automatically generated by g-elpa', '# please do not edit this file', '', 'EAPI=5', '', + 'REPO_URI="http://127.0.0.1:8080"', 'PKG_TYPE="tar"', + 'REALNAME="dict-tree"', '', 'inherit g-elpa', '', 'DESCRIPTION="Dictionary data structure"', 'HOMEPAGE="http://127.0.0.1:8080"', 'SRC_URI=""', 'LICENSE="GPL-2"', '', 'SLOT="0"', 'KEYWORDS="~amd64 ~x86"', 'IUSE=""', '', + 'DEPEND="app-emacs/trie-0.2.5\napp-emacs/tNFA-0.1.1\napp-emacs/heap-0.3"', + 'RDEPEND="app-emacs/trie-0.2.5\napp-emacs/tNFA-0.1.1\napp-emacs/heap-0.3"']) + + def test_generate_with_digest(self): + edb = elpa_db.ElpaDB(os.path.join(self.tempdir.name, 'db'), + repo_uri = 'http://127.0.0.1:8080') + fill_database(edb, packages, self.tempdir.name) + ebuild_generator = ebuild.ElpaEbuildWithDigestGenerator(edb) + src = ebuild_generator.generate(package_db.Package('app-emacs', 'ack', '1.2')) + self.assertEqual(src, + ['# automatically generated by g-elpa', + '# please do not edit this file', '', + 'EAPI=5', '', 'REPO_URI="http://127.0.0.1:8080"', + 'PKG_TYPE="tar"', 'REALNAME="ack"', '', 'inherit g-elpa', '', + 'DESCRIPTION="Interface to ack-like source code search tools"', + 'HOMEPAGE="http://127.0.0.1:8080"', + 'SRC_URI="${REPO_URI}${REALNAME}-${PV}.${SUFFIX}"', + 'LICENSE="GPL-2"', '', 'SLOT="0"', 'KEYWORDS="~amd64 ~x86"', + 'IUSE=""', '', 'DEPEND=""', 'RDEPEND=""']) + src = ebuild_generator.generate(package_db.Package('app-emacs', 'dict-tree', '0.12.8')) + self.assertEqual(src, + ['# automatically generated by g-elpa', + '# please do not edit this file', '', 'EAPI=5', '', 'REPO_URI="http://127.0.0.1:8080"', 'PKG_TYPE="tar"', 'REALNAME="dict-tree"', '', + 'inherit g-elpa', '', 'DESCRIPTION="Dictionary data structure"', + 'HOMEPAGE="http://127.0.0.1:8080"', + 'SRC_URI="${REPO_URI}${REALNAME}-${PV}.${SUFFIX}"', + 'LICENSE="GPL-2"', '', 'SLOT="0"', + 'KEYWORDS="~amd64 ~x86"', 'IUSE=""', '', 'DEPEND="app-emacs/trie-0.2.5\napp-emacs/tNFA-0.1.1\napp-emacs/heap-0.3"', 'RDEPEND="app-emacs/trie-0.2.5\napp-emacs/tNFA-0.1.1\napp-emacs/heap-0.3"']) def suite(): suite = unittest.TestSuite() - suite.addTest(TestElpaEbuildGenerator('test_generate')) + suite.addTest(TestElpaEbuildGenerator('test_generate_without_digest')) + suite.addTest(TestElpaEbuildGenerator('test_generate_with_digest')) return suite diff --git a/tests/test_elpa_metadata.py b/tests/test_elpa_metadata.py new file mode 100644 index 0000000..8144999 --- /dev/null +++ b/tests/test_elpa_metadata.py @@ -0,0 +1,47 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" + test_elpa_metadata.py + ~~~~~~~~~~~~~~~~~~~~~ + + ELPA metadata generator test suite + + :copyright: (c) 2013 by Jauhien Piatlicki + :license: GPL-2, see LICENSE for more details. +""" + +import os, unittest + +from g_sorcery import package_db, metadata + +from g_elpa import elpa_db + +from tests.base import BaseTest + +from tests.test_elpa_db import fill_database, packages + +class TestElpaEbuildGenerator(BaseTest): + + def test_generate(self): + edb = elpa_db.ElpaDB(os.path.join(self.tempdir.name, 'db'), + repo_uri = 'http://127.0.0.1:8080') + fill_database(edb, packages, self.tempdir.name) + metadata_generator = metadata.MetadataGenerator(edb) + mdxml = metadata_generator.generate(package_db.Package('app-emacs', 'ack', '1.2')) + self.assertEqual(mdxml, + ['<?xml version="1.0" encoding="utf-8"?>', + '<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">', + '<pkgmetadata>', + '\t<maintainer>', + '\t\t<email>piatlicki@gmail.com</email>', + '\t\t<name>Jauhien Piatlicki</name>', + '\t</maintainer>', + '\t<longdescription>Interface to ack-like source code search tools</longdescription>', + '</pkgmetadata>']) + + +def suite(): + suite = unittest.TestSuite() + suite.addTest(TestElpaEbuildGenerator('test_generate')) + return suite |