| 922 | pass |
| 923 | |
| 924 | def MockDBAPI(): |
| 925 | def cursor(): |
| 926 | while True: |
| 927 | if explode_on_exec: |
| 928 | yield Mock( |
| 929 | description=[], |
| 930 | close=Mock(side_effect=DBAPIError("explode")), |
| 931 | execute=Mock(side_effect=DBAPIError("explode")), |
| 932 | ) |
| 933 | else: |
| 934 | yield Mock( |
| 935 | description=[], |
| 936 | close=Mock(side_effect=Exception("explode")), |
| 937 | ) |
| 938 | |
| 939 | def connect(): |
| 940 | while True: |
| 941 | yield Mock( |
| 942 | spec=["cursor", "commit", "rollback", "close"], |
| 943 | cursor=Mock(side_effect=cursor()), |
| 944 | ) |
| 945 | |
| 946 | return Mock( |
| 947 | Error=DBAPIError, |
| 948 | paramstyle="qmark", |
| 949 | connect=Mock(side_effect=connect()), |
| 950 | ) |
| 951 | |
| 952 | dbapi = MockDBAPI() |
| 953 | |