def get_scancode_package(package_dict): '''Given a package dictionary from the scancode results, return a Package object with the results''' package = Package(package_dict['name']) package.version = package_dict['version'] package.pkg_license = package_dict['declared_license'] package.copyright = package_dict['copyright'] package.proj_url = package_dict['repository_homepage_url'] package.download_url = package_dict['download_url'] package.licenses = [package_dict['declared_license'], package_dict['license_expression']] return package
def testMerge(self): p1 = Package('p1') p1.version = '1.0' p1.pkg_licenses = ['license1'] p2 = Package('p1') p2.version = '1.0' p2.download_url = 'SomeUrl' p2.checksum = 'abc' p2.pkg_licenses = ['license2'] self.assertFalse(p1.merge('astring')) self.assertTrue(p1.merge(p2)) self.assertEqual(p1.download_url, 'SomeUrl') self.assertEqual(p1.checksum, 'abc') self.assertEqual(p1.pkg_licenses, ['license1', 'license2']) p2.version = '2.0' self.assertFalse(p1.merge(p2))