37 lines
		
	
	
		
			894 B
		
	
	
	
		
			Python
		
	
	
			
		
		
	
	
			37 lines
		
	
	
		
			894 B
		
	
	
	
		
			Python
		
	
	
| # Adapted from:
 | |
| # https://github.com/google/clif/blob/5718e4d0807fd3b6a8187dde140069120b81ecef/clif/testing/python/python_multiple_inheritance_test.py
 | |
| from __future__ import annotations
 | |
| 
 | |
| from pybind11_tests import python_multiple_inheritance as m
 | |
| 
 | |
| 
 | |
| class PC(m.CppBase):
 | |
|     pass
 | |
| 
 | |
| 
 | |
| class PPCC(PC, m.CppDrvd):
 | |
|     pass
 | |
| 
 | |
| 
 | |
| def test_PC():
 | |
|     d = PC(11)
 | |
|     assert d.get_base_value() == 11
 | |
|     d.reset_base_value(13)
 | |
|     assert d.get_base_value() == 13
 | |
| 
 | |
| 
 | |
| def test_PPCC():
 | |
|     d = PPCC(11)
 | |
|     assert d.get_drvd_value() == 33
 | |
|     d.reset_drvd_value(55)
 | |
|     assert d.get_drvd_value() == 55
 | |
| 
 | |
|     assert d.get_base_value() == 11
 | |
|     assert d.get_base_value_from_drvd() == 11
 | |
|     d.reset_base_value(20)
 | |
|     assert d.get_base_value() == 20
 | |
|     assert d.get_base_value_from_drvd() == 20
 | |
|     d.reset_base_value_from_drvd(30)
 | |
|     assert d.get_base_value() == 30
 | |
|     assert d.get_base_value_from_drvd() == 30
 |