Files
stroopwafel/tests.py
T
mark 009d64ef16
continuous-integration/drone/push Build is passing
Test voor kopieerpasta
2022-12-02 21:50:20 +01:00

45 lines
1.4 KiB
Python

import unittest
import praw
import random
import requests
import json
import dotenv
import discord
from discord.ext import commands
import General
class TestGeneral(unittest.TestCase):
def setUp(self):
dotenv.load_dotenv()
intents = discord.Intents.default()
intents.message_content = True
intents.members = True
bot = commands.Bot(command_prefix=commands.when_mentioned_or('!'), description='Stroopwafel. Shitpost bot extraordinaire.', pm_help=True, intents=intents)
self.cog = General.General(bot)
def test_playlist(self):
data = self.cog.get_playlist_json()
if data.status_code >= 500:
self.skipTest(f"Server at {self.cog.muzak_url} has an error")
with self.subTest(msg=f"{self.cog.muzak_url} doesn't return 200"):
self.assertEqual(data.status_code, 200)
with self.subTest(msg="Not a good response"):
self.assertIsInstance(data, requests.Response)
with self.subTest(msg="Does not convert to json"):
self.assertIsInstance(json.loads(data.content), dict)
def test_aww(self):
if not isinstance(self.cog.r, praw.Reddit):
self.skipTest("PRAW Reddit instance failed to create")
post = self.cog.get_aww_post()
self.assertIsInstance(post.url, str)
def test_kopieerpasta(self):
if not isinstance(self.cog.r, praw.Reddit):
self.skipTest("PRAW Reddit instance failed to create")
post = self.cog.get_kopieerpasta()
self.assertIsInstance(post.url, str)