本文整理汇总了Python中bento.core.package.PackageDescription类的典型用法代码示例。如果您正苦于以下问题:Python PackageDescription类的具体用法?Python PackageDescription怎么用?Python PackageDescription使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了PackageDescription类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: _static_representation
def _static_representation(self, bento_info):
r_pkg = PackageDescription.from_string(bento_info)
# We recompute pkg to avoid dealing with stylistic difference between
# original and static_representation
pkg = PackageDescription.from_string(static_representation(r_pkg))
self.assertEqual(static_representation(pkg), static_representation(r_pkg))
示例2: test_error_string
def test_error_string(self):
f = self.f
f.write("NName: foo")
f.flush()
try:
PackageDescription.from_file(f.name)
raise AssertionError("Should raise here !")
except ParseError:
e = extract_exception()
self.assertEqual(str(e), """\
File "%s", line 1
NName: foo
^
Syntax error""" % f.name)
示例3: test_simple_package
def test_simple_package(self):
bento_info = """\
Name: foo
Version: 1.0
ExtraSourceFiles: yeah.info
Library:
Packages: foo, foo.bar
Modules: fubar
"""
archive_list = [op.join("foo-1.0", f) for f in ["yeah.info",
op.join("foo", "__init__.py"),
op.join("foo", "bar", "__init__.py"),
"fubar.py"]]
create_fake_package_from_bento_info(self.top_node, bento_info)
package = PackageDescription.from_string(bento_info)
sdist = SdistCommand()
opts = OptionsContext.from_command(sdist)
cmd_argv = ["--output-file=foo.zip", "--format=zip"]
context = SdistContext(None, cmd_argv, opts, package, self.run_node)
sdist.run(context)
sdist.shutdown(context)
context.shutdown()
archive = self.run_node.find_node(op.join("dist", "foo.zip"))
z = zipfile.ZipFile(archive.abspath(), "r")
for f in archive_list:
if not f in z.namelist():
self.failUnless(op.join("foo-1.0", f) in files)
示例4: test_simple_package
def test_simple_package(self):
bento_info = """\
Name: foo
Version: 1.0
ExtraSourceFiles: yeah.info
Library:
Packages: foo, foo.bar
Modules: fubar
"""
archive_list = [op.join("foo-1.0", f) for f in ["yeah.info",
op.join("foo", "__init__.py"),
op.join("foo", "bar", "__init__.py"),
"fubar.py"]]
create_fake_package_from_bento_info(self.top_node, bento_info)
package = PackageDescription.from_string(bento_info)
sdist = SdistCommand()
opts = OptionsContext.from_command(sdist)
cmd_argv = ["--output-file=foo.zip", "--format=zip"]
context = SdistContext(None, cmd_argv, opts, package, self.run_node)
run_command_in_context(context, sdist)
self._assert_archive_equality(op.join("dist", "foo.zip"), archive_list)
示例5: test_template_filling
def test_template_filling(self):
bento_info = """\
Name: foo
Version: 1.0
MetaTemplateFile: release.py.in
Library:
Modules: fubar
"""
archive_list = [op.join("foo-1.0", f) for f in ["fubar.py", "release.py.in", "release.py"]]
template = self.top_node.make_node("release.py.in")
template.write("""\
NAME = $NAME
VERSION = $VERSION
""")
create_fake_package_from_bento_info(self.top_node, bento_info)
package = PackageDescription.from_string(bento_info)
sdist = SdistCommand()
opts = OptionsContext.from_command(sdist)
cmd_argv = ["--output-file=foo.zip", "--format=zip"]
context = SdistContext(None, cmd_argv, opts, package, self.run_node)
run_command_in_context(context, sdist)
self._assert_archive_equality(op.join("dist", "foo.zip"), archive_list)
示例6: test_extra_source_registration
def test_extra_source_registration(self):
bento_info = """\
Name: foo
Version: 1.0
Library:
Modules: fubar
"""
archive_list = [op.join("foo-1.0", f) for f in ["fubar.py", "yeah.info"]]
extra_node = self.top_node.make_node("yeah.info")
extra_node.write("")
create_fake_package_from_bento_info(self.top_node, bento_info)
package = PackageDescription.from_string(bento_info)
sdist = SdistCommand()
opts = OptionsContext.from_command(sdist)
cmd_argv = ["--output-file=foo.zip", "--format=zip"]
context = SdistContext(None, cmd_argv, opts, package, self.run_node)
context.register_source_node(self.top_node.find_node("yeah.info"))
run_command_in_context(context, sdist)
self._assert_archive_equality(op.join("dist", "foo.zip"), archive_list)
示例7: test_iter_source_nodes
def test_iter_source_nodes(self):
r_files = set([op.join("src", "foo.c"),
op.join("src", "bar.c"),
op.join("src", "fubar.c"),
op.join("foo", "__init__.py"),
op.join("foo", "bar", "__init__.py"),
"fu.py", "foo.1"])
bento_info = """\
Name: foo
DataFiles: foo
TargetDir: $sharedir
Files: foo.1
Library:
Extension: _foo
Sources: src/foo.c, src/bar.c
CompiledLibrary: fubar
Sources: src/fubar.c
Packages: foo, foo.bar
Modules: fu
"""
create_fake_package_from_bento_info(self.top_node, bento_info)
package = PackageDescription.from_string(bento_info)
node_package = NodeRepresentation(self.top_node, self.top_node)
node_package.update_package(package)
files = set(n.path_from(self.top_node) for n in node_package.iter_source_nodes())
self.assertEqual(files, r_files)
示例8: test_compiled_library
def test_compiled_library(self):
from bento.backends.distutils_backend import DistutilsBuildContext
r_full_name = "lib/_foo"
bento_info = """\
Name: foo
Library:
CompiledLibrary: lib/_foo
Sources: foo.c
"""
package = PackageDescription.from_string(bento_info)
create_fake_package_from_bento_info(self.top_node, bento_info)
options = OptionsContext.from_command(BuildCommand())
context = DistutilsBuildContext(None, [], options, package, self.run_node)
context.pre_recurse(self.top_node)
try:
def builder(a):
self.assertEqual(a.name, r_full_name)
builder.is_called = True
builder.is_called = False
context.register_compiled_library_builder("lib/_foo", builder)
finally:
context.post_recurse()
context.compile()
self.assertTrue(builder.is_called, "registered builder not called")
示例9: test_template_filling
def test_template_filling(self):
bento_info = """\
Name: foo
Version: 1.0
MetaTemplateFile: release.py.in
Library:
Modules: fubar
"""
archive_list = [op.join("foo-1.0", f) for f in ["fubar.py", "release.py.in", "release.py"]]
template = self.top_node.make_node("release.py.in")
template.write("""\
NAME = $NAME
VERSION = $VERSION
""")
create_fake_package_from_bento_info(self.top_node, bento_info)
package = PackageDescription.from_string(bento_info)
sdist = SdistCommand()
opts = OptionsContext.from_command(sdist)
cmd_argv = ["--output-file=foo.zip", "--format=zip"]
context = SdistContext(None, cmd_argv, opts, package, self.run_node)
sdist.run(context)
sdist.shutdown(context)
context.shutdown()
archive = self.run_node.find_node(op.join("dist", "foo.zip"))
z = zipfile.ZipFile(archive.abspath(), "r")
for f in archive_list:
if not f in z.namelist():
self.fail("File %s not found in archive" % (f,))
示例10: test_extra_source_registration
def test_extra_source_registration(self):
bento_info = """\
Name: foo
Version: 1.0
Library:
Modules: fubar
"""
archive_list = [op.join("foo-1.0", f) for f in ["fubar.py", "yeah.info"]]
extra_node = self.top_node.make_node("yeah.info")
extra_node.write("")
create_fake_package_from_bento_info(self.top_node, bento_info)
package = PackageDescription.from_string(bento_info)
sdist = SdistCommand()
opts = OptionsContext.from_command(sdist)
cmd_argv = ["--output-file=foo.zip", "--format=zip"]
context = SdistContext(None, cmd_argv, opts, package, self.run_node)
context.register_source_node(self.top_node.find_node("yeah.info"))
sdist.run(context)
sdist.shutdown(context)
context.shutdown()
archive = self.run_node.find_node(op.join("dist", "foo.zip"))
z = zipfile.ZipFile(archive.abspath(), "r")
for f in archive_list:
if not f in z.namelist():
self.failUnless(op.join("foo-1.0", f) in files)
示例11: test_simple
def test_simple(self):
text = """\
NName: foo
"""
error_msg = """\
yacc: Syntax error at line 1, Token\(WORD, 'NName'\)
\t'NName: foo'"""
self.assertRaisesRegexp(ParseError, error_msg, lambda : PackageDescription.from_string(text))
示例12: _run_build_with_pre_hook
def _run_build_with_pre_hook(self, hook_func):
package = PackageDescription.from_string(BENTO_INFO)
global_context = prepare_package(self.top_node, BENTO_INFO)
conf, configure = prepare_command(global_context, "configure", [], package, self.top_node)
run_command_in_context(conf, configure)
pre_hook = PreHookWrapper(hook_func, self.build_node.path_from(self.top_node), self.top_node.abspath())
bld, build = prepare_command(global_context, "build", [], package, self.top_node)
run_command_in_context(bld, build, pre_hooks=[pre_hook])
return bld
示例13: test_simple
def test_simple(self):
text = """\
Name: foo
DataFiles: data
TargetDir: $datadir
Files:
foo.data
"""
r_data = DataFiles("data", files=["foo.data"], target_dir="$datadir")
pkg = PackageDescription.from_string(text)
self.failUnless("data" in pkg.data_files)
self.assertEqual(pkg.data_files["data"].__dict__, r_data.__dict__)
示例14: _run_command
def _run_command(self):
setup_node = self.top_node.make_node("setup.py")
setup_node.safe_write("")
create_fake_package_from_bento_info(self.top_node, "")
package = PackageDescription.from_string("")
cmd = DetectTypeCommand()
opts = OptionsContext.from_command(cmd)
context = CmdContext(None, [], opts, package, self.run_node)
cmd.run(context)
cmd.finish(context)
context.finish()
示例15: _run_convert_command
def _run_convert_command(top_node, run_node, setup_py, bento_info, cmd_argv):
setup_node = top_node.make_node("setup.py")
setup_node.safe_write(setup_py)
create_fake_package_from_bento_info(top_node, bento_info)
package = PackageDescription.from_string(bento_info)
cmd = ConvertCommand()
opts = OptionsContext.from_command(cmd)
context = CmdContext(None, cmd_argv, opts, package, run_node)
cmd.run(context)
cmd.finish(context)
context.finish()