def _create_package_and_reference(self, bento_info, r_bento_info): pkg = PackageDescription.from_string(bento_info) node_pkg = NodeRepresentation(self.run_node, self.top_node) node_pkg.update_package(pkg) r_pkg = PackageDescription.from_string(r_bento_info) r_node_pkg = NodeRepresentation(self.run_node, self.top_node) r_node_pkg.update_package(r_pkg) return node_pkg, r_node_pkg
def _create_package_and_reference(self, bento_info, r_bento_info): pkg = PackageDescription.from_string(bento_info) node_pkg = NodeRepresentation(self.run_node, self.top_node) node_pkg.update_package(pkg) r_pkg = PackageDescription.from_string(r_bento_info) r_node_pkg = NodeRepresentation(self.run_node, self.top_node) r_node_pkg.update_package(r_pkg) return node_pkg, r_node_pkg
def _compute_scheme(self, bento_info, options): package_options = PackageOptions.from_string(bento_info) pkg = PackageDescription.from_string(bento_info) scheme = _compute_scheme(package_options) set_scheme_win32(scheme, options, pkg) return scheme
def _compute_scheme(self, bento_info, options): package_options = PackageOptions.from_string(bento_info) pkg = PackageDescription.from_string(bento_info) scheme = _compute_scheme(package_options) set_scheme_win32(scheme, options, pkg) return scheme
def prepare_package(top_node, bento_info, backend=None): package = PackageDescription.from_string(bento_info) package_options = PackageOptions.from_string(bento_info) create_fake_package_from_bento_info(top_node, bento_info) top_node.make_node("bento.info").safe_write(bento_info) return create_global_context(package, package_options, backend)
def prepare_package(top_node, bento_info, backend=None): package = PackageDescription.from_string(bento_info) package_options = PackageOptions.from_string(bento_info) create_fake_package_from_bento_info(top_node, bento_info) top_node.make_node("bento.info").safe_write(bento_info) return create_global_context(package, package_options, backend)
def test_simple_no_cython(self): bento_info = """\ Library: Extension: foo Sources: foo1.c, foo2.c """ bentos = {"bento.info": bento_info} create_fake_package_from_bento_infos(self.run_node, bentos) pkg = PackageDescription.from_string(bento_info) self.assertFalse(has_cython_code(pkg))
def test_simple_no_cython(self): bento_info = """\ Library: Extension: foo Sources: foo1.c, foo2.c """ bentos = {"bento.info": bento_info} create_fake_package_from_bento_infos(self.run_node, bentos) pkg = PackageDescription.from_string(bento_info) self.assertFalse(has_cython_code(pkg))
def test_recurse(self): """Check that we raise a proper exception when mixing recurse and sub_directory features.""" bento_info = """\ Name: foo Recurse: bar Library: SubDirectory: lib """ self.assertRaises(InvalidPackage, lambda: PackageDescription.from_string(bento_info))
def test_recurse(self): """Check that we raise a proper exception when mixing recurse and sub_directory features.""" bento_info = """\ Name: foo Recurse: bar Library: SubDirectory: lib """ self.assertRaises(InvalidPackage, lambda: PackageDescription.from_string(bento_info))
def _prepare_command(run_node, bento_info, cmd_klass, context_klass, cmd_argv): top_node = run_node._ctx.srcnode top_node.make_node("bento.info").safe_write(bento_info) package = PackageDescription.from_string(bento_info) package_options = PackageOptions.from_string(bento_info) cmd = cmd_klass() options_context = OptionsContext.from_command(cmd) cmd.register_options(options_context, package_options) global_context = GlobalContext(None) global_context.register_package_options(package_options) context = context_klass(global_context, cmd_argv, options_context, package, run_node) return context, cmd
def _prepare_command(run_node, bento_info, cmd_klass, context_klass, cmd_argv): top_node = run_node._ctx.srcnode top_node.make_node("bento.info").safe_write(bento_info) package = PackageDescription.from_string(bento_info) package_options = PackageOptions.from_string(bento_info) cmd = cmd_klass() options_context = OptionsContext.from_command(cmd) cmd.register_options(options_context, package_options) global_context = GlobalContext(None) global_context.register_package_options(package_options) context = context_klass(global_context, cmd_argv, options_context, package, run_node) return context, cmd
def test_sub_package(self): bento_info = """\ Recurse: foo Library: Extension: foo Sources: foo1.c """ bento_sub1_info = """ Library: Extension: bar Sources: bar.pyx """ bentos = {"bento.info": bento_info, op.join("foo", "bento.info"): bento_sub1_info} create_fake_package_from_bento_infos(self.run_node, bentos) pkg = PackageDescription.from_string(bento_info) self.assertTrue(has_cython_code(pkg))
def test_sub_package(self): bento_info = """\ Recurse: foo Library: Extension: foo Sources: foo1.c """ bento_sub1_info = """ Library: Extension: bar Sources: bar.pyx """ bentos = {"bento.info": bento_info, op.join("foo", "bento.info"): bento_sub1_info} create_fake_package_from_bento_infos(self.run_node, bentos) pkg = PackageDescription.from_string(bento_info) self.assertTrue(has_cython_code(pkg))
def test_build_post_data(self): r_content = six.b( """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" """Content-Disposition: form-data; name="maintainer"\r\n\r\n\r\n""" """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" """Content-Disposition: form-data; name="name"\r\n\r\n""" """foo\r\n""" """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" """Content-Disposition: form-data; name="license"\r\n\r\n\r\n""" """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" """Content-Disposition: form-data; name="author"\r\n\r\n""" """John Doe\r\n""" """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" """Content-Disposition: form-data; name="url"\r\n\r\n\r\n""" """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" """Content-Disposition: form-data; name=":action"\r\n\r\n""" """submit\r\n""" """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" """Content-Disposition: form-data; name="download_url"\r\n\r\n\r\n""" """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" """Content-Disposition: form-data; name="maintainer_email"\r\n\r\n\r\n""" """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" """Content-Disposition: form-data; name="author_email"\r\n\r\n\r\n""" """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" """Content-Disposition: form-data; name="version"\r\n\r\n""" """1.0\r\n""" """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" """Content-Disposition: form-data; name="long_description"\r\n\r\n\r\n""" """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" """Content-Disposition: form-data; name="description"\r\n\r\n\r\n""" """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254--\r\n""" """""" ) bento_info = """\ Name: foo Version: 1.0 Author: John Doe """ package = PackageDescription.from_string(bento_info) post_data = build_post_data(package, "submit") content_type, body = encode_multipart(post_data.items(), []) self.assertEqual(r_content, body)
def prepare_configure(run_node, bento_info, context_klass=ConfigureYakuContext, cmd_argv=None): if cmd_argv is None: cmd_argv = [] top_node = run_node._ctx.srcnode top_node.make_node("bento.info").safe_write(bento_info) package = PackageDescription.from_string(bento_info) package_options = PackageOptions.from_string(bento_info) configure = ConfigureCommand() opts = OptionsContext.from_command(configure) # FIXME: this emulates the big ugly hack inside bentomaker. _setup_options_parser(opts, package_options) context = context_klass(None, cmd_argv, opts, package, run_node) context.package_options = package_options return context, configure
def test_build_post_data(self): r_content = six.b("""----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" \ """Content-Disposition: form-data; name="maintainer"\r\n\r\n\r\n""" \ """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" \ """Content-Disposition: form-data; name="name"\r\n\r\n""" \ """foo\r\n""" \ """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" \ """Content-Disposition: form-data; name="license"\r\n\r\n\r\n""" \ """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" \ """Content-Disposition: form-data; name="author"\r\n\r\n""" \ """John Doe\r\n""" \ """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" \ """Content-Disposition: form-data; name="url"\r\n\r\n\r\n""" \ """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" \ """Content-Disposition: form-data; name=":action"\r\n\r\n""" \ """submit\r\n""" \ """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" \ """Content-Disposition: form-data; name="download_url"\r\n\r\n\r\n""" \ """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" \ """Content-Disposition: form-data; name="maintainer_email"\r\n\r\n\r\n""" \ """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" \ """Content-Disposition: form-data; name="author_email"\r\n\r\n\r\n""" \ """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" \ """Content-Disposition: form-data; name="version"\r\n\r\n""" \ """1.0\r\n""" \ """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" \ """Content-Disposition: form-data; name="long_description"\r\n\r\n\r\n""" \ """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254\r\n""" \ """Content-Disposition: form-data; name="description"\r\n\r\n\r\n""" \ """----------------GHSKFJDLGDS7543FJKLFHRE75642756743254--\r\n""" \ """""") bento_info = """\ Name: foo Version: 1.0 Author: John Doe """ package = PackageDescription.from_string(bento_info) post_data = build_post_data(package, "submit") content_type, body = encode_multipart(list(post_data.items()), []) self.assertEqual(r_content, body)