mirror of
				https://github.com/rust-lang/rust.git
				synced 2025-10-31 04:57:19 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			97 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			97 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| // This test ensures that code blocks buttons are displayed on hover and when you click on them.
 | |
| go-to: "file://" + |DOC_PATH| + "/test_docs/fn.foo.html"
 | |
| include: "utils.goml"
 | |
| 
 | |
| // First we check we "hover".
 | |
| move-cursor-to: ".example-wrap"
 | |
| assert-css: (".example-wrap .copy-button", { "visibility": "visible" })
 | |
| move-cursor-to: ".search-input"
 | |
| assert-css: (".example-wrap .copy-button", { "visibility": "hidden" })
 | |
| 
 | |
| // Now we check the click.
 | |
| assert-count: (".example-wrap:not(:hover) .button-holder.keep-visible", 0)
 | |
| click: ".example-wrap"
 | |
| move-cursor-to: ".search-input"
 | |
| // It should have a new class and be visible.
 | |
| wait-for-count: (".example-wrap:not(:hover) .button-holder.keep-visible", 1)
 | |
| wait-for-css: (".example-wrap:not(:hover) .button-holder.keep-visible", { "visibility": "visible" })
 | |
| // Clicking again will remove the class.
 | |
| click: ".example-wrap"
 | |
| move-cursor-to: ".search-input"
 | |
| assert-count: (".example-wrap:not(:hover) .button-holder.keep-visible", 0)
 | |
| assert-css: (".example-wrap .copy-button", { "visibility": "hidden" })
 | |
| 
 | |
| // Clicking on the "copy code" button shouldn't make the buttons stick.
 | |
| click: ".example-wrap .copy-button"
 | |
| move-cursor-to: ".search-input"
 | |
| assert-count: (".example-wrap:not(:hover) .button-holder.keep-visible", 0)
 | |
| assert-css: (".example-wrap .copy-button", { "visibility": "hidden" })
 | |
| 
 | |
| define-function: (
 | |
|     "check-buttons",
 | |
|     [theme, background, filter, filter_hover],
 | |
|     block {
 | |
|         call-function: ("switch-theme", {"theme": |theme|})
 | |
| 
 | |
|         assert-css: (".example-wrap .test-arrow", {"visibility": "hidden"})
 | |
|         assert-css: (".example-wrap .copy-button", {"visibility": "hidden"})
 | |
| 
 | |
|         move-cursor-to: ".example-wrap"
 | |
|         assert-css: (".example-wrap .test-arrow", {
 | |
|             "visibility": "visible",
 | |
|             "background-color": |background|,
 | |
|             "border-radius": "2px",
 | |
|         })
 | |
|         assert-css: (".example-wrap .test-arrow::before", {
 | |
|             "filter": |filter|,
 | |
|         })
 | |
|         assert-css: (".example-wrap .copy-button", {
 | |
|             "visibility": "visible",
 | |
|             "background-color": |background|,
 | |
|             "border-radius": "2px",
 | |
|         })
 | |
|         assert-css: (".example-wrap .copy-button::before", {
 | |
|             "filter": |filter|,
 | |
|         })
 | |
| 
 | |
|         move-cursor-to: ".example-wrap .test-arrow"
 | |
|         assert-css: (".example-wrap .test-arrow:hover", {
 | |
|             "visibility": "visible",
 | |
|             "background-color": |background|,
 | |
|             "border-radius": "2px",
 | |
|         })
 | |
|         assert-css: (".example-wrap .test-arrow:hover::before", {
 | |
|             "filter": |filter_hover|,
 | |
|         })
 | |
| 
 | |
|         move-cursor-to: ".example-wrap .copy-button"
 | |
|         assert-css: (".example-wrap .copy-button:hover", {
 | |
|             "visibility": "visible",
 | |
|             "background-color": |background|,
 | |
|             "border-radius": "2px",
 | |
|         })
 | |
|         assert-css: (".example-wrap .copy-button:hover::before", {
 | |
|             "filter": |filter_hover|,
 | |
|         })
 | |
|     },
 | |
| )
 | |
| 
 | |
| call-function: ("check-buttons",{
 | |
|     "theme": "ayu",
 | |
|     "background": "#0f1419",
 | |
|     "filter": "invert(0.7)",
 | |
|     "filter_hover": "invert(1)",
 | |
| })
 | |
| call-function: ("check-buttons",{
 | |
|     "theme": "dark",
 | |
|     "background": "#353535",
 | |
|     "filter": "invert(0.5)",
 | |
|     "filter_hover": "invert(0.65)",
 | |
| })
 | |
| call-function: ("check-buttons",{
 | |
|     "theme": "light",
 | |
|     "background": "#fff",
 | |
|     "filter": "invert(0.5)",
 | |
|     "filter_hover": "invert(0.35)",
 | |
| })
 | 
