#!/usr/bin/env python3
import os
import unittest
import requests

BASE_URL="http://localhost:5000"

class SchortFunctionalTestCase(unittest.TestCase):
	def setUp(self):
		# maybe later
		pass

	def tearDown(self):
		# maybe later
		pass

	def assertPostReq(self, url, data = {}):
		req = requests.post(url, data=data)
		self.assertEqual(req.status_code, 200)
		return req

	def assertGetReq(self, url, params = {}):
		req = requests.get(url, params=params)
		self.assertEqual(req.status_code, 200)
		return req

	def test_entry_page(self):
		req = self.assertGetReq(BASE_URL + "/")

	def test_custom_creation(self):
		req = self.assertPostReq(BASE_URL + "/", data={"url" : "https://github.com/sqozz/schort", "wishId" : "custom_user_supplied_url"})

	def test_easy_api(self):
		'''
		Test if the api is intuitive/easy to implement
		
		While creating the custom_creation test, out of pure laziness, I left out the whishId parameter.
		For intuitive use of the API from a script, this shouldn't be neccessary.
		'''
		req = self.assertPostReq("http://localhost:5000/", data={"url" : "https://github.com/sqozz/schort"})


if __name__ == '__main__':
	unittest.main()

# vim: noexpandtab:ts=2:sw=2:sts=2

@@ -574,16 +574,311 @@
 L + %22/%22)
+%0A%09%09content = req.text%0A%09%09self.assertNotEqual(len(content), 0, msg=%22Get request content was empty.%22)%0A%09%09self.assertRegex(content, %22.*%5C%3Chtml.*%22, msg=%22Didn't find an opening %3Chtml tag in the response.%22)%0A%09%09self.assertRegex(content, %22.*%5C%3Cdiv.*%22, msg=%22Didn't find any opening %3Cdiv tag in the response.%22)
 %0A%0A%09def t

Extend basic entry page test