mirror of
				https://github.com/graphql-python/graphene-django.git
				synced 2025-10-31 07:57:31 +03:00 
			
		
		
		
	
		
			
				
	
	
		
			118 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			118 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| import pytest
 | |
| 
 | |
| from ..data import initialize
 | |
| from ..schema import schema
 | |
| 
 | |
| pytestmark = pytest.mark.django_db
 | |
| 
 | |
| 
 | |
| def test_correctly_fetches_id_name_rebels():
 | |
|     initialize()
 | |
|     query = '''
 | |
|       query RebelsQuery {
 | |
|         rebels {
 | |
|           id
 | |
|           name
 | |
|         }
 | |
|       }
 | |
|     '''
 | |
|     expected = {
 | |
|         'rebels': {
 | |
|             'id': 'RmFjdGlvbjox',
 | |
|             'name': 'Alliance to Restore the Republic'
 | |
|         }
 | |
|     }
 | |
|     result = schema.execute(query)
 | |
|     assert not result.errors
 | |
|     assert result.data == expected
 | |
| 
 | |
| 
 | |
| def test_correctly_refetches_rebels():
 | |
|     initialize()
 | |
|     query = '''
 | |
|       query RebelsRefetchQuery {
 | |
|         node(id: "RmFjdGlvbjox") {
 | |
|           id
 | |
|           ... on Faction {
 | |
|             name
 | |
|           }
 | |
|         }
 | |
|       }
 | |
|     '''
 | |
|     expected = {
 | |
|         'node': {
 | |
|             'id': 'RmFjdGlvbjox',
 | |
|             'name': 'Alliance to Restore the Republic'
 | |
|         }
 | |
|     }
 | |
|     result = schema.execute(query)
 | |
|     assert not result.errors
 | |
|     assert result.data == expected
 | |
| 
 | |
| 
 | |
| def test_correctly_fetches_id_name_empire():
 | |
|     initialize()
 | |
|     query = '''
 | |
|       query EmpireQuery {
 | |
|         empire {
 | |
|           id
 | |
|           name
 | |
|         }
 | |
|       }
 | |
|     '''
 | |
|     expected = {
 | |
|         'empire': {
 | |
|             'id': 'RmFjdGlvbjoy',
 | |
|             'name': 'Galactic Empire'
 | |
|         }
 | |
|     }
 | |
|     result = schema.execute(query)
 | |
|     assert not result.errors
 | |
|     assert result.data == expected
 | |
| 
 | |
| 
 | |
| def test_correctly_refetches_empire():
 | |
|     initialize()
 | |
|     query = '''
 | |
|       query EmpireRefetchQuery {
 | |
|         node(id: "RmFjdGlvbjoy") {
 | |
|           id
 | |
|           ... on Faction {
 | |
|             name
 | |
|           }
 | |
|         }
 | |
|       }
 | |
|     '''
 | |
|     expected = {
 | |
|         'node': {
 | |
|             'id': 'RmFjdGlvbjoy',
 | |
|             'name': 'Galactic Empire'
 | |
|         }
 | |
|     }
 | |
|     result = schema.execute(query)
 | |
|     assert not result.errors
 | |
|     assert result.data == expected
 | |
| 
 | |
| 
 | |
| def test_correctly_refetches_xwing():
 | |
|     initialize()
 | |
|     query = '''
 | |
|       query XWingRefetchQuery {
 | |
|         node(id: "U2hpcDox") {
 | |
|           id
 | |
|           ... on Ship {
 | |
|             name
 | |
|           }
 | |
|         }
 | |
|       }
 | |
|     '''
 | |
|     expected = {
 | |
|         'node': {
 | |
|             'id': 'U2hpcDox',
 | |
|             'name': 'X-Wing'
 | |
|         }
 | |
|     }
 | |
|     result = schema.execute(query)
 | |
|     assert not result.errors
 | |
|     assert result.data == expected
 |