Beispiel #1
0
def declare_extras_features(context):
    LOG.debug('declaring extras for {0}'.format(context.info))
    package_name = find_package_by_module(context.package)
    extras = find_extras_by_package(package_name)
    LOG.debug('extras for {}: {}'.format(package_name, extras))

    installed_extras = [name for (name, dependencies) in extras.items()
                        if all_packages_installed(dependencies)]

    for postfix in combine_features(installed_extras):
        feature_name = '{}:{}'.format(package_name, postfix)
        LOG.debug('declaring feature {}'.format(feature_name))
        context.provideFeature(feature_name)
 def test_not_all_packages_installed(self):
     self.assertFalse(all_packages_installed(['ftw.autofeature',
                                              'django']))
 def test_all_packages_installed(self):
     self.assertTrue(all_packages_installed(['ftw.autofeature',
                                             'unittest2']))