Exemple #1
0
    def test_deserialize(self):
        p = ProfileV1(copy.deepcopy(self.test_data))
        s = p.serialize()
        fobj = io.BytesIO(s)
        p2 = ProfileV1.deserialize(fobj)

        self.assertEqual(p2.data, self.test_data)
Exemple #2
0
    def test_deserialize(self):
        p = ProfileV2.upgrade(ProfileV1(copy.deepcopy(self.test_data)))
        s = p.serialize()
        fobj = io.BytesIO(s)
        p2 = ProfileV2.deserialize(fobj)

        l = list(p2.getCodeForFunction('fn1'))
        l2 = self.test_data['functions']['fn1']['data']
        self.assertEqual(l, l2)
Exemple #3
0
    def test_saveFromRendered(self):
        p = ProfileV1(copy.deepcopy(self.test_data))
        s = Profile(p).render()

        with tempfile.NamedTemporaryFile() as f:
            Profile.saveFromRendered(s, filename=f.name)
            p2 = ProfileV1.deserialize(open(f.name))

        self.assertEqual(p2.data, self.test_data)
Exemple #4
0
 def test_getFunctions(self):
     p = ProfileV2.upgrade(ProfileV1(copy.deepcopy(self.test_data)))
     self.assertEqual(
         p.getFunctions(), {
             'fn1': {
                 'counters': {
                     'cycles': 45.0,
                     'branch-misses': 10.0
                 },
                 'length': 2
             }
         })
Exemple #5
0
 def test_serialize(self):
     p = ProfileV2.upgrade(ProfileV1(copy.deepcopy(self.test_data)))
     with tempfile.NamedTemporaryFile() as f:
         s = p.serialize(f.name)
         self.assertTrue(ProfileV2.checkFile(f.name))