2 "description": "Pages hand-picked for project Silk.",
3 "archive_data_file": "data/key_silk_cases.json",
4 "credentials_path": "data/credentials.json",
5 "user_agent_type": "mobile",
6 "smoothness": { "action": "scroll" },
8 { "action": "navigate" },
9 { "action": "wait", "seconds": 2 }
13 "url": "http://groupcloned.com/test/plain/list-recycle-transform.html",
14 "why": "best case infinite scroll from sencha",
17 "scrollable_element_function": "function(callback) { callback(document.getElementById('scrollable')); }"
21 "url": "http://groupcloned.com/test/plain/list-animation-simple.html",
22 "why": "lots of layers all animating",
23 "smoothness": { "action": "wait", "seconds": 2 }
26 "url": "http://www.polymer-project.org/polymer-all/labs/list/static-scroll-display.html",
30 "scrollable_element_function": "function(callback) { callback(document.getElementById('list')); }"
34 "url": "http://www.polymer-project.org/polymer-all/labs/list/virtual-scroll-examples.html",
38 "scrollable_element_function": "function(callback) { callback(document.getElementById('list')); }"
42 "url": "http://groupcloned.com/test/plain/sticky-using-webkit-backface-visibility.html",
46 "scrollable_element_function": "function(callback) { callback(document.getElementById('container')); }"
50 "url": "http://pr.gg/scroll6_even_faster.html",
51 "why": "reduced version of ui toolkit static scroll case",
54 "scrollable_element_function": "function(callback) { callback(document.getElementsByClassName('container')[0]); }"
58 "url": "http://jsfiddle.net/mdxJ7/3/embedded/result/",
59 "why": "only the green div should repaint",
60 "smoothness": { "action": "wait", "seconds": 3 }
63 "url": "http://jsfiddle.net/3yDKh/1/embedded/result",
64 "why": "only the red div should repaint",
65 "smoothness": { "action": "wait", "seconds": 3 }
68 "url": "http://jsfiddle.net/3yDKh/3/embedded/result",
69 "why": "margin top animation",
70 "smoothness": { "action": "wait", "seconds": 3 }
73 "url": "http://jsfiddle.net/R8DX9/1/embedded/result/",
74 "smoothness": { "action": "wait", "seconds": 3 }
77 "url": "http://jsfiddle.net/rF9Gh/1/embedded/result/",
78 "smoothness": { "action": "wait", "seconds": 3 }
81 "url": "http://jsfiddle.net/uHqN9/embedded/result/",
82 "smoothness": { "action": "wait", "seconds": 4 }
85 "url": "http://jsfiddle.net/humper/yEX8u/3/embedded/result/",
86 "smoothness": { "action": "wait", "seconds": 4 }
89 "url": "http://jsfiddle.net/humper/cKB9D/3/embedded/result/",
90 "smoothness": { "action": "wait", "seconds": 4 }
93 "url": "http://jsfiddle.net/vBQHH/3/embedded/result/",
94 "smoothness": { "action": "wait", "seconds": 4 }
97 "url": "http://www.google.com/nexus/5/#/",
98 "smoothness": { "action": "scroll" }
101 "url": "https://play.google.com/store/devices/details/Nexus_5_16GB_White?id=nexus_5_white_16gb",
108 "action": "click_element",
109 "selector": ".details-info .play-button:not(.selected)"
111 { "action": "wait", "seconds": 2}
115 "url": "http://jsfiddle.net/426x6/2/embedded/result",
116 "smoothness": { "action": "wait", "seconds": 2 }
119 "url": "http://jsfiddle.net/FtR7p/42/embedded/result/",
120 "smoothness": { "action": "wait", "seconds": 5 }
123 "url": "http://jsfiddle.net/ugkd4/9/embedded/result/",
124 "smoothness": { "action": "wait", "seconds": 5 }
127 "url": "file://key_silk_cases/text-mask.html",
128 "smoothness": { "action": "wait", "seconds": 4 }
131 "url": "file://key_silk_cases/rectangle_transition.html",
132 "smoothness": { "action": "wait", "seconds": 5 }
135 "url": "file://key_silk_cases/font_wipe.html",
136 "smoothness": { "action": "wait", "seconds": 5 }
139 "url": "file://key_silk_cases/inbox_app.html?swipe_to_dismiss",
141 { "action": "navigate" },
142 { "action": "wait", "seconds": 2 }
145 "action": "swipe_to_dismiss"
147 "swipe_to_dismiss": [
150 "element_function": "function(callback) { callback(document.getElementsByClassName('message')[2]); }",
154 "left_start_percentage": 0.8,
155 "top_start_percentage": 0.2,
157 "javascript": "document.getElementsByClassName('message').length < 18"
163 "url": "file://key_silk_cases/inbox_app.html?stress_hidey_bars",
165 { "action": "navigate" },
166 { "action": "wait", "seconds": 2 }
169 "action": "stress_hidey_bars"
171 "stress_hidey_bars": [
174 "scrollable_element_function": "function(callback) { callback(document.getElementById('messages')); }",
180 "scrollable_element_function": "function(callback) { callback(document.getElementById('messages')); }",
186 "scrollable_element_function": "function(callback) { callback(document.getElementById('messages')); }",
193 "url": "file://key_silk_cases/inbox_app.html?toggle_drawer",
195 { "action": "navigate" },
196 { "action": "wait", "seconds": 2 }
199 "action": "toggle_drawer",
204 "action": "click_element",
205 "selector": "#menu-button"
207 { "action": "wait", "seconds": 1 }
211 "url": "file://key_silk_cases/old_inbox_app.html?slide_drawer",
213 { "action": "navigate" },
214 { "action": "wait", "seconds": 2 }
217 "action": "slide_drawer"
222 "element_function": "function(callback) { callback(document.getElementById('content')); }",
225 "left_start_percentage": 0.8,
226 "top_start_percentage": 0.2,
228 "javascript": "!document.getElementById('nav-drawer').active"
234 "url": "file://key_silk_cases/infinite_scrolling.html",
237 "scrollable_element_function": "function(callback) { callback(document.getElementById('container')); }",
242 "disabled": "The page isn't scrollable on large screen sizes (e.g. tablets); crbug.com/333923",
243 "url": "http://forecast.io?scroll",
245 { "action": "navigate" },
246 { "action": "wait", "javascript": "document.getElementById('forecast').style['display'] != 'none'" },
247 { "action": "wait", "seconds": 2 }
250 "action": "scroll_timeline"
254 "direction": "right",
255 "scroll_requires_touch": "true",
256 "scrollable_element_function": "function(callback) { callback(document.getElementsByClassName('scroll')[0]); }"
260 "url": "http://forecast.io?swipe",
262 { "action": "navigate" },
263 { "action": "wait", "javascript": "document.getElementById('forecast').style['display'] != 'none'" },
264 { "action": "wait", "seconds": 2 }
267 "action": "slide_next_7_days"
269 "slide_next_7_days": {
273 "wait_after": { "javascript": "document.getElementsByClassName('grippy')[0].getBoundingClientRect().top == 12" }
277 "url": "http://forecast.io?tap",
278 "disabled": "Synthetic swipe not supported on reference builds. Can be re-enabled after reference build roll",
280 { "action": "navigate" },
281 { "action": "wait", "javascript": "document.getElementById('forecast').style['display'] != 'none'" },
282 { "action": "wait", "seconds": 2 },
283 { "action": "slide_next_7_days" }
288 "slide_next_7_days" : {
292 "wait_after": { "javascript": "document.getElementsByClassName('grippy')[0].getBoundingClientRect().top == 12" }
296 "element_function": "function(callback) { callback(document.getElementsByClassName('day')[2]); }",
297 "wait_after": { "javascript": "document.getElementById('day_timeline').style['display'] == 'block'" }
301 "url": "http://www.google.com/#q=google",
303 { "action": "navigate" },
304 { "action": "wait", "seconds": 3 },
305 { "action": "scroll_knowledge_card_to_top" }
308 "action": "expand_knowledge_card"
310 "scroll_knowledge_card_to_top": {
312 "_comment": "scroll until the knowledge card is at the top",
313 "scroll_distance_function": "function() { return document.getElementById('kno-result').getBoundingClientRect().top - document.body.scrollTop; }"
315 "expand_knowledge_card": {
317 "_comment": "expand card",
318 "element_function": "function(callback) { callback(document.getElementsByClassName('vk_arc')[0]); }",
319 "wait_after": { "seconds": 2 }
323 "url": "http://pr.gg/scroll6.html",
325 { "action": "navigate" },
326 { "action": "wait", "seconds": 1 }
330 "scrollable_element_function": "function(callback) { callback(document.getElementsByClassName('container')[0]); }"
334 "disabled": "Times out on Windows; crbug.com/338838",
335 "url": "http://plus.google.com/app/basic/stream",
336 "credentials": "google",
338 { "action": "navigate" },
339 { "action": "wait", "javascript": "document.getElementsByClassName('fHa').length > 0" },
340 { "action": "wait", "seconds": 2 }
344 "scrollable_element_function": "function(callback) { callback(document.getElementById('mainContent')); }"
348 "url": "http://jsbin.com/UVIgUTa/6/quiet",
351 "scroll_requires_touch": true,
353 "scroll_distance_function": "function() { return window.innerHeight / 2; }",
354 "wait_after": { "seconds": 1 }
358 "url": "http://mobile-news.sandbox.google.com/news/pt1",
359 "why": "Google News: accelerated scrolling version",
361 { "action": "navigate" },
362 { "action": "wait", "seconds": 10 }
366 "url": "http://mobile-news.sandbox.google.com/news/pt0?scroll",
367 "why": "Google News: this iOS version is slower than accelerated scrolling",
369 { "action": "navigate" },
370 { "action": "wait", "javascript": "document.getElementById(':h') != null" },
371 { "action": "wait", "seconds": 1 }
375 "scroll_requires_touch": true,
376 "scrollable_element_function": "function(callback) { callback(document.getElementById(':5')); }",
377 "scroll_distance_function": "function() { return 2500; }"
381 "url": "http://mobile-news.sandbox.google.com/news/pt0?swipe",
383 { "action": "navigate" },
384 { "action": "wait", "javascript": "document.getElementById(':h') != null" },
385 { "action": "wait", "seconds": 1 }
391 "element_function": "function(callback) { callback(document.getElementById(':f')); }",
392 "wait_after": { "seconds": 1 }
396 "url": "http://s.codepen.io/befamous/fullpage/pFsqb?scroll",
397 "why": "famo.us twitter demo",
399 { "action": "navigate" },
400 { "action": "wait", "javascript": "document.getElementsByClassName('tweet').length > 0" },
401 { "action": "wait", "seconds": 1 }
405 "scroll_distance_function": "function() { return 5000; }"
409 "disabled": "Android Chrome freezes; crbug.com/335772",
410 "url": "http://s.codepen.io/befamous/fullpage/pFsqb?flip",
411 "why": "famo.us twitter demo",
413 { "action": "navigate" },
414 { "action": "wait", "javascript": "document.getElementsByClassName('tweet').length > 0" }
418 "element_function": "function(callback) { callback(document.getElementsByClassName('navigation')[2]); }",
419 "wait_after": { "javascript": "document.getElementsByClassName('header')[0].getBoundingClientRect().top == 0" }
423 "disabled": "Android Chrome freezes; crbug.com/335772",
424 "url": "http://s.codepen.io/befamous/fullpage/kbxnH?scroll",
425 "why": "famo.us lightbox demo",
428 "scrollable_element_function": "function(callback) { callback(document.getElementsByClassName('container')[0]); }"
432 "disabled": "Android Chrome freezes; crbug.com/335772",
433 "url": "http://s.codepen.io/befamous/fullpage/kbxnH?select",
434 "why": "famo.us lightbox demo",
437 "element_function": "function(callback) { callback(document.getElementsByClassName('surface')[2]); }",
438 "_comment": "The wait_after condition is split into a condition for phones and portrait tablets, and one for landscape tablets",
439 "wait_after": { "javascript": "document.getElementsByClassName('surface')[1].getBoundingClientRect().left == 860 || Math.abs(document.getElementsByClassName('lightbox-title')[0].getBoundingClientRect().left - 907.77) < 0.1" }
443 "url": "http://famo.us?scroll",
444 "disabled": "Times out",
446 { "action": "navigate" },
447 { "action": "wait", "seconds": 2 },
448 { "action": "close_signup_box" }
452 "direction": "right",
453 "scroll_distance_function": "function() { return 5000; }"
455 "close_signup_box": {
457 "element_function": "function(callback) { callback(document.getElementsByClassName('signup-hide')[0]); }",
458 "wait_after": { "javascript": "document.getElementsByClassName('signup-hide')[0].getBoundingClientRect().left < 0" }
462 "url": "http://famo.us?tap",
463 "disabled": "Times out",
465 { "action": "navigate" },
466 { "action": "wait", "seconds": 2 },
467 { "action": "close_signup_box" }
471 "element_function": "function(callback) { callback(document.getElementsByClassName('periodic-item')[47]); }",
472 "wait_after": { "seconds": 3 }
474 "close_signup_box": {
476 "element_function": "function(callback) { callback(document.getElementsByClassName('signup-hide')[0]); }",
477 "wait_after": { "javascript": "document.getElementsByClassName('signup-hide')[0].getBoundingClientRect().left < 0" }