python-benedict/tests/github/test_issue_0039.py

49 lines
1.3 KiB
Python
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# -*- coding: utf-8 -*-
from benedict import benedict
import time
import unittest
class github_issue_0039_test_case(unittest.TestCase):
"""
https://github.com/fabiocaccamo/python-benedict/issues/39
To run this specific test:
- Run python -m unittest tests.github.test_issue_0039
"""
def test_performance(self):
b = benedict()
i_iterations = 500
j_iterations = 100
t = time.time()
for i in range(0, i_iterations):
for j in range(0, j_iterations):
b.set("{}.{}".format(i, j), "text-{}-{}".format(i, j))
# print(b.dump())
e = (time.time() - t)
# print('benedict set: {} seconds'.format(e))
# self.assertTrue(e < 5)
t = time.time()
for i in range(0, i_iterations):
for j in range(0, j_iterations):
b.get("{}.{}".format(i, j), None)
e = (time.time() - t)
# print('benedict get: {} seconds'.format(e))
# self.assertTrue(e < 5)
b.clear()
t = time.time()
for i in range(0, i_iterations):
for j in range(0, j_iterations):
b.get("{}.{}".format(i, j), None)
e = (time.time() - t)
# print('benedict get (default): {} seconds'.format(e))
# self.assertTrue(e < 5)