def test_package_name_from_desc(self): from oxt_tool.package import package_name_from_desc desc = Description(identifier='pyhwp.example', version='') self.assertEquals('pyhwp.example.oxt', package_name_from_desc(desc)) desc.version = '0.1' self.assertEquals('pyhwp.example-0.1.oxt', package_name_from_desc(desc))
def test_build_typical(self): from oxt_tool.package import build from oxt_tool.storage import makedirs_to_file manifest = Manifest() description = Description() import os.path import shutil src_folder_path = self.id() if os.path.exists(src_folder_path): shutil.rmtree(src_folder_path) src_folder = FileSystemStorage(src_folder_path, 'w') license_path = 'COPYING' license_node = makedirs_to_file(src_folder, license_path) with license_node.open('w') as f: f.write('GNU AGPL') description.license['en'] = license_path oxt_path = self.id() + '.oxt' files = {license_path: license_node} build(oxt_path, manifest, description, files=files) with open_storage(oxt_path) as pkg: with resolve_path(pkg, 'COPYING').open() as f: self.assertEquals('GNU AGPL', f.read())
def test_build_typical(self): from oxt_tool.package import build from oxt_tool.storage import makedirs_to_file manifest = Manifest() description = Description() import os.path import shutil src_folder_path = self.id() if os.path.exists(src_folder_path): shutil.rmtree(src_folder_path) src_folder = FileSystemStorage(src_folder_path, 'w') license_path = 'COPYING' license_node = makedirs_to_file(src_folder, license_path) with license_node.open('w') as f: f.write('GNU AGPL') description.license['en'] = license_path oxt_path = self.id() + '.oxt' files = {license_path: license_node} build(oxt_path, manifest, description, files=files) with open_storage(oxt_path) as pkg: with resolve_path(pkg, 'COPYING').open() as f: self.assertEqual('GNU AGPL', f.read())
def test_build_minimal(self): from oxt_tool.package import build manifest = Manifest() description = Description() oxt_path = self.id() + '.oxt' build(oxt_path, manifest, description) with open_storage(oxt_path) as pkg: self.assertTrue(is_package(pkg))
def test_build_missing(self): from oxt_tool.package import build oxt_path = self.id() + '.oxt' manifest = Manifest() description = Description(license=dict(en='COPYING')) files = dict() try: build(oxt_path, manifest, description, files=files) assert False, 'exception expected' except Exception: pass
def test_make_output_path(self): from oxt_tool.package import make_output_path self.assertEqual('abc.oxt', make_output_path('abc.oxt')) self.assertEqual('./abc.oxt', make_output_path('./abc.oxt')) self.assertEqual('abc/def.oxt', make_output_path('abc/def.oxt')) desc = Description(identifier='example', version='0.1') self.assertEqual('example-0.1.oxt', make_output_path('', desc)) self.assertEqual('./example-0.1.oxt', make_output_path('.', desc)) self.assertEqual('abc/example-0.1.oxt', make_output_path('abc/', desc)) dirpath = self.id() import shutil import os.path if os.path.exists(dirpath): shutil.rmtree(dirpath) os.mkdir(dirpath) self.assertEqual(os.path.join(dirpath, 'example-0.1.oxt'), make_output_path(dirpath, desc))
def test_package_name_from_desc(self): from oxt_tool.package import package_name_from_desc desc = Description(identifier='pyhwp.example', version='') self.assertEqual('pyhwp.example.oxt', package_name_from_desc(desc)) desc.version = '0.1' self.assertEqual('pyhwp.example-0.1.oxt', package_name_from_desc(desc))