sproutcore 1.10.0.rc.3 → 1.10.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (161) hide show
  1. checksums.yaml +8 -8
  2. data/VERSION.yml +1 -1
  3. data/lib/buildtasks/manifest.rake +3 -2
  4. data/lib/frameworks/sproutcore/Buildfile +3 -1
  5. data/lib/frameworks/sproutcore/CHANGELOG.md +26 -2
  6. data/lib/frameworks/sproutcore/apps/showcase/resources/main_page.js +3 -0
  7. data/lib/frameworks/sproutcore/apps/showcase/views/views_item_view.js +1 -1
  8. data/lib/frameworks/sproutcore/apps/welcome/english.lproj/main_page.js +3 -0
  9. data/lib/frameworks/sproutcore/frameworks/bootstrap/system/browser.js +5 -5
  10. data/lib/frameworks/sproutcore/frameworks/bootstrap/tests/system/browser.js +9 -0
  11. data/lib/frameworks/sproutcore/frameworks/core_foundation/panes/pane_statechart.js +2 -2
  12. data/lib/frameworks/sproutcore/frameworks/core_foundation/system/browser.js +6 -0
  13. data/lib/frameworks/sproutcore/frameworks/core_foundation/system/root_responder.js +17 -55
  14. data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/animation.js +57 -0
  15. data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/isVisible.js +24 -0
  16. data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/view_states_test.js +31 -13
  17. data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view.js +8 -5
  18. data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/animation.js +24 -20
  19. data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/layout.js +39 -29
  20. data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/statechart.js +400 -242
  21. data/lib/frameworks/sproutcore/frameworks/datastore/models/record.js +37 -32
  22. data/lib/frameworks/sproutcore/frameworks/datastore/models/record_attribute.js +1 -8
  23. data/lib/frameworks/sproutcore/frameworks/desktop/panes/modal.js +3 -2
  24. data/lib/frameworks/sproutcore/frameworks/desktop/panes/panel.js +4 -5
  25. data/lib/frameworks/sproutcore/frameworks/desktop/tests/panes/panel/ui.js +53 -6
  26. data/lib/frameworks/sproutcore/frameworks/desktop/views/collection.js +9 -3
  27. data/lib/frameworks/sproutcore/frameworks/desktop/views/grid.js +1 -1
  28. data/lib/frameworks/sproutcore/frameworks/desktop/views/scroll.js +16 -12
  29. data/lib/frameworks/sproutcore/frameworks/desktop/views/scroller.js +16 -2
  30. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/auto_resize.js +10 -8
  31. data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/auto_resize_test.js +102 -0
  32. data/lib/frameworks/sproutcore/frameworks/foundation/tests/validators/password.js +15 -7
  33. data/lib/frameworks/sproutcore/frameworks/runtime/system/run_loop.js +2 -2
  34. data/lib/frameworks/sproutcore/frameworks/testing/system/runner.js +4 -0
  35. data/lib/frameworks/sproutcore/phantomjs/minimist.js +181 -0
  36. data/lib/frameworks/sproutcore/phantomjs/q.js +1937 -0
  37. data/lib/frameworks/sproutcore/phantomjs/test_runner.js +733 -0
  38. data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/44px/button.css +2 -2
  39. data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/button.css +11 -11
  40. data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/button.css +5 -5
  41. data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/jumbo/button.css +3 -3
  42. data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/small/button.css +3 -3
  43. data/lib/frameworks/sproutcore/themes/ace/resources/button/popup/select.css +1 -1
  44. data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/checkbox.css +3 -3
  45. data/lib/frameworks/sproutcore/themes/ace/resources/collection/source-list/source_list_view.css +4 -4
  46. data/lib/frameworks/sproutcore/themes/ace/resources/disclosure/ace/disclosure.css +6 -6
  47. data/lib/frameworks/sproutcore/themes/ace/resources/imagebutton/ace/imagebutton.css +5 -5
  48. data/lib/frameworks/sproutcore/themes/ace/resources/menu/menu.css +16 -16
  49. data/lib/frameworks/sproutcore/themes/ace/resources/picker/popover/popover.css +42 -42
  50. data/lib/frameworks/sproutcore/themes/ace/resources/progress/ace/progress.css +19 -19
  51. data/lib/frameworks/sproutcore/themes/ace/resources/radio/radio.css +12 -12
  52. data/lib/frameworks/sproutcore/themes/ace/resources/scroller/horizontal/horizontal.css +7 -7
  53. data/lib/frameworks/sproutcore/themes/ace/resources/scroller/horizontal/horizontal_touch.css +18 -18
  54. data/lib/frameworks/sproutcore/themes/ace/resources/scroller/vertical/vertical.css +8 -8
  55. data/lib/frameworks/sproutcore/themes/ace/resources/scroller/vertical/vertical_touch.css +16 -16
  56. data/lib/frameworks/sproutcore/themes/ace/resources/segmented/44px/segmented.css +2 -2
  57. data/lib/frameworks/sproutcore/themes/ace/resources/segmented/segmented.css +13 -13
  58. data/lib/frameworks/sproutcore/themes/ace/resources/slider/ace/14px/slider.css +11 -11
  59. data/lib/frameworks/sproutcore/themes/ace/resources/slider/ace/16px/slider.css +11 -11
  60. data/lib/frameworks/sproutcore/themes/ace/resources/slider/ace/22px/slider.css +11 -11
  61. data/lib/frameworks/sproutcore/themes/ace/resources/split/split.css +6 -6
  62. data/lib/frameworks/sproutcore/themes/ace/resources/toolbar/toolbar.css +2 -2
  63. data/lib/frameworks/sproutcore/themes/iphone_theme/english.lproj/button.css +3 -3
  64. data/lib/frameworks/sproutcore/themes/legacy_theme/english.lproj/button.css +18 -18
  65. data/lib/frameworks/sproutcore/themes/legacy_theme/english.lproj/checkbox.css +7 -7
  66. data/lib/frameworks/sproutcore/themes/legacy_theme/english.lproj/collection.css +2 -2
  67. data/lib/frameworks/sproutcore/themes/legacy_theme/english.lproj/core.css +7 -7
  68. data/lib/frameworks/sproutcore/themes/legacy_theme/english.lproj/disclosure.css +3 -3
  69. data/lib/frameworks/sproutcore/themes/legacy_theme/english.lproj/list_item.css +4 -4
  70. data/lib/frameworks/sproutcore/themes/legacy_theme/english.lproj/menu.css +3 -3
  71. data/lib/frameworks/sproutcore/themes/legacy_theme/english.lproj/menu_item_view.css +5 -5
  72. data/lib/frameworks/sproutcore/themes/legacy_theme/english.lproj/panel.css +7 -7
  73. data/lib/frameworks/sproutcore/themes/legacy_theme/english.lproj/picker.css +3 -3
  74. data/lib/frameworks/sproutcore/themes/legacy_theme/english.lproj/progress.css +5 -5
  75. data/lib/frameworks/sproutcore/themes/legacy_theme/english.lproj/radio.css +4 -4
  76. data/lib/frameworks/sproutcore/themes/legacy_theme/english.lproj/scroller.css +3 -3
  77. data/lib/frameworks/sproutcore/themes/legacy_theme/english.lproj/segmented.css +7 -7
  78. data/lib/frameworks/sproutcore/themes/legacy_theme/english.lproj/slider.css +2 -2
  79. data/lib/frameworks/sproutcore/themes/legacy_theme/english.lproj/split_view.css +2 -2
  80. data/lib/frameworks/sproutcore/themes/legacy_theme/english.lproj/toolbar.css +3 -3
  81. data/lib/sproutcore/tools/server.rb +9 -3
  82. metadata +8 -83
  83. data/lib/frameworks/sproutcore/design/Assorted Images/sproutcore-startup-landscape.jpg +0 -0
  84. data/lib/frameworks/sproutcore/design/Assorted Images/sproutcore-startup-landscape.png +0 -0
  85. data/lib/frameworks/sproutcore/design/Assorted Images/sproutcore-startup-portrait.jpg +0 -0
  86. data/lib/frameworks/sproutcore/design/Assorted Images/sproutcore-startup-portrait.png +0 -0
  87. data/lib/frameworks/sproutcore/design/Assorted Images/sproutcore-startup.png +0 -0
  88. data/lib/frameworks/sproutcore/design/Record State Table.numbers +0 -0
  89. data/lib/frameworks/sproutcore/design/greenhouse-statechart.pdf +0 -0
  90. data/lib/frameworks/sproutcore/tests/phantomjs_runner.phantomjs +0 -611
  91. data/lib/frameworks/sproutcore/themes/ace/designs/dark.png +0 -0
  92. data/lib/frameworks/sproutcore/themes/ace/designs/light.png +0 -0
  93. data/lib/frameworks/sproutcore/themes/ace/designs/psds/panel/PanelPane.opacity +0 -0
  94. data/lib/frameworks/sproutcore/themes/ace/designs/psds/panel/Pointers.opacity +0 -0
  95. data/lib/frameworks/sproutcore/themes/ace/designs/switch/switch_handle.png +0 -0
  96. data/lib/frameworks/sproutcore/themes/ace/designs/switch/switch_off.png +0 -0
  97. data/lib/frameworks/sproutcore/themes/ace/designs/switch/switch_on.png +0 -0
  98. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/16/10.png +0 -0
  99. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/16/100.png +0 -0
  100. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/16/102.png +0 -0
  101. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/16/110.png +0 -0
  102. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/16/120.png +0 -0
  103. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/16/127.png +0 -0
  104. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/16/18.png +0 -0
  105. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/16/19.png +0 -0
  106. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/16/2.png +0 -0
  107. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/16/24.png +0 -0
  108. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/16/26.png +0 -0
  109. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/16/27.png +0 -0
  110. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/16/28.png +0 -0
  111. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/16/29.png +0 -0
  112. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/16/30.png +0 -0
  113. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/16/31.png +0 -0
  114. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/16/33.png +0 -0
  115. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/16/37.png +0 -0
  116. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/16/41.png +0 -0
  117. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/16/99.png +0 -0
  118. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/24/10.png +0 -0
  119. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/24/100.png +0 -0
  120. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/24/102.png +0 -0
  121. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/24/110.png +0 -0
  122. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/24/120.png +0 -0
  123. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/24/127.png +0 -0
  124. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/24/18.png +0 -0
  125. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/24/19.png +0 -0
  126. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/24/2.png +0 -0
  127. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/24/24.png +0 -0
  128. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/24/26.png +0 -0
  129. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/24/27.png +0 -0
  130. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/24/28.png +0 -0
  131. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/24/29.png +0 -0
  132. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/24/30.png +0 -0
  133. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/24/31.png +0 -0
  134. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/24/33.png +0 -0
  135. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/24/37.png +0 -0
  136. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/24/41.png +0 -0
  137. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/24/99.png +0 -0
  138. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/32/10.png +0 -0
  139. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/32/100.png +0 -0
  140. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/32/102.png +0 -0
  141. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/32/110.png +0 -0
  142. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/32/120.png +0 -0
  143. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/32/127.png +0 -0
  144. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/32/18.png +0 -0
  145. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/32/19.png +0 -0
  146. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/32/2.png +0 -0
  147. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/32/24.png +0 -0
  148. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/32/26.png +0 -0
  149. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/32/27.png +0 -0
  150. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/32/28.png +0 -0
  151. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/32/29.png +0 -0
  152. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/32/30.png +0 -0
  153. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/32/31.png +0 -0
  154. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/32/33.png +0 -0
  155. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/32/37.png +0 -0
  156. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/32/41.png +0 -0
  157. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/32/99.png +0 -0
  158. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/48/10.png +0 -0
  159. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/48/18.png +0 -0
  160. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/48/19.png +0 -0
  161. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/icons/48/2.png +0 -0
@@ -1,611 +0,0 @@
1
- function waitFor(testFx, onReady, timeOutMillis) {
2
- var maxtimeOutMillis = timeOutMillis ? timeOutMillis : 30000, //< Default Max Timout is 30s
3
- start = new Date().getTime(),
4
- condition = false,
5
- interval = setInterval(function() {
6
- if ( (new Date().getTime() - start < maxtimeOutMillis) && !condition ) {
7
- // If not time-out yet and condition not yet fulfilled
8
- condition = (typeof(testFx) === "string" ? eval(testFx) : testFx()); //< defensive code
9
- } else {
10
- if(!condition) {
11
- // If condition still not fulfilled (timeout but condition is 'false')
12
- console.log("'waitFor()' timeout ("+(new Date().getTime() - start)+"ms elapsed)");
13
- phantom.exit(-1);
14
- } else {
15
- // Condition fulfilled (timeout and/or condition is 'true')
16
- typeof(onReady) === "string" ? eval(onReady) : onReady(); //< Do what it's supposed to do once the condition is fulfilled
17
- clearInterval(interval); //< Stop this interval
18
- }
19
- }
20
- }, 250); //< repeat check every 250ms
21
- };
22
-
23
- var env = require('system').env;
24
- var args = require('system').args;
25
- var fs = require('fs');
26
-
27
- var travis=env['TRAVIS_JOB_ID']?env['TRAVIS_JOB_ID']:false,
28
- verbose=env['VERBOSE']?env['VERBOSE']:false,
29
- port=env['PORT']?env['PORT']:4020,
30
- host=env['IP']?env['IP']:"127.0.0.1",
31
- filter=(args.length === 2 ? new RegExp(args[1]) : false);
32
-
33
- var urls=[
34
- {url:'sproutcore/core_foundation/en/current/tests/views/pane/layout.html'},
35
- {url:'sproutcore/core_foundation/en/current/tests/views/pane/sendEvent.html'},
36
- {url:'sproutcore/core_foundation/en/current/tests/views/pane/firstResponder.html'},
37
- {url:'sproutcore/core_foundation/en/current/tests/views/pane/keyPane.html'},
38
- {url:'sproutcore/core_foundation/en/current/tests/views/pane/child_view.html'},
39
- {url:'sproutcore/core_foundation/en/current/tests/views/pane/append_remove.html'},
40
- {url:'sproutcore/core_foundation/en/current/tests/views/main_pane.html'},
41
- {url:'sproutcore/core_foundation/en/current/tests/views/view/didAppendToDocument.html'},
42
- {url:'sproutcore/core_foundation/en/current/tests/views/view/replaceChild.html'},
43
- {url:'sproutcore/core_foundation/en/current/tests/views/view/enabled_states_test.html'},
44
- {url:'sproutcore/core_foundation/en/current/tests/views/view/render_delegate_support.html'},
45
- {url:'sproutcore/core_foundation/en/current/tests/views/view/render.html'},
46
- {url:'sproutcore/core_foundation/en/current/tests/views/view/destroy.html'},
47
- {url:'sproutcore/core_foundation/en/current/tests/views/view/build_children.html'},
48
- {url:'sproutcore/core_foundation/en/current/tests/views/view/init.html'},
49
- {url:'sproutcore/core_foundation/en/current/tests/views/view/convertFrames.html'},
50
- {url:'sproutcore/core_foundation/en/current/tests/views/view/removeChild.html'},
51
- {url:'sproutcore/core_foundation/en/current/tests/views/view/static_layout.html'},
52
- {url:'sproutcore/core_foundation/en/current/tests/views/view/view_states_test.html'},
53
- {url:'sproutcore/core_foundation/en/current/tests/views/view/layer.html'},
54
- {url:'sproutcore/core_foundation/en/current/tests/views/view/insertBefore.html'},
55
- {url:'sproutcore/core_foundation/en/current/tests/views/view/findLayerInParentLayer.html'},
56
- {url:'sproutcore/core_foundation/en/current/tests/views/view/createLayer.html'},
57
- {url:'sproutcore/core_foundation/en/current/tests/views/view/childViewLayout_test.html'},
58
- {url:'sproutcore/core_foundation/en/current/tests/views/view/theme.html'},
59
- {url:'sproutcore/core_foundation/en/current/tests/views/view/touch.html'},
60
- {url:'sproutcore/core_foundation/en/current/tests/views/view/convertLayouts.html'},
61
- {url:'sproutcore/core_foundation/en/current/tests/views/view/class_name_bindings_test.html'},
62
- {url:'sproutcore/core_foundation/en/current/tests/views/view/attribute_bindings_test.html'},
63
- {url:'sproutcore/core_foundation/en/current/tests/views/view/animation.html'},
64
- {url:'sproutcore/core_foundation/en/current/tests/views/view/layoutChildViews.html'},
65
- {url:'sproutcore/core_foundation/en/current/tests/views/view/border_frame_test.html'},
66
- {url:'sproutcore/core_foundation/en/current/tests/views/view/layoutStyle.html'},
67
- {url:'sproutcore/core_foundation/en/current/tests/views/view/clippingFrame.html'},
68
- {url:'sproutcore/core_foundation/en/current/tests/views/view/view.html'},
69
- {url:'sproutcore/core_foundation/en/current/tests/views/view/createChildViews.html'},
70
- {url:'sproutcore/core_foundation/en/current/tests/views/view/layoutDidChange.html'},
71
- {url:'sproutcore/core_foundation/en/current/tests/views/view/viewDidResize.html'},
72
- {url:'sproutcore/core_foundation/en/current/tests/views/view/updateLayer.html'},
73
- {url:'sproutcore/core_foundation/en/current/tests/views/view/keyboard.html'},
74
- {url:'sproutcore/core_foundation/en/current/tests/views/view/destroyLayer.html'},
75
- {url:'sproutcore/core_foundation/en/current/tests/views/view/isVisibleInWindow.html'},
76
- {url:'sproutcore/core_foundation/en/current/tests/views/view/build.html'},
77
- {url:'sproutcore/core_foundation/en/current/tests/views/view/isVisible.html'},
78
- {url:'sproutcore/core_foundation/en/current/tests/system/sparse_array.html'},
79
- {url:'sproutcore/core_foundation/en/current/tests/system/utils/rect.html'},
80
- {url:'sproutcore/core_foundation/en/current/tests/system/utils/offset.html'},
81
- {url:'sproutcore/core_foundation/en/current/tests/system/utils/normalizeURL.html'},
82
- {url:'sproutcore/core_foundation/en/current/tests/system/core_query/within.html'},
83
- {url:'sproutcore/core_foundation/en/current/tests/system/browser.html'},
84
- {url:'sproutcore/core_foundation/en/current/tests/system/builder.html'},
85
- {url:'sproutcore/core_foundation/en/current/tests/system/event.html'},
86
- {url:'sproutcore/core_foundation/en/current/tests/system/theme.html'},
87
- {url:'sproutcore/core_foundation/en/current/tests/system/render_context/join.html'},
88
- {url:'sproutcore/core_foundation/en/current/tests/system/render_context/push_text.html'},
89
- {url:'sproutcore/core_foundation/en/current/tests/system/render_context/init.html'},
90
- {url:'sproutcore/core_foundation/en/current/tests/system/render_context/element.html'},
91
- {url:'sproutcore/core_foundation/en/current/tests/system/render_context/helpers_basic.html'},
92
- {url:'sproutcore/core_foundation/en/current/tests/system/render_context/update.html'},
93
- {url:'sproutcore/core_foundation/en/current/tests/system/render_context/helpers_style.html'},
94
- {url:'sproutcore/core_foundation/en/current/tests/system/render_context/tag.html'},
95
- {url:'sproutcore/core_foundation/en/current/tests/system/render_context/begin.html'},
96
- {url:'sproutcore/core_foundation/en/current/tests/system/render_context/helpers_className.html'},
97
- {url:'sproutcore/core_foundation/en/current/tests/system/render_context/escape_html.html'},
98
- {url:'sproutcore/core_foundation/en/current/tests/system/render_context/helpers_attr.html'},
99
- {url:'sproutcore/core_foundation/en/current/tests/system/render_context/end.html'},
100
- {url:'sproutcore/core_foundation/en/current/tests/system/render_context/get.html'},
101
- {url:'sproutcore/core_foundation/en/current/tests/system/timer/invokeLater.html'},
102
- {url:'sproutcore/core_foundation/en/current/tests/system/timer/isPaused.html'},
103
- {url:'sproutcore/core_foundation/en/current/tests/system/timer/performAction.html'},
104
- {url:'sproutcore/core_foundation/en/current/tests/system/timer/schedule.html'},
105
- {url:'sproutcore/core_foundation/en/current/tests/system/timer/invalidate.html'},
106
- {url:'sproutcore/core_foundation/en/current/tests/system/platform.html'},
107
- {url:'sproutcore/core_foundation/en/current/tests/system/root_responder/makeMenuPane.html'},
108
- {url:'sproutcore/core_foundation/en/current/tests/system/root_responder/targetForAction.html'},
109
- {url:'sproutcore/core_foundation/en/current/tests/system/root_responder/makeKeyPane.html'},
110
- {url:'sproutcore/core_foundation/en/current/tests/system/root_responder/makeMainPane.html'},
111
- {url:'sproutcore/core_foundation/en/current/tests/system/root_responder/root_responder.html'},
112
- {url:'sproutcore/core_foundation/en/current/tests/system/selection_set/indexSetForSource.html'},
113
- {url:'sproutcore/core_foundation/en/current/tests/system/selection_set/isEqual.html'},
114
- {url:'sproutcore/core_foundation/en/current/tests/system/selection_set/copy.html'},
115
- {url:'sproutcore/core_foundation/en/current/tests/system/selection_set/remove.html'},
116
- {url:'sproutcore/core_foundation/en/current/tests/system/selection_set/add.html'},
117
- {url:'sproutcore/core_foundation/en/current/tests/system/ready/done.html'},
118
- {url:'sproutcore/core_foundation/en/current/tests/system/color.html'},
119
- {url:'sproutcore/core_foundation/en/current/tests/system/cursor.html'},
120
- {url:'sproutcore/core_foundation/en/current/tests/system/locale.html'},
121
- {url:'sproutcore/core_foundation/en/current/tests/mixins/string.html'},
122
- {url:'sproutcore/core_foundation/en/current/tests/mixins/action_support.html'},
123
- {url:'sproutcore/core_foundation/en/current/tests/mixins/responder_context.html'},
124
- {url:'sproutcore/core_foundation/en/current/tests/controllers/array/single_case.html'},
125
- {url:'sproutcore/core_foundation/en/current/tests/controllers/array/selection_support.html'},
126
- {url:'sproutcore/core_foundation/en/current/tests/controllers/array/null_case.html'},
127
- {url:'sproutcore/core_foundation/en/current/tests/controllers/array/array_case.html'},
128
- {url:'sproutcore/core_foundation/en/current/tests/controllers/array/enum_case.html'},
129
- {url:'sproutcore/core_foundation/en/current/tests/controllers/object/single_case.html'},
130
- {url:'sproutcore/core_foundation/en/current/tests/controllers/object/empty_case.html'},
131
- {url:'sproutcore/core_foundation/en/current/tests/controllers/object/content_destroyed.html'},
132
- {url:'sproutcore/core_foundation/en/current/tests/controllers/object/single_enumerable_case.html'},
133
- {url:'sproutcore/core_foundation/en/current/tests/controllers/object/multiple_case.html'},
134
- {url:'sproutcore/core_foundation/en/current/tests/ext/object_test.html'},
135
- {url:'sproutcore/ajax/en/current/tests/system/request.html'},
136
- {url:'sproutcore/media/en/current/tests/media_capabilities.html'},
137
- {url:'sproutcore/designer/en/current/tests/designers/view_designer.html'},
138
- {url:'sproutcore/designer/en/current/tests/coders/page.html'},
139
- {url:'sproutcore/formatters/en/current/tests/date_formatter.html'},
140
- {url:'sproutcore/foundation/en/current/tests/debug/control_test_pane/methods.html'},
141
- {url:'sproutcore/foundation/en/current/tests/debug/control_test_pane/ui.html'},
142
- {url:'sproutcore/foundation/en/current/tests/views/label/ui.html'},
143
- {url:'sproutcore/foundation/en/current/tests/views/text_field/methods.html'},
144
- {url:'sproutcore/foundation/en/current/tests/views/text_field/nextValidKeyView.html'},
145
- {url:'sproutcore/foundation/en/current/tests/views/text_field/ui.html'},
146
- {url:'sproutcore/foundation/en/current/tests/views/container/methods.html'},
147
- {url:'sproutcore/foundation/en/current/tests/views/container/transition_test.html'},
148
- {url:'sproutcore/foundation/en/current/tests/views/container/ui.html'},
149
- {url:'sproutcore/foundation/en/current/tests/views/image/ui.html'},
150
- {url:'sproutcore/foundation/en/current/tests/delegates/inline_text_field/inline_text_field.html'},
151
- {url:'sproutcore/foundation/en/current/tests/system/utils/pointInElement.html'},
152
- {url:'sproutcore/foundation/en/current/tests/system/utils/range.html'},
153
- {url:'sproutcore/foundation/en/current/tests/system/image_queue.html'},
154
- {url:'sproutcore/foundation/en/current/tests/system/core_query/setClass.html'},
155
- {url:'sproutcore/foundation/en/current/tests/system/string.html'},
156
- {url:'sproutcore/foundation/en/current/tests/system/app_cache_test.html'},
157
- {url:'sproutcore/foundation/en/current/tests/system/math.html'},
158
- {url:'sproutcore/foundation/en/current/tests/system/cookie.html'},
159
- {url:'sproutcore/foundation/en/current/tests/system/task_queue.html'},
160
- {url:'sproutcore/foundation/en/current/tests/system/user_defaults.html'},
161
- {url:'sproutcore/foundation/en/current/tests/integration/creating_views.html'},
162
- {url:'sproutcore/foundation/en/current/tests/mixins/inline_editable/commitEditing.html'},
163
- {url:'sproutcore/foundation/en/current/tests/mixins/inline_editable/discardEditing.html'},
164
- {url:'sproutcore/foundation/en/current/tests/mixins/inline_editable/beginEditing.html'},
165
- {url:'sproutcore/foundation/en/current/tests/mixins/flowed_layout/tests.html'},
166
- {url:'sproutcore/foundation/en/current/tests/mixins/inline_editor/commitEditing.html'},
167
- {url:'sproutcore/foundation/en/current/tests/mixins/inline_editor/discardEditing.html'},
168
- {url:'sproutcore/foundation/en/current/tests/mixins/inline_editor/beginEditing.html'},
169
- {url:'sproutcore/foundation/en/current/tests/mixins/staticLayout.html'},
170
- {url:'sproutcore/foundation/en/current/tests/mixins/control/displayProperties.html'},
171
- {url:'sproutcore/foundation/en/current/tests/mixins/validatable/ui.html'},
172
- {url:'sproutcore/foundation/en/current/tests/mixins/content_value_support/content.html'},
173
- {url:'sproutcore/foundation/en/current/tests/mixins/inline_text_field/api.html'},
174
- {url:'sproutcore/foundation/en/current/tests/mixins/content_display.html'},
175
- {url:'sproutcore/foundation/en/current/tests/controllers/tree/selection_support.html'},
176
- {url:'sproutcore/foundation/en/current/tests/controllers/tree/outline_case.html'},
177
- {url:'sproutcore/foundation/en/current/tests/validators/validator.html'},
178
- {url:'sproutcore/foundation/en/current/tests/validators/date.html'},
179
- {url:'sproutcore/foundation/en/current/tests/validators/number.html'},
180
- {url:'sproutcore/foundation/en/current/tests/validators/not_empty.html'},
181
- {url:'sproutcore/foundation/en/current/tests/validators/credit_card.html'},
182
- {url:'sproutcore/foundation/en/current/tests/validators/password.html'},
183
- {url:'sproutcore/foundation/en/current/tests/render_delegates/render_delegate.html'},
184
- {url:'sproutcore/foundation/en/current/tests/private/tree_item_observer/flat_case.html'},
185
- {url:'sproutcore/foundation/en/current/tests/private/tree_item_observer/group_case.html'},
186
- {url:'sproutcore/foundation/en/current/tests/private/tree_item_observer/outline_case.html'},
187
- {url:'sproutcore/runtime/en/current/tests/system/run_loop.html'},
188
- {url:'sproutcore/runtime/en/current/tests/system/string.html'},
189
- {url:'sproutcore/runtime/en/current/tests/system/range_observer/create.html'},
190
- {url:'sproutcore/runtime/en/current/tests/system/range_observer/destroy.html'},
191
- {url:'sproutcore/runtime/en/current/tests/system/range_observer/objectPropertyDidChange.html'},
192
- {url:'sproutcore/runtime/en/current/tests/system/range_observer/rangeDidChange.html'},
193
- {url:'sproutcore/runtime/en/current/tests/system/range_observer/update.html'},
194
- {url:'sproutcore/runtime/en/current/tests/system/observer_set.html'},
195
- {url:'sproutcore/runtime/en/current/tests/system/json.html'},
196
- {url:'sproutcore/runtime/en/current/tests/system/logger.html'},
197
- {url:'sproutcore/runtime/en/current/tests/system/error.html'},
198
- {url:'sproutcore/runtime/en/current/tests/system/set.html'},
199
- {url:'sproutcore/runtime/en/current/tests/system/binding.html'},
200
- {url:'sproutcore/runtime/en/current/tests/system/index_set/create.html'},
201
- {url:'sproutcore/runtime/en/current/tests/system/index_set/removeEach.html'},
202
- {url:'sproutcore/runtime/en/current/tests/system/index_set/clone.html'},
203
- {url:'sproutcore/runtime/en/current/tests/system/index_set/max.html'},
204
- {url:'sproutcore/runtime/en/current/tests/system/index_set/addEach.html'},
205
- {url:'sproutcore/runtime/en/current/tests/system/index_set/rangeStartForIndex.html'},
206
- {url:'sproutcore/runtime/en/current/tests/system/index_set/contains.html'},
207
- {url:'sproutcore/runtime/en/current/tests/system/index_set/without.html'},
208
- {url:'sproutcore/runtime/en/current/tests/system/index_set/indexAfter.html'},
209
- {url:'sproutcore/runtime/en/current/tests/system/index_set/intersects.html'},
210
- {url:'sproutcore/runtime/en/current/tests/system/index_set/infinite.html'},
211
- {url:'sproutcore/runtime/en/current/tests/system/index_set/min.html'},
212
- {url:'sproutcore/runtime/en/current/tests/system/index_set/indexBefore.html'},
213
- {url:'sproutcore/runtime/en/current/tests/system/index_set/remove.html'},
214
- {url:'sproutcore/runtime/en/current/tests/system/index_set/add.html'},
215
- {url:'sproutcore/runtime/en/current/tests/system/object/bindings.html'},
216
- {url:'sproutcore/runtime/en/current/tests/system/object/enhance.html'},
217
- {url:'sproutcore/runtime/en/current/tests/system/object/base.html'},
218
- {url:'sproutcore/runtime/en/current/tests/system/object/concatenated_properties.html'},
219
- {url:'sproutcore/runtime/en/current/tests/system/object/mixin.html'},
220
- {url:'sproutcore/runtime/en/current/tests/core/objectForPropertyPath.html'},
221
- {url:'sproutcore/runtime/en/current/tests/core/inspect.html'},
222
- {url:'sproutcore/runtime/en/current/tests/core/keys.html'},
223
- {url:'sproutcore/runtime/en/current/tests/core/requiredObjectForPropertyPath.html'},
224
- {url:'sproutcore/runtime/en/current/tests/core/isArray.html'},
225
- {url:'sproutcore/runtime/en/current/tests/core/clone.html'},
226
- {url:'sproutcore/runtime/en/current/tests/core/guidFor.html'},
227
- {url:'sproutcore/runtime/en/current/tests/core/makeArray.html'},
228
- {url:'sproutcore/runtime/en/current/tests/core/compare.html'},
229
- {url:'sproutcore/runtime/en/current/tests/core/itemType.html'},
230
- {url:'sproutcore/runtime/en/current/tests/core/tupleForPropertyPath.html'},
231
- {url:'sproutcore/runtime/en/current/tests/core/beget.html'},
232
- {url:'sproutcore/runtime/en/current/tests/core/IsEqual.html'},
233
- {url:'sproutcore/runtime/en/current/tests/mixins/enumerable/enumerable_observers.html'},
234
- {url:'sproutcore/runtime/en/current/tests/mixins/enumerable/enumerable.html'},
235
- {url:'sproutcore/runtime/en/current/tests/mixins/array.html'},
236
- {url:'sproutcore/runtime/en/current/tests/mixins/observable/observable.html'},
237
- {url:'sproutcore/runtime/en/current/tests/mixins/observable/chained.html'},
238
- {url:'sproutcore/runtime/en/current/tests/mixins/observable/propertyChanges.html'},
239
- {url:'sproutcore/runtime/en/current/tests/mixins/observable/observersForKey.html'},
240
- {url:'sproutcore/runtime/en/current/tests/mixins/observable/registerDependentKeys.html'},
241
- {url:'sproutcore/runtime/en/current/tests/mixins/propertyChanges.html'},
242
- {url:'sproutcore/runtime/en/current/tests/mixins/array_observers.html'},
243
- {url:'sproutcore/runtime/en/current/tests/mixins/comparable.html'},
244
- {url:'sproutcore/runtime/en/current/tests/private/observer_queue.html'},
245
- {url:'sproutcore/testing/en/current/tests/stub_method.html'},
246
- {url:'sproutcore/testing/en/current/tests/spy_on.html'},
247
- {url:'sproutcore/datastore/en/current/tests/data_sources/cascade.html'},
248
- {url:'sproutcore/datastore/en/current/tests/data_sources/data_source.html'},
249
- {url:'sproutcore/datastore/en/current/tests/data_sources/fixtures.html'},
250
- {url:'sproutcore/datastore/en/current/tests/system/query/containsRecordTypes.html'},
251
- {url:'sproutcore/datastore/en/current/tests/system/query/instance_management.html'},
252
- {url:'sproutcore/datastore/en/current/tests/system/query/evaluation_of_records.html'},
253
- {url:'sproutcore/datastore/en/current/tests/system/query/builders.html'},
254
- {url:'sproutcore/datastore/en/current/tests/system/query/contains.html'},
255
- {url:'sproutcore/datastore/en/current/tests/system/query/compare.html'},
256
- {url:'sproutcore/datastore/en/current/tests/system/query/expandedRecordTypes.html'},
257
- {url:'sproutcore/datastore/en/current/tests/system/query/queryWithScope.html'},
258
- {url:'sproutcore/datastore/en/current/tests/system/query/registered_query_extensions.html'},
259
- {url:'sproutcore/datastore/en/current/tests/system/query/copy.html'},
260
- {url:'sproutcore/datastore/en/current/tests/system/query/registered_comparisons.html'},
261
- {url:'sproutcore/datastore/en/current/tests/system/query/record_type_is.html'},
262
- {url:'sproutcore/datastore/en/current/tests/system/query/evaluation.html'},
263
- {url:'sproutcore/datastore/en/current/tests/system/query/parse.html'},
264
- {url:'sproutcore/datastore/en/current/tests/system/many_array/core_methods.html'},
265
- {url:'sproutcore/datastore/en/current/tests/system/store/core_methods.html'},
266
- {url:'sproutcore/datastore/en/current/tests/system/store/removeDataHash.html'},
267
- {url:'sproutcore/datastore/en/current/tests/system/store/init.html'},
268
- {url:'sproutcore/datastore/en/current/tests/system/store/readDataHash.html'},
269
- {url:'sproutcore/datastore/en/current/tests/system/store/find.html'},
270
- {url:'sproutcore/datastore/en/current/tests/system/store/createRecord.html'},
271
- {url:'sproutcore/datastore/en/current/tests/system/store/retrieveRecord.html'},
272
- {url:'sproutcore/datastore/en/current/tests/system/store/commitRecord.html'},
273
- {url:'sproutcore/datastore/en/current/tests/system/store/destroyRecord.html'},
274
- {url:'sproutcore/datastore/en/current/tests/system/store/commitChangesFromNestedStore.html'},
275
- {url:'sproutcore/datastore/en/current/tests/system/store/error_methods.html'},
276
- {url:'sproutcore/datastore/en/current/tests/system/store/unloadRecord.html'},
277
- {url:'sproutcore/datastore/en/current/tests/system/store/writeDataHash.html'},
278
- {url:'sproutcore/datastore/en/current/tests/system/store/dataHashDidChange.html'},
279
- {url:'sproutcore/datastore/en/current/tests/system/store/loadRecords.html'},
280
- {url:'sproutcore/datastore/en/current/tests/system/store/unloadRecords.html'},
281
- {url:'sproutcore/datastore/en/current/tests/system/store/pushChanges.html'},
282
- {url:'sproutcore/datastore/en/current/tests/system/store/cancelRecord.html'},
283
- {url:'sproutcore/datastore/en/current/tests/system/store/connectDataSource.html'},
284
- {url:'sproutcore/datastore/en/current/tests/system/store/readEditableDataHash.html'},
285
- {url:'sproutcore/datastore/en/current/tests/system/store/pushRelationships.html'},
286
- {url:'sproutcore/datastore/en/current/tests/system/store/loadRecord.html'},
287
- {url:'sproutcore/datastore/en/current/tests/system/store/dataSourceCallbacks.html'},
288
- {url:'sproutcore/datastore/en/current/tests/system/store/recordDidChange.html'},
289
- {url:'sproutcore/datastore/en/current/tests/system/record_array/core_methods.html'},
290
- {url:'sproutcore/datastore/en/current/tests/system/record_array/flush.html'},
291
- {url:'sproutcore/datastore/en/current/tests/system/record_array/error_methods.html'},
292
- {url:'sproutcore/datastore/en/current/tests/system/record_array/array_observers.html'},
293
- {url:'sproutcore/datastore/en/current/tests/system/nested_store/core_methods.html'},
294
- {url:'sproutcore/datastore/en/current/tests/system/nested_store/removeDataHash.html'},
295
- {url:'sproutcore/datastore/en/current/tests/system/nested_store/readDataHash.html'},
296
- {url:'sproutcore/datastore/en/current/tests/system/nested_store/discardChanges.html'},
297
- {url:'sproutcore/datastore/en/current/tests/system/nested_store/commitChangesFromNestedStore.html'},
298
- {url:'sproutcore/datastore/en/current/tests/system/nested_store/writeDataHash.html'},
299
- {url:'sproutcore/datastore/en/current/tests/system/nested_store/chain.html'},
300
- {url:'sproutcore/datastore/en/current/tests/system/nested_store/dataHashDidChange.html'},
301
- {url:'sproutcore/datastore/en/current/tests/system/nested_store/readEditableDataHash.html'},
302
- {url:'sproutcore/datastore/en/current/tests/system/nested_store/commitChanges.html'},
303
- {url:'sproutcore/datastore/en/current/tests/integration/mail_model.html'},
304
- {url:'sproutcore/datastore/en/current/tests/integration/many_array.html'},
305
- {url:'sproutcore/datastore/en/current/tests/integration/contact_model.html'},
306
- {url:'sproutcore/datastore/en/current/tests/integration/cyclical_relationship.html'},
307
- {url:'sproutcore/datastore/en/current/tests/integration/test_runner_model.html'},
308
- {url:'sproutcore/datastore/en/current/tests/models/single_attribute.html'},
309
- {url:'sproutcore/datastore/en/current/tests/models/many_attribute.html'},
310
- {url:'sproutcore/datastore/en/current/tests/models/record/core_methods.html'},
311
- {url:'sproutcore/datastore/en/current/tests/models/record/readAttribute.html'},
312
- {url:'sproutcore/datastore/en/current/tests/models/record/destroy.html'},
313
- {url:'sproutcore/datastore/en/current/tests/models/record/unknownProperty.html'},
314
- {url:'sproutcore/datastore/en/current/tests/models/record/error_methods.html'},
315
- {url:'sproutcore/datastore/en/current/tests/models/record/normalize.html'},
316
- {url:'sproutcore/datastore/en/current/tests/models/record/writeAttribute.html'},
317
- {url:'sproutcore/datastore/en/current/tests/models/record/refresh.html'},
318
- {url:'sproutcore/datastore/en/current/tests/models/record/storeDidChangeProperties.html'},
319
- {url:'sproutcore/datastore/en/current/tests/models/datetime_recordattribute.html'},
320
- {url:'sproutcore/datastore/en/current/tests/models/record_attribute.html'},
321
- {url:'sproutcore/datastore/en/current/tests/models/nested_records/data_store.html'},
322
- {url:'sproutcore/datastore/en/current/tests/models/nested_records/nested_record_array.html'},
323
- {url:'sproutcore/datastore/en/current/tests/models/nested_records/nested_record_array_complex.html'},
324
- {url:'sproutcore/datastore/en/current/tests/models/nested_records/nested_record.html'},
325
- {url:'sproutcore/datastore/en/current/tests/models/nested_records/nested_record_complex.html'},
326
- {url:'sproutcore/statechart/en/current/tests/debug/sequence_matcher.html'},
327
- {url:'sproutcore/statechart/en/current/tests/event_handling/advanced/without_concurrent_states.html'},
328
- {url:'sproutcore/statechart/en/current/tests/event_handling/basic/without_concurrent_states.html'},
329
- {url:'sproutcore/statechart/en/current/tests/event_handling/basic/with_concurrent_states.html'},
330
- {url:'sproutcore/statechart/en/current/tests/event_handling/responder/pane.html'},
331
- {url:'sproutcore/statechart/en/current/tests/event_handling/responder/root_responder.html'},
332
- {url:'sproutcore/statechart/en/current/tests/event_handling/responder/responder_chain.html'},
333
- {url:'sproutcore/statechart/en/current/tests/state/plugin/nesting.html'},
334
- {url:'sproutcore/statechart/en/current/tests/state/plugin/mixin.html'},
335
- {url:'sproutcore/statechart/en/current/tests/state/is_current_state.html'},
336
- {url:'sproutcore/statechart/en/current/tests/state/methods/try_to_handle_event.html'},
337
- {url:'sproutcore/statechart/en/current/tests/state/methods/get_substate.html'},
338
- {url:'sproutcore/statechart/en/current/tests/state/methods/route_triggered.html'},
339
- {url:'sproutcore/statechart/en/current/tests/state/methods/get_state.html'},
340
- {url:'sproutcore/statechart/en/current/tests/state/methods/add_substate.html'},
341
- {url:'sproutcore/statechart/en/current/tests/state/methods/find_first_relative_current_state/with_concurrent.html'},
342
- {url:'sproutcore/statechart/en/current/tests/state/methods/find_first_relative_current_state/without_concurrent.html'},
343
- {url:'sproutcore/statechart/en/current/tests/state/state_observes.html'},
344
- {url:'sproutcore/statechart/en/current/tests/state/initial_substate.html'},
345
- {url:'sproutcore/statechart/en/current/tests/system/state_route_handler_context/methods/retry.html'},
346
- {url:'sproutcore/statechart/en/current/tests/state_transitioning/standard/without_concurrent_states/core.html'},
347
- {url:'sproutcore/statechart/en/current/tests/state_transitioning/standard/without_concurrent_states/context.html'},
348
- {url:'sproutcore/statechart/en/current/tests/state_transitioning/standard/with_concurrent_states/advanced.html'},
349
- {url:'sproutcore/statechart/en/current/tests/state_transitioning/standard/with_concurrent_states/intermediate.html'},
350
- {url:'sproutcore/statechart/en/current/tests/state_transitioning/standard/with_concurrent_states/basic.html'},
351
- {url:'sproutcore/statechart/en/current/tests/state_transitioning/transient/without_concurrent_states.html'},
352
- {url:'sproutcore/statechart/en/current/tests/state_transitioning/history_state/initial_substate/without_concurrent_states.html'},
353
- {url:'sproutcore/statechart/en/current/tests/state_transitioning/history_state/initial_substate/core.html'},
354
- {url:'sproutcore/statechart/en/current/tests/state_transitioning/history_state/standard/without_concurrent_states/core.html'},
355
- {url:'sproutcore/statechart/en/current/tests/state_transitioning/history_state/standard/without_concurrent_states/context.html'},
356
- {url:'sproutcore/statechart/en/current/tests/state_transitioning/history_state/standard/with_concurrent_states.html'},
357
- {url:'sproutcore/statechart/en/current/tests/state_transitioning/async/without_concurrent_states.html'},
358
- {url:'sproutcore/statechart/en/current/tests/state_transitioning/async/core.html'},
359
- {url:'sproutcore/statechart/en/current/tests/state_transitioning/async/with_concurrent_states.html'},
360
- {url:'sproutcore/statechart/en/current/tests/state_transitioning/routing/without_concurrent_states/basic.html'},
361
- {url:'sproutcore/statechart/en/current/tests/state_transitioning/routing/with_concurrent_states/basic.html'},
362
- {url:'sproutcore/statechart/en/current/tests/statechart/create/assigned_root_state.html'},
363
- {url:'sproutcore/statechart/en/current/tests/statechart/create/unassigned_root_state.html'},
364
- {url:'sproutcore/statechart/en/current/tests/statechart/destroy.html'},
365
- {url:'sproutcore/statechart/en/current/tests/statechart/methods/get_state.html'},
366
- {url:'sproutcore/statechart/en/current/tests/statechart/methods/invoke_state_method.html'},
367
- {url:'sproutcore/statechart/en/current/tests/statechart/owner.html'},
368
- {url:'sproutcore/statechart/en/current/tests/statechart/respond_to_event.html'},
369
- {url:'sproutcore/statechart/en/current/tests/private/state_path_matcher.html'},/*
370
- {url:'sproutcore/experimental/en/current/tests/frameworks/select_view/views/popup_button/menu_setup.html'},
371
- {url:'sproutcore/experimental/frameworks/select_view/en/current/tests/views/popup_button/show_menu.html'},
372
- {url:'sproutcore/experimental/frameworks/select_view/en/current/tests/views/select/selected_item.html'},
373
- {url:'sproutcore/experimental/frameworks/select_view/en/current/tests/views/select/menu_width.html'},
374
- {url:'sproutcore/experimental/frameworks/select_view/en/current/tests/mixins/select_view_menu/check_selected.html'},
375
- {url:'sproutcore/experimental/frameworks/select_view/en/current/tests/mixins/select_view_menu/bindings.html'},
376
- {url:'sproutcore/experimental/frameworks/select_view/en/current/tests/ext/menu_resizing.html'},
377
- {url:'sproutcore/experimental/frameworks/forms/en/current/tests/views/form_row.html'},
378
- {url:'sproutcore/experimental/frameworks/forms/en/current/tests/views/form.html'},
379
- {url:'sproutcore/experimental/frameworks/forms/en/current/tests/mixins/edit_mode.html'},
380
- {url:'sproutcore/experimental/frameworks/forms/en/current/tests/mixins/emptiness.html'},
381
- {url:'sproutcore/experimental/frameworks/polymorphism/en/current/tests/models/polymorphism/single.html'},
382
- {url:'sproutcore/experimental/frameworks/polymorphism/en/current/tests/models/polymorphism/simple.html'},
383
- {url:'sproutcore/experimental/frameworks/polymorphism/en/current/tests/models/polymorphism/many.html'},
384
- {url:'sproutcore/experimental/frameworks/menu/en/current/tests/menu/scroll.html'},
385
- {url:'sproutcore/experimental/frameworks/scroll_view/en/current/tests/scroll/methods.html'},
386
- {url:'sproutcore/experimental/frameworks/scroll_view/en/current/tests/scroll/ui.html'},
387
- {url:'sproutcore/experimental/frameworks/scroll_view/en/current/tests/scroll/integration.html'},*/
388
- {url:'sproutcore/desktop/en/current/tests/panes/select_button/methods.html'},
389
- {url:'sproutcore/desktop/en/current/tests/panes/select_button/ui.html'},
390
- {url:'sproutcore/desktop/en/current/tests/panes/picker/methods.html'},
391
- {url:'sproutcore/desktop/en/current/tests/panes/picker/ui.html'},
392
- {url:'sproutcore/desktop/en/current/tests/panes/menu/methods.html'},
393
- {url:'sproutcore/desktop/en/current/tests/panes/menu/ui.html'},
394
- {url:'sproutcore/desktop/en/current/tests/panes/sheet/methods.html'},
395
- {url:'sproutcore/desktop/en/current/tests/panes/sheet/ui.html'},
396
- {url:'sproutcore/desktop/en/current/tests/panes/pane_page.html'},
397
- {url:'sproutcore/desktop/en/current/tests/panes/palette/methods.html'},
398
- {url:'sproutcore/desktop/en/current/tests/panes/palette/ui.html'},
399
- {url:'sproutcore/desktop/en/current/tests/panes/panel/methods.html'},
400
- {url:'sproutcore/desktop/en/current/tests/panes/panel/ui.html'},
401
- {url:'sproutcore/desktop/en/current/tests/panes/alert/methods.html'},
402
- {url:'sproutcore/desktop/en/current/tests/panes/alert/ui.html'},
403
- {url:'sproutcore/desktop/en/current/tests/views/date_field/methods.html'},
404
- {url:'sproutcore/desktop/en/current/tests/views/date_field/ui.html'},
405
- {url:'sproutcore/desktop/en/current/tests/views/well/ui.html'},
406
- {url:'sproutcore/desktop/en/current/tests/views/stacked/ui_comments.html'},
407
- {url:'sproutcore/desktop/en/current/tests/views/slider/methods.html'},
408
- {url:'sproutcore/desktop/en/current/tests/views/slider/ui.html'},
409
- {url:'sproutcore/desktop/en/current/tests/views/source_list/methods.html'},
410
- {url:'sproutcore/desktop/en/current/tests/views/source_list/ui.html'},
411
- {url:'sproutcore/desktop/en/current/tests/views/checkbox/methods.html'},
412
- {url:'sproutcore/desktop/en/current/tests/views/checkbox/ui.html'},
413
- {url:'sproutcore/desktop/en/current/tests/views/separator.html'},
414
- {url:'sproutcore/desktop/en/current/tests/views/toolbar/method.html'},
415
- {url:'sproutcore/desktop/en/current/tests/views/toolbar/ui.html'},
416
- {url:'sproutcore/desktop/en/current/tests/views/web/methods.html'},
417
- {url:'sproutcore/desktop/en/current/tests/views/web/ui.html'},
418
- {url:'sproutcore/desktop/en/current/tests/views/segmented/methods.html'},
419
- {url:'sproutcore/desktop/en/current/tests/views/segmented/observers.html'},
420
- {url:'sproutcore/desktop/en/current/tests/views/segmented/ui.html'},
421
- {url:'sproutcore/desktop/en/current/tests/views/grid/drag_and_drop.html'},
422
- {url:'sproutcore/desktop/en/current/tests/views/grid/methods.html'},
423
- {url:'sproutcore/desktop/en/current/tests/views/grid/ui.html'},
424
- {url:'sproutcore/desktop/en/current/tests/views/static_content.html'},
425
- {url:'sproutcore/desktop/en/current/tests/views/select_field/methods.html'},
426
- {url:'sproutcore/desktop/en/current/tests/views/select_field/ui.html'},
427
- {url:'sproutcore/desktop/en/current/tests/views/radio/methods.html'},
428
- {url:'sproutcore/desktop/en/current/tests/views/radio/ui.html'},
429
- {url:'sproutcore/desktop/en/current/tests/views/scroller.html'},
430
- {url:'sproutcore/desktop/en/current/tests/views/button/content.html'},
431
- {url:'sproutcore/desktop/en/current/tests/views/button/methods.html'},
432
- {url:'sproutcore/desktop/en/current/tests/views/button/keyEquivalents.html'},
433
- {url:'sproutcore/desktop/en/current/tests/views/button/displayProperties.html'},
434
- {url:'sproutcore/desktop/en/current/tests/views/button/ui.html'},
435
- {url:'sproutcore/desktop/en/current/tests/views/list/drag_and_drop.html'},
436
- {url:'sproutcore/desktop/en/current/tests/views/list/rowDelegate.html'},
437
- {url:'sproutcore/desktop/en/current/tests/views/list/render.html'},
438
- {url:'sproutcore/desktop/en/current/tests/views/list/ui_simple.html'},
439
- {url:'sproutcore/desktop/en/current/tests/views/list/rowHeightForContentIndex.html'},
440
- {url:'sproutcore/desktop/en/current/tests/views/list/ui_row_heights.html'},
441
- {url:'sproutcore/desktop/en/current/tests/views/list/ui_alternatingrows.html'},
442
- {url:'sproutcore/desktop/en/current/tests/views/list/ui_outline.html'},
443
- {url:'sproutcore/desktop/en/current/tests/views/list/rowOffsetForContentIndex.html'},
444
- {url:'sproutcore/desktop/en/current/tests/views/scroll/methods.html'},
445
- {url:'sproutcore/desktop/en/current/tests/views/scroll/ui.html'},
446
- {url:'sproutcore/desktop/en/current/tests/views/scroll/integration.html'},
447
- {url:'sproutcore/desktop/en/current/tests/views/menu_item/methods.html'},
448
- {url:'sproutcore/desktop/en/current/tests/views/menu_item/ui.html'},
449
- {url:'sproutcore/desktop/en/current/tests/views/split/children.html'},
450
- {url:'sproutcore/desktop/en/current/tests/views/split/split_thumb.html'},
451
- {url:'sproutcore/desktop/en/current/tests/views/split/dividers.html'},
452
- {url:'sproutcore/desktop/en/current/tests/views/split/methods.html'},
453
- {url:'sproutcore/desktop/en/current/tests/views/split/ui.html'},
454
- {url:'sproutcore/desktop/en/current/tests/views/split/split_child.html'},
455
- {url:'sproutcore/desktop/en/current/tests/views/image_button/ui.html'},
456
- {url:'sproutcore/desktop/en/current/tests/views/collection/content.html'},
457
- {url:'sproutcore/desktop/en/current/tests/views/collection/selectNextItem.html'},
458
- {url:'sproutcore/desktop/en/current/tests/views/collection/deleteSelection.html'},
459
- {url:'sproutcore/desktop/en/current/tests/views/collection/ui_diagram.html'},
460
- {url:'sproutcore/desktop/en/current/tests/views/collection/length.html'},
461
- {url:'sproutcore/desktop/en/current/tests/views/collection/displayProperties.html'},
462
- {url:'sproutcore/desktop/en/current/tests/views/collection/mouse.html'},
463
- {url:'sproutcore/desktop/en/current/tests/views/collection/reload.html'},
464
- {url:'sproutcore/desktop/en/current/tests/views/collection/layerIdFor.html'},
465
- {url:'sproutcore/desktop/en/current/tests/views/collection/itemViewForContentIndex.html'},
466
- {url:'sproutcore/desktop/en/current/tests/views/collection/deselect.html'},
467
- {url:'sproutcore/desktop/en/current/tests/views/collection/selection.html'},
468
- {url:'sproutcore/desktop/en/current/tests/views/collection/nowShowing.html'},
469
- {url:'sproutcore/desktop/en/current/tests/views/collection/select.html'},
470
- {url:'sproutcore/desktop/en/current/tests/views/collection/selectPreviousItem.html'},
471
- {url:'sproutcore/desktop/en/current/tests/views/select/methods.html'},
472
- {url:'sproutcore/desktop/en/current/tests/views/select/ui.html'},
473
- {url:'sproutcore/desktop/en/current/tests/views/tab/methods.html'},
474
- {url:'sproutcore/desktop/en/current/tests/views/tab/ui.html'},
475
- {url:'sproutcore/desktop/en/current/tests/views/progress/methods.html'},
476
- {url:'sproutcore/desktop/en/current/tests/views/progress/ui.html'},
477
- {url:'sproutcore/desktop/en/current/tests/views/list_item.html'},
478
- {url:'sproutcore/desktop/en/current/tests/views/disclosure/methods.html'},
479
- {url:'sproutcore/desktop/en/current/tests/views/disclosure/ui.html'},
480
- {url:'sproutcore/desktop/en/current/tests/integration/dialog.html'},
481
- {url:'sproutcore/bootstrap/en/current/tests/system/browser.html'},
482
- {url:'sproutcore/template_view/en/current/tests/panes/template.html'},
483
- {url:'sproutcore/template_view/en/current/tests/views/template/collection.html'},
484
- {url:'sproutcore/template_view/en/current/tests/views/template/handlebars.html'},
485
- {url:'sproutcore/template_view/en/current/tests/views/template/core.html'},
486
- {url:'sproutcore/template_view/en/current/tests/mixins/template_helpers/text_field_support.html'},
487
- {url:'sproutcore/template_view/en/current/tests/mixins/template_helpers/checkbox_support.html'},
488
- {url:'sproutcore/template_view/en/current/tests/controls/button.html'},
489
- {url:'sproutcore/routing/en/current/tests/system/routes.html'}
490
- ];
491
-
492
- var SKIPPED=-2;
493
- var FAILED_TO_LOAD=-1;
494
- var TEST_PASSED=0;
495
- var TEST_FAILED=1;
496
- var TEST_ERROR=2;
497
-
498
-
499
- var run=0;
500
- var skipped=0;
501
- var outcome=0;
502
- var failed=0;
503
- var webpage = require('webpage');
504
-
505
- function configure(page) {
506
- if(!travis && verbose) {
507
- page.onError = function(err, stack) {
508
- console.log("CONSOLE ERROR: "+err);
509
- };
510
-
511
- page.onConsoleMessage = function(msg, lineNum, sourceId) {
512
- console.log('CONSOLE: ' + msg);
513
- };
514
- }
515
- return page;
516
- }
517
-
518
- function logResult(r,i) {
519
- // output coloring
520
- var red, blue, reset;
521
- red = '\033[31m';
522
- green = '\033[32m';
523
- reset = '\033[0m';
524
- console.log( "[" + (i+1) +"/"+ urls.length + "] " + (r.status === TEST_PASSED ? green : red ) + r.url + reset + " (" + r.status + "): " + r.resultText);
525
- }
526
-
527
- function runTest(idx, cb) {
528
- if(idx==urls.length) {
529
- cb.apply();
530
- return;
531
- }
532
- var url=urls[idx].url;
533
-
534
- // check if the user provided a filter, run only tests that match it
535
- //
536
- if (!filter || url.match(filter)) {
537
- run++;
538
- var page = webpage.create();
539
- configure(page).viewportSize = { width: 1024, height: 768 };
540
- // Chrome/Linux
541
- //page.settings.userAgent = "Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.71 Safari/537.36";
542
- page.open('http://'+host+':'+port+'/'+url, function (status) {
543
- // detect and skip multiple callbacks calls
544
- if(urls[idx].open) return;
545
-
546
- // mark page as opened
547
- urls[idx].open = true;
548
-
549
- // Check for page load success
550
- if (status !== "success") {
551
- urls[idx].open=false;
552
- urls[idx].resultText="unable to access page: "+status;
553
- urls[idx].status=FAILED_TO_LOAD; outcome=1; failed++;
554
- logResult(urls[idx], idx);
555
- page.close();
556
- runTest(++idx,cb);
557
- } else {
558
- waitFor(function() {
559
- // Check in the page if a specific element is now visible
560
- return urls[idx].open && page.evaluate(function() {
561
- var statusText = $("span.status").text();
562
- return statusText.indexOf("Running – Completed") == -1 && statusText.indexOf("Running...") == -1;
563
- });
564
- }, function() {
565
- // sometimes the callback could be called more than once,
566
- // in that case check that we have not run through the test already
567
- if(urls[idx].open) {
568
- // close the test
569
- urls[idx].open=false;
570
-
571
- // checking outcome
572
- var resultText = page.evaluate(function() {
573
- return $("span.status").text();
574
- });
575
- urls[idx].resultText=resultText;
576
- if(resultText.indexOf("failed")!=-1) {
577
- urls[idx].status=TEST_FAILED; outcome=1; failed++;
578
- fs.write((idx+1)+'.html', page.content, 'w');
579
- } else if(resultText.indexOf("error")!=-1) {
580
- urls[idx].status=TEST_ERROR; outcome=1; failed++;
581
- fs.write((idx+1)+'.html', page.content, 'w');
582
- } else {
583
- urls[idx].status=TEST_PASSED;
584
- }
585
- logResult(urls[idx], idx);
586
- page.close();
587
- runTest(++idx,cb);
588
- }
589
- });
590
- }
591
- });
592
- } else {
593
- // skip this test and try the next
594
- skipped++;
595
- urls[idx].status=SKIPPED;
596
- runTest(++idx,cb);
597
- }
598
- }
599
-
600
- runTest(0, function() {
601
- console.log("\n"+run + " out of " + urls.length + " tests run, " + failed + " failures" + (failed>0 ? ":\n" : ".\n") );
602
-
603
- for(var i=0,l=urls.length;i<l;i++) {
604
- if( urls[i].status!==SKIPPED && urls[i].status!==TEST_PASSED ) {
605
- logResult(urls[i], i);
606
- }
607
- }
608
-
609
- phantom.exit(outcome);
610
- });
611
-