Skip to content
Snippets Groups Projects
Verified Commit f6b5de82 authored by Mark's avatar Mark
Browse files

Add createUser API test

parent 6a5d2be9
No related branches found
No related tags found
No related merge requests found
from graphqlclient import GraphQLClient
import unittest import unittest
from os import environ from os import environ
from app import app from app import app
from flask_testing import LiveServerTestCase
from json import loads
from database.database import db_session
from database.models import User
class GraphQlTests(LiveServerTestCase):
class GraphQlTests(unittest.TestCase): def create_app(self):
app.config["TESTING"] = True
return app
def setUp(self): def setUp(self):
self.app = app.test_client() self.client = GraphQLClient(self.get_server_url()+"/graphql")
self.app.testing = True
def tearDown(self): def tearDown(self):
pass # clean up tables
users = User.query.filter_by(username="graphqluser").delete()
db_session.commit()
def test_graphql_home(self): def test_query_create_user(self):
result = self.app.get('/graphql') username = "graphqluser"
self.assertEqual(result.status_code, 400) password = "randompassword"
email = "user@example.com"
querystring = '''
mutation{{
createUser(
username: "{0}",
password: "{1}",
email: "{2}"){{
user{{
username,
email}}}}}}
'''.format(username, password, email).strip()
result = loads(self.client.execute(querystring))
self.assertNotIn("error", result, "Creating user failed due to an error")
self.assertIn("data", result)
self.assertIn("createUser", result["data"])
self.assertIn("user", result["data"]["createUser"])
user = result["data"]["createUser"]["user"]
self.assertEqual(user["username"], username)
self.assertEqual(user["email"], email)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment