From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id C15DB1381F3 for ; Tue, 2 Jul 2013 08:39:46 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 63F70E0B05; Tue, 2 Jul 2013 08:39:34 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id D4D9DE0B05 for ; Tue, 2 Jul 2013 08:39:28 +0000 (UTC) Received: from hornbill.gentoo.org (hornbill.gentoo.org [94.100.119.163]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id CC87733E78A for ; Tue, 2 Jul 2013 08:39:27 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by hornbill.gentoo.org (Postfix) with ESMTP id 62EDAE5462 for ; Tue, 2 Jul 2013 08:39:26 +0000 (UTC) From: "Jauhien Piatlicki" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Jauhien Piatlicki" Message-ID: <1372754434.d4797acf20d73a5564e9eae78c9804e89f49ca2b.jauhien@gentoo> Subject: [gentoo-commits] proj/g-sorcery:master commit in: g_elpa/, tests/ X-VCS-Repository: proj/g-sorcery X-VCS-Files: g_elpa/elpa_db.py tests/test_elpa_db.py X-VCS-Directories: g_elpa/ tests/ X-VCS-Committer: jauhien X-VCS-Committer-Name: Jauhien Piatlicki X-VCS-Revision: d4797acf20d73a5564e9eae78c9804e89f49ca2b X-VCS-Branch: master Date: Tue, 2 Jul 2013 08:39:26 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: 581bf43a-beaf-4d30-8ab0-095c609874a2 X-Archives-Hash: 1b3d519808150274092cda0d3d724580 commit: d4797acf20d73a5564e9eae78c9804e89f49ca2b Author: Jauhien Piatlicki (jauhien) gmail com> AuthorDate: Tue Jul 2 08:40:34 2013 +0000 Commit: Jauhien Piatlicki gmail com> CommitDate: Tue Jul 2 08:40:34 2013 +0000 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/g-sorcery.git;a=commit;h=d4797acf g_elpa/elpa_db: initial commit --- g_elpa/elpa_db.py | 35 +++++++++++++++++++++++++++++++++++ tests/test_elpa_db.py | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 67 insertions(+) diff --git a/g_elpa/elpa_db.py b/g_elpa/elpa_db.py new file mode 100644 index 0000000..e25ac60 --- /dev/null +++ b/g_elpa/elpa_db.py @@ -0,0 +1,35 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" + elpa_db.py + ~~~~~~~~~~ + + ELPA package database + + :copyright: (c) 2013 by Jauhien Piatlicki + :license: GPL-2, see LICENSE for more details. +""" + +import os, tempfile, urllib.parse + +from g_sorcery.package_db import PackageDB +from g_sorcery.fileutils import wget + +class ElpaDB(PackageDB): + def __init__(self, directory, repo_uri="", db_uri=""): + super().__init__(directory, repo_uri, db_uri) + + def generate_tree(self): + tempdir = tempfile.TemporaryDirectory() + + ac_uri = urllib.parse.urljoin(self.repo_uri, 'archive-contents') + wget(ac_uri, tempdir.name) + + os.system('ls -l ' + tempdir.name) + os.system('less ' + tempdir.name + '/archive-contents') + + del tempdir + + def get_parser(self): + pass diff --git a/tests/test_elpa_db.py b/tests/test_elpa_db.py new file mode 100644 index 0000000..dfbe34a --- /dev/null +++ b/tests/test_elpa_db.py @@ -0,0 +1,32 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" + test_elpa_db.py + ~~~~~~~~~~~~~~~ + + ELPA package database test suite + + :copyright: (c) 2013 by Jauhien Piatlicki + :license: GPL-2, see LICENSE for more details. +""" + +import http.server, tempfile, threading, unittest + +from g_elpa import elpa_db + +class TestElpaDB(unittest.TestCase): + def setUp(self): + self.tempdir = tempfile.TemporaryDirectory() + + def tearDown(self): + del self.tempdir + + def test_generate(self): + edb = elpa_db.ElpaDB(self.tempdir.name, repo_uri = 'http://elpa.gnu.org/packages/') + edb.generate_tree() + +def suite(): + suite = unittest.TestSuite() + suite.addTest(TestElpaDB('test_generate')) + return suite