forked from mirrors/gecko-dev
		
	 143e26ed5d
			
		
	
	
		143e26ed5d
		
	
	
	
	
		
			
			Automatic update from web-platform-tests Check use of NavigateEvent.sourceElement (#46072) NavigateEvent.sourceElement is used in some navigation-api tests but it is not part of the specification, so check whether it is supported before using it in asserts. -- wpt-commits: 6c91fbce8312c431a1e0a6db5d001438f96531e9 wpt-pr: 46072
		
			
				
	
	
		
			32 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <!doctype html>
 | |
| <script src="/resources/testharness.js"></script>
 | |
| <script src="/resources/testharnessreport.js"></script>
 | |
| <iframe id="iframe" name="i" src="/common/blank.html"></iframe>
 | |
| <script>
 | |
| async_test(t => {
 | |
|   window.onload = t.step_func(() => {
 | |
|     navigation.onnavigate = t.step_func_done(() => {
 | |
|       assert_unreached("onnavigate should not have fired in source window");
 | |
|     });
 | |
|     iframe.contentWindow.navigation.onnavigate = t.step_func_done(e => {
 | |
|       assert_equals(e.navigationType, "push");
 | |
|       assert_true(e.cancelable);
 | |
|       assert_true(e.canIntercept);
 | |
|       assert_false(e.userInitiated);
 | |
|       assert_true(e.hashChange);
 | |
|       assert_equals(e.downloadRequest, null);
 | |
|       assert_equals(new URL(e.destination.url).hash, "#1");
 | |
|       assert_true(e.destination.sameDocument);
 | |
|       assert_equals(e.destination.key, "");
 | |
|       assert_equals(e.destination.id, "");
 | |
|       assert_equals(e.destination.index, -1);
 | |
|       assert_equals(e.formData, null);
 | |
|       // NavigateEvent sourceElement is still in development, so test whether it is available.
 | |
|       if ("sourceElement" in e) assert_equals(e.sourceElement, null);
 | |
|       e.preventDefault();
 | |
|     });
 | |
| 
 | |
|     window.open("/common/blank.html#1", "i");
 | |
|   });
 | |
| }, "window.open() fires navigate event in target window but not source");
 | |
| </script>
 |