| 
									
										
										
										
											2022-09-08 21:40:48 +02:00
										 |  |  | import ScriptUtils from "../scripts/ScriptUtils" | 
					
						
							|  |  |  | import { Utils } from "../Utils" | 
					
						
							| 
									
										
										
										
											2022-06-28 03:21:18 +02:00
										 |  |  | import * as fakedom from "fake-dom" | 
					
						
							| 
									
										
										
										
											2022-09-08 21:40:48 +02:00
										 |  |  | import Locale from "../UI/i18n/Locale" | 
					
						
							| 
									
										
										
										
											2022-03-23 19:48:06 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | export const mochaHooks = { | 
					
						
							|  |  |  |     beforeEach(done) { | 
					
						
							| 
									
										
										
										
											2022-09-08 21:40:48 +02:00
										 |  |  |         ScriptUtils.fixUtils() | 
					
						
							| 
									
										
										
										
											2022-06-30 03:07:54 +02:00
										 |  |  |         Locale.language.setData("en") | 
					
						
							| 
									
										
										
										
											2022-06-28 03:21:18 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |         if (fakedom === undefined || window === undefined) { | 
					
						
							|  |  |  |             throw "FakeDom not initialized" | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-03-23 19:48:06 +01:00
										 |  |  |         // Block internet access
 | 
					
						
							| 
									
										
										
										
											2022-09-08 21:40:48 +02:00
										 |  |  |         const realDownloadFunc = Utils.externalDownloadFunction | 
					
						
							| 
									
										
										
										
											2022-03-23 19:48:06 +01:00
										 |  |  |         Utils.externalDownloadFunction = async (url) => { | 
					
						
							| 
									
										
										
										
											2022-09-08 21:40:48 +02:00
										 |  |  |             console.error( | 
					
						
							|  |  |  |                 "Fetching ", | 
					
						
							|  |  |  |                 url, | 
					
						
							|  |  |  |                 "blocked in tests, use Utils.injectJsonDownloadForTests" | 
					
						
							|  |  |  |             ) | 
					
						
							| 
									
										
										
										
											2022-03-23 19:48:06 +01:00
										 |  |  |             const data = await realDownloadFunc(url) | 
					
						
							| 
									
										
										
										
											2022-09-08 21:40:48 +02:00
										 |  |  |             console.log( | 
					
						
							|  |  |  |                 "\n\n ----------- \nBLOCKED DATA\n Utils.injectJsonDownloadForTests(\n" + "       ", | 
					
						
							|  |  |  |                 JSON.stringify(url), | 
					
						
							|  |  |  |                 ", \n", | 
					
						
							|  |  |  |                 "       ", | 
					
						
							| 
									
										
										
										
											2022-10-27 01:50:01 +02:00
										 |  |  |                 //   JSON.stringify(data),
 | 
					
						
							| 
									
										
										
										
											2022-09-08 21:40:48 +02:00
										 |  |  |                 "\n    )\n------------------\n\n" | 
					
						
							|  |  |  |             ) | 
					
						
							|  |  |  |             throw new Error( | 
					
						
							|  |  |  |                 "Detected internet access for URL " + | 
					
						
							|  |  |  |                     url + | 
					
						
							|  |  |  |                     ", please inject it with Utils.injectJsonDownloadForTests" | 
					
						
							|  |  |  |             ) | 
					
						
							| 
									
										
										
										
											2022-03-23 19:48:06 +01:00
										 |  |  |         } | 
					
						
							| 
									
										
										
										
											2022-09-08 21:40:48 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |         done() | 
					
						
							|  |  |  |     }, | 
					
						
							|  |  |  | } |