コード例 #1
0
ファイル: common.py プロジェクト: rajdhandus/tern
def get_layer_obj(sha):
    '''Given the sha, retrieve the list of packages from the cache and
    return a layer object'''
    layer_obj = Layer(sha)
    packages = cache.get_packages(sha)
    for package in packages:
        pkg_obj = Package(package['name'])
        pkg_obj.fill(package)
        layer_obj.add(pkg_obj)
    return layer_obj
コード例 #2
0
ファイル: test_class_layer.py プロジェクト: sec-princess/tern
class TestClassLayer(unittest.TestCase):
    def setUp(self):
        self.layer = Layer('123abc')

    def tearDown(self):
        del self.layer

    def testInstance(self):
        self.assertEqual(self.layer.sha, '123abc')
        self.assertFalse(self.layer.packages)
        self.assertRaises(AttributeError, setattr, self.layer, 'sha', '456def')

    def testAddingPackage(self):
        p1 = Package('x')
        self.layer.add(p1)
        self.assertEqual(len(self.layer.packages), 1)

    def testRemovePackage(self):
        p1 = Package('x')
        p2 = Package('y')
        self.layer.add(p1)
        self.layer.add(p2)
        self.assertTrue(self.layer.remove('y'))
        self.assertFalse(self.layer.remove('y'))

    def testToDict(self):
        p1 = Package('x')
        self.layer.add(p1)
        a_dict = self.layer.to_dict()
        print(a_dict)
        self.assertTrue(a_dict['123abc'])
        self.assertEqual(len(a_dict['123abc']), 1)
        self.assertEqual(a_dict['123abc'][0]['name'], 'x')
コード例 #3
0
ファイル: common.py プロジェクト: rajdhandus/tern
def build_layer_obj(sha, pkg_obj_list=[]):
    '''Create a layer object given the sha and a list of package objects'''
    layer_obj = Layer(sha)
    for pkg in pkg_obj_list:
        layer_obj.add(pkg)
    return layer_obj