Skip to content

Commit

Permalink
added/revised tests.
Browse files Browse the repository at this point in the history
  • Loading branch information
Donald Mellenbruch authored and Donald Mellenbruch committed Jun 21, 2023
1 parent f7eb64b commit d759d7b
Showing 1 changed file with 17 additions and 7 deletions.
24 changes: 17 additions & 7 deletions test/test_ezpq.py
Expand Up @@ -5,21 +5,21 @@

from _context import ezpq

def return_i(i=1):
return i
def return_me(x=1):
return x

class TestEZPQ(unittest.TestCase):

def setUp(self):
self.Q = ezpq.Queue(job_runner=Process, auto_start=True)
self.Q = ezpq.Queue(job_runner=Process, auto_start=True, n_workers=5)
self.input = tuple(range(100))

def test_priority(self):
self.Q._stop()

for i in self.input:
self.Q.put(function=return_i, args=i,
priority=-i) # should result in reversed inputs.
for x in self.input:
self.Q.put(function=return_me, args=x,
priority=-x) # should result in reversed inputs.

self.Q.start()
self.Q.wait()
Expand All @@ -29,12 +29,22 @@ def test_priority(self):
self.assertEqual(tuple(reversed(self.input)), out_list)

def test_map(self):
job_data = self.Q.map(function=return_i, iterable=self.input, ordered=True)
job_data = self.Q.map(function=return_me, iterable=self.input)

out_list = tuple(job['output'] for job in job_data)

self.assertEqual(self.input, out_list)

def test_lanes(self):
for i, x in enumerate(self.input):
self.Q.put(function=return_me, args=x,
lane = i % self.Q.n_workers()) # returns in order

self.Q.wait()
out_list = tuple(x['output'] for x in self.Q.collect())

self.assertEqual(self.input, out_list)

def test_size(self):
self.assertEqual(self.Q.size(), 0)

Expand Down

0 comments on commit d759d7b

Please sign in to comment.