Джанго Мок QuerySet - PullRequest
       1

Джанго Мок QuerySet

0 голосов
/ 22 декабря 2018

Класс игроков:

class Players:
  def __init__(self):
      self.players = PlayerModel.objects.all()

  def count(self):
      return len(self.players)

Тест:

    def setUp(self):
      self.players = Players()

@patch('riskgame.entities.Players.count', return_value=9, create=True)
def test_count(self):
    number = self.players.count()
    self.assertEqual(number, 9)

Этот тест выдает:

Failed: Database access not allowed, use the "django_db" mark, or the "db" or "transactional_db" fixtures to enable it.

Но зачем нужен этот тест для базы данных?Похоже, что @patch на Players.count () не работает.Есть ли лучшее решение, чтобы сделать его более тестируемым?

1 Ответ

0 голосов
/ 10 января 2019

Исправьте это, переопределив свойство игроков с помощью

def setUp(self): self.players = []

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...