私のコードでは、独自のreprメソッドを使用してクラスを定義しました。クラスの表現はリストである必要があります。
def __repr__(self):
if self.front <= self.tail:
q = self._queue[self.front:self.tail+1]
elif self.front > self.tail:
q = self._queue[self.front:]
q.extend(self._queue[:self.tail + 1])
return (q.__repr__())
このメソッドをテストするために、次のユニットテストを作成しました。
def test_enqueue(self):
q = BoundedQueue(1)
q.enqueue(1)
self.assertEqual(q, [1])
ただし、アサーションエラーが発生します。
Traceback (most recent call last):
File "test_internmatch_queue.py", line 13, in test_enqueue
self.assertEqual(q, [1])
AssertionError: [1] != [1]
何が問題なのかわかりません...人間の目には[1]==[1]!reprメソッド(以下)で他のいくつかのバリエーションを試しましたが、それらもすべてエラーを返しました。
return repr(q)
return str(q)