mirror of
				https://github.com/fastapi/sqlmodel.git
				synced 2025-11-04 06:37:29 +08:00 
			
		
		
		
	* 📝 Add source examples for Python 3.9 and 3.10 * ✅ Add tests for new source examples for Python 3.9 and 3.10, still needs pytest markers * ✅ Add tests for fastapi examples * ✅ Update tests for FastAPI app testing, for Python 3.9 and 3.10, fixing multi-app testing conflicts * ✅ Require Python 3.9 and 3.10 for tests * ✅ Update tests with missing markers
		
			
				
	
	
		
			46 lines
		
	
	
		
			1002 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1002 B
		
	
	
	
		
			Python
		
	
	
	
	
	
from decimal import Decimal
 | 
						|
from unittest.mock import patch
 | 
						|
 | 
						|
from sqlmodel import create_engine
 | 
						|
 | 
						|
from ...conftest import get_testing_print_function, needs_py310
 | 
						|
 | 
						|
expected_calls = [
 | 
						|
    [
 | 
						|
        "Hero 1:",
 | 
						|
        {
 | 
						|
            "name": "Deadpond",
 | 
						|
            "age": None,
 | 
						|
            "id": 1,
 | 
						|
            "secret_name": "Dive Wilson",
 | 
						|
            "money": Decimal("1.100"),
 | 
						|
        },
 | 
						|
    ],
 | 
						|
    [
 | 
						|
        "Hero 2:",
 | 
						|
        {
 | 
						|
            "name": "Rusty-Man",
 | 
						|
            "age": 48,
 | 
						|
            "id": 3,
 | 
						|
            "secret_name": "Tommy Sharp",
 | 
						|
            "money": Decimal("2.200"),
 | 
						|
        },
 | 
						|
    ],
 | 
						|
    ["Total money: 3.300"],
 | 
						|
]
 | 
						|
 | 
						|
 | 
						|
@needs_py310
 | 
						|
def test_tutorial(clear_sqlmodel):
 | 
						|
    from docs_src.advanced.decimal import tutorial001_py310 as mod
 | 
						|
 | 
						|
    mod.sqlite_url = "sqlite://"
 | 
						|
    mod.engine = create_engine(mod.sqlite_url)
 | 
						|
    calls = []
 | 
						|
 | 
						|
    new_print = get_testing_print_function(calls)
 | 
						|
 | 
						|
    with patch("builtins.print", new=new_print):
 | 
						|
        mod.main()
 | 
						|
    assert calls == expected_calls
 |