Beispiel #1
0
    def test_full_call_chain(self):
        ms = Memspector(full_call_chain=True)
        ms.spectate('''
def a(): return
a()
''')
        self.assertEqual(len(ms.memdata._diffs[MAIN_THREAD_NAME]['<string> => <string>:a()']), 1)
Beispiel #2
0
    def test_fn_call(self):
        ms = Memspector()
        ms.spectate('''
def a(): return
a()
''')
        self.assertEqual(len(ms.memdata._diffs[MAIN_THREAD_NAME]), 2)
Beispiel #3
0
    def test_fn_call(self):
        ms = Memspector()
        ms.spectate('''
def a(): return
a()
''')
        self.assertEqual(len(ms.memdata._diffs[MAIN_THREAD_NAME]), 2)
Beispiel #4
0
    def test_full_call_chain(self):
        ms = Memspector(full_call_chain=True)
        ms.spectate('''
def a(): return
a()
''')
        self.assertEqual(
            len(ms.memdata._diffs[MAIN_THREAD_NAME]
                ['<string> => <string>:a()']), 1)
Beispiel #5
0
    def test_multiple_skipped_calls(self):
        ms = Memspector(exclude_patterns=['.*'])
        time_before = datetime.now()
        ms.spectate('''
def a(): return
for _ in xrange(100000):
    a()
''')
        time_after = datetime.now()
        messages.append('Execution time of 100000 skipped function calls: {0}'
                        .format(time_after - time_before))
        self.assertEqual(len(ms.memdata._diffs), 0)
Beispiel #6
0
    def test_multiple_calls_with_gc(self):
        ms = Memspector()
        time_before = datetime.now()
        ms.spectate('''
def a(): return
for _ in xrange(1000):
    a()
''')
        time_after = datetime.now()
        messages.append('Execution time of 1000 function calls: {0}'
                        .format(time_after - time_before))
        self.assertEqual(len(ms.memdata._diffs[MAIN_THREAD_NAME]['<string>:a()']), 1000)
Beispiel #7
0
    def test_multiple_calls(self):
        ms = Memspector(enable_gc=True)
        time_before = datetime.now()
        ms.spectate(
            """
def a(): return
for _ in xrange(1000):
    a()
"""
        )
        time_after = datetime.now()
        messages.append("Execution time of 1000 function calls with gc: {0}".format(time_after - time_before))
        self.assertEqual(len(ms.memdata._diffs[MAIN_THREAD_NAME]["<string>:a()"]), 1000)
Beispiel #8
0
    def test_multiple_skipped_calls(self):
        ms = Memspector(exclude_patterns=['.*'])
        time_before = datetime.now()
        ms.spectate('''
def a(): return
for _ in xrange(100000):
    a()
''')
        time_after = datetime.now()
        messages.append(
            'Execution time of 100000 skipped function calls: {0}'.format(
                time_after - time_before))
        self.assertEqual(len(ms.memdata._diffs), 0)
Beispiel #9
0
    def test_multiple_calls_with_gc(self):
        ms = Memspector()
        time_before = datetime.now()
        ms.spectate('''
def a(): return
for _ in xrange(1000):
    a()
''')
        time_after = datetime.now()
        messages.append(
            'Execution time of 1000 function calls: {0}'.format(time_after -
                                                                time_before))
        self.assertEqual(
            len(ms.memdata._diffs[MAIN_THREAD_NAME]['<string>:a()']), 1000)
Beispiel #10
0
    def test_threading(self):
        ms = Memspector()
        ms.spectate('''
import threading
def a(): return
def b(): return
def launcher(fn, times):
    for _ in xrange(times):
        fn()
t1 = threading.Thread(target=launcher, args=(a, 1))
t2 = threading.Thread(target=launcher, args=(b, 1))
t1.start()
t2.start()
t1.join()
t2.join()
''')
        self.assertEqual(len(ms.memdata._diffs), 3)
Beispiel #11
0
    def test_threading(self):
        ms = Memspector()
        ms.spectate('''
import threading
def a(): return
def b(): return
def launcher(fn, times):
    for _ in xrange(times):
        fn()
t1 = threading.Thread(target=launcher, args=(a, 1))
t2 = threading.Thread(target=launcher, args=(b, 1))
t1.start()
t2.start()
t1.join()
t2.join()
''')
        self.assertEqual(len(ms.memdata._diffs), 3)
Beispiel #12
0
 def test_spectate(self):
     ms = Memspector()
     ms.spectate('1+1')
     self.assertEqual(len(ms.memdata._diffs[MAIN_THREAD_NAME]), 1)
Beispiel #13
0
 def test_exclude_all(self):
     ms = Memspector(exclude_patterns=['.*'])
     ms.spectate('1+1')
     self.assertEqual(len(ms.memdata._diffs), 0)
Beispiel #14
0
 def test_spectate(self):
     ms = Memspector()
     ms.spectate('1+1')
     self.assertEqual(len(ms.memdata._diffs[MAIN_THREAD_NAME]), 1)
Beispiel #15
0
 def test_exclude_all(self):
     ms = Memspector(exclude_patterns=['.*'])
     ms.spectate('1+1')
     self.assertEqual(len(ms.memdata._diffs), 0)