56 lines
1.6 KiB
Python
56 lines
1.6 KiB
Python
#!/usr/bin/env python
|
|
|
|
"""Tests for `pyteamsnap` package."""
|
|
|
|
|
|
import unittest
|
|
from unittest import TestCase
|
|
|
|
from pyteamsnap import client
|
|
from os import getenv
|
|
from pyteamsnap.models.base import BaseApiObject
|
|
import vcr
|
|
TEAMSNAP_TOKEN = getenv('TEAMSNAP_TOKEN')
|
|
TEAMSNAP_TEAM = getenv('TEAMSNAP_TEAM')
|
|
TEAMSNAP_EVENT = getenv('TEAMSNAP_EVENT')
|
|
|
|
vcr_options = {
|
|
'decode_compressed_response': True,
|
|
'cassette_library_dir':'tests/fixtures/cassettes',
|
|
'filter_headers':['authorization']
|
|
}
|
|
|
|
class ClientTestCase(TestCase):
|
|
"""Tests for `pyteamsnap` package."""
|
|
|
|
@classmethod
|
|
def setUpClass(cls) -> None:
|
|
"""Set up test fixtures, if any."""
|
|
cls.TEAMSNAP_TOKEN = getenv('TEAMSNAP_TOKEN')
|
|
cls.TEAMSNAP_TEAM = int(getenv('TEAMSNAP_TEAM'))
|
|
cls.TEAMSNAP_EVENT = getenv('TEAMSNAP_EVENT')
|
|
with vcr.use_cassette("client.yml", **vcr_options):
|
|
cls.client = client.TeamSnap(token=TEAMSNAP_TOKEN)
|
|
cls.cassette = vcr.use_cassette(f"{cls.__name__}.yml", **vcr_options)
|
|
super().setUpClass()
|
|
|
|
|
|
def test_bulkload(self):
|
|
from pyteamsnap.models import Event, EventLineup, EventLineupEntry, AvailabilitySummary, Member
|
|
with self.cassette:
|
|
bulk_load = self.client.bulk_load(
|
|
team_id=self.TEAMSNAP_TEAM,
|
|
event__id=self.TEAMSNAP_EVENT,
|
|
types=[
|
|
Event,
|
|
EventLineup,
|
|
EventLineupEntry,
|
|
AvailabilitySummary,
|
|
Member
|
|
])
|
|
|
|
self.assertIsInstance(bulk_load, list)
|
|
return bulk_load
|
|
|
|
|