old_sql 1.12.0 → 1.13.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (263) hide show
  1. data/public/javascripts/old_sql/MochiKit-1.4.2/Changes +362 -0
  2. data/public/javascripts/old_sql/MochiKit-1.4.2/LICENSE.txt +69 -0
  3. data/public/javascripts/old_sql/MochiKit-1.4.2/MANIFEST +179 -0
  4. data/public/javascripts/old_sql/MochiKit-1.4.2/META.json +17 -0
  5. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/html/MochiKit/Async.html +814 -0
  6. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/html/MochiKit/Base.html +1703 -0
  7. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/html/MochiKit/Color.html +755 -0
  8. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/html/MochiKit/DOM.html +1197 -0
  9. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/html/MochiKit/DateTime.html +168 -0
  10. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/html/MochiKit/DragAndDrop.html +187 -0
  11. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/html/MochiKit/Format.html +300 -0
  12. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/html/MochiKit/Iter.html +524 -0
  13. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/html/MochiKit/Logging.html +420 -0
  14. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/html/MochiKit/LoggingPane.html +142 -0
  15. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/html/MochiKit/Position.html +38 -0
  16. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/html/MochiKit/Selector.html +240 -0
  17. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/html/MochiKit/Signal.html +508 -0
  18. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/html/MochiKit/Sortable.html +244 -0
  19. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/html/MochiKit/Style.html +385 -0
  20. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/html/MochiKit/VersionHistory.html +384 -0
  21. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/html/MochiKit/Visual.html +1161 -0
  22. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/html/MochiKit/index.html +447 -0
  23. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/js/toc.js +113 -0
  24. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/rst/MochiKit/Async.rst +767 -0
  25. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/rst/MochiKit/Base.rst +1445 -0
  26. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/rst/MochiKit/Color.rst +651 -0
  27. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/rst/MochiKit/DOM.rst +1143 -0
  28. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/rst/MochiKit/DateTime.rst +145 -0
  29. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/rst/MochiKit/DragAndDrop.rst +197 -0
  30. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/rst/MochiKit/Format.rst +258 -0
  31. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/rst/MochiKit/Iter.rst +454 -0
  32. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/rst/MochiKit/Logging.rst +348 -0
  33. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/rst/MochiKit/LoggingPane.rst +128 -0
  34. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/rst/MochiKit/Position.rst +26 -0
  35. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/rst/MochiKit/Selector.rst +203 -0
  36. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/rst/MochiKit/Signal.rst +498 -0
  37. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/rst/MochiKit/Sortable.rst +186 -0
  38. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/rst/MochiKit/Style.rst +353 -0
  39. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/rst/MochiKit/VersionHistory.rst +362 -0
  40. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/rst/MochiKit/Visual.rst +895 -0
  41. data/public/javascripts/old_sql/MochiKit-1.4.2/doc/rst/MochiKit/index.rst +83 -0
  42. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/ajax_tables/ajax_tables.css +69 -0
  43. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/ajax_tables/ajax_tables.js +401 -0
  44. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/ajax_tables/domains.json +10 -0
  45. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/ajax_tables/domains.xml +40 -0
  46. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/ajax_tables/index.html +96 -0
  47. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/color_wheel/color_wheel.css +4 -0
  48. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/color_wheel/color_wheel.js +95 -0
  49. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/color_wheel/index.html +31 -0
  50. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/dnd_sortable/dnd_sortable.css +23 -0
  51. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/dnd_sortable/dropmarker.png +0 -0
  52. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/dnd_sortable/icon.png +0 -0
  53. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/dnd_sortable/index.html +54 -0
  54. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/dnd_sortable/sortable2_test.html +150 -0
  55. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/dnd_sortable/sortable3_test.html +42 -0
  56. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/dnd_sortable/sortable4_test.html +90 -0
  57. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/dnd_sortable/sortable5_test.html +29 -0
  58. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/dnd_sortable/sortable_test.html +38 -0
  59. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/dnd_sortable/sortable_tree_test.html +189 -0
  60. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/draggable/draggable.css +28 -0
  61. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/draggable/draggable.js +73 -0
  62. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/draggable/index.html +38 -0
  63. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/effects/effects_bigslide.html +36 -0
  64. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/effects/effects_blind.html +65 -0
  65. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/effects/effects_blindslide.html +31 -0
  66. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/effects/effects_combi.css +18 -0
  67. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/effects/effects_fadeappear.html +61 -0
  68. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/effects/effects_grow_shrink.html +38 -0
  69. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/effects/effects_onload.html +67 -0
  70. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/effects/effects_queue.html +67 -0
  71. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/effects/effects_queue_limit.html +30 -0
  72. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/effects/effects_scroll.html +483 -0
  73. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/effects/effects_slide.html +62 -0
  74. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/effects/full.html +71 -0
  75. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/effects/icon.png +0 -0
  76. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/effects/index.html +150 -0
  77. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/interpreter/index.html +88 -0
  78. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/interpreter/interpreter.css +54 -0
  79. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/interpreter/interpreter.js +373 -0
  80. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/key_events/index.html +78 -0
  81. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/key_events/key_events.css +5 -0
  82. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/key_events/key_events.js +85 -0
  83. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/logging_pane/index.html +46 -0
  84. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/logging_pane/logging_pane.css +78 -0
  85. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/logging_pane/logging_pane.js +11 -0
  86. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/mochiregexp/index.html +74 -0
  87. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/mochiregexp/mochiregexp.css +73 -0
  88. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/mochiregexp/mochiregexp.js +125 -0
  89. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/mouse_events/index.html +88 -0
  90. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/mouse_events/mouse_events.css +17 -0
  91. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/mouse_events/mouse_events.js +59 -0
  92. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/rounded_corners/index.html +28 -0
  93. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/rounded_corners/rounded_corners.css +3 -0
  94. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/rounded_corners/rounded_corners.js +19 -0
  95. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/simple_dnd/dnd_boxes.html +45 -0
  96. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/simple_dnd/dnd_full.html +119 -0
  97. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/simple_dnd/dnd_ghost.html +40 -0
  98. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/simple_dnd/dnd_hoverclass.html +43 -0
  99. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/simple_dnd/dnd_scroll.html +91 -0
  100. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/simple_dnd/dnd_snap.html +54 -0
  101. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/simple_dnd/index.html +93 -0
  102. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/simple_dnd/simple_dnd.css +64 -0
  103. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/sortable_tables/index.html +71 -0
  104. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/sortable_tables/sortable_tables.css +66 -0
  105. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/sortable_tables/sortable_tables.js +203 -0
  106. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/view-source/lib/SyntaxHighlighter/SyntaxHighlighter.css +177 -0
  107. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/view-source/lib/SyntaxHighlighter/Tests.html +339 -0
  108. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/view-source/lib/SyntaxHighlighter/shBrushCSharp.js +30 -0
  109. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/view-source/lib/SyntaxHighlighter/shBrushDelphi.js +31 -0
  110. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/view-source/lib/SyntaxHighlighter/shBrushJScript.js +22 -0
  111. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/view-source/lib/SyntaxHighlighter/shBrushPhp.js +23 -0
  112. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/view-source/lib/SyntaxHighlighter/shBrushPython.js +71 -0
  113. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/view-source/lib/SyntaxHighlighter/shBrushSql.js +40 -0
  114. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/view-source/lib/SyntaxHighlighter/shBrushVb.js +29 -0
  115. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/view-source/lib/SyntaxHighlighter/shBrushXml.js +61 -0
  116. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/view-source/lib/SyntaxHighlighter/shCore.js +622 -0
  117. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/view-source/view-source.css +1 -0
  118. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/view-source/view-source.html +19 -0
  119. data/public/javascripts/old_sql/MochiKit-1.4.2/examples/view-source/view-source.js +70 -0
  120. data/public/javascripts/old_sql/MochiKit-1.4.2/include/_img/bg_docheader.gif +0 -0
  121. data/public/javascripts/old_sql/MochiKit-1.4.2/include/_img/g_bullet.gif +0 -0
  122. data/public/javascripts/old_sql/MochiKit-1.4.2/include/_img/g_logo_doc.gif +0 -0
  123. data/public/javascripts/old_sql/MochiKit-1.4.2/include/css/documentation.css +130 -0
  124. data/public/javascripts/old_sql/MochiKit-1.4.2/include/css/general.css +48 -0
  125. data/public/javascripts/old_sql/MochiKit-1.4.2/lib/MochiKit/Async.js +682 -0
  126. data/public/javascripts/old_sql/MochiKit-1.4.2/lib/MochiKit/Base.js +1489 -0
  127. data/public/javascripts/old_sql/MochiKit-1.4.2/lib/MochiKit/Color.js +863 -0
  128. data/public/javascripts/old_sql/MochiKit-1.4.2/lib/MochiKit/DOM.js +1256 -0
  129. data/public/javascripts/old_sql/MochiKit-1.4.2/lib/MochiKit/DateTime.js +222 -0
  130. data/public/javascripts/old_sql/MochiKit-1.4.2/lib/MochiKit/DragAndDrop.js +793 -0
  131. data/public/javascripts/old_sql/MochiKit-1.4.2/lib/MochiKit/Format.js +304 -0
  132. data/public/javascripts/old_sql/MochiKit-1.4.2/lib/MochiKit/Iter.js +844 -0
  133. data/public/javascripts/old_sql/MochiKit-1.4.2/lib/MochiKit/Logging.js +315 -0
  134. data/public/javascripts/old_sql/MochiKit-1.4.2/lib/MochiKit/LoggingPane.js +353 -0
  135. data/public/javascripts/old_sql/MochiKit-1.4.2/lib/MochiKit/MochiKit.js +188 -0
  136. data/public/javascripts/old_sql/MochiKit-1.4.2/lib/MochiKit/MockDOM.js +115 -0
  137. data/public/javascripts/old_sql/MochiKit-1.4.2/lib/MochiKit/Position.js +236 -0
  138. data/public/javascripts/old_sql/MochiKit-1.4.2/lib/MochiKit/Selector.js +415 -0
  139. data/public/javascripts/old_sql/MochiKit-1.4.2/lib/MochiKit/Signal.js +897 -0
  140. data/public/javascripts/old_sql/MochiKit-1.4.2/lib/MochiKit/Sortable.js +589 -0
  141. data/public/javascripts/old_sql/MochiKit-1.4.2/lib/MochiKit/Style.js +594 -0
  142. data/public/javascripts/old_sql/MochiKit-1.4.2/lib/MochiKit/Test.js +162 -0
  143. data/public/javascripts/old_sql/MochiKit-1.4.2/lib/MochiKit/Visual.js +2026 -0
  144. data/public/javascripts/old_sql/MochiKit-1.4.2/lib/MochiKit/__package__.js +18 -0
  145. data/public/javascripts/old_sql/MochiKit-1.4.2/packed/MochiKit/MochiKit.js +7829 -0
  146. data/public/javascripts/old_sql/MochiKit-1.4.2/packed/MochiKit/__package__.js +6 -0
  147. data/public/javascripts/old_sql/MochiKit-1.4.2/packed/MochiKit/customize.html +251 -0
  148. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/FakeJSAN.js +40 -0
  149. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/SimpleTest/SimpleTest.js +381 -0
  150. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/SimpleTest/TestRunner.js +159 -0
  151. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/SimpleTest/test.css +28 -0
  152. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/cli.js +6 -0
  153. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/index.html +25 -0
  154. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/standalone.js +16 -0
  155. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_Base.js +577 -0
  156. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_Color.js +137 -0
  157. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_DateTime.js +52 -0
  158. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_DragAndDrop.js +30 -0
  159. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_Format.js +89 -0
  160. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_Iter.js +186 -0
  161. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_Logging.js +88 -0
  162. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_MochiKit-Async.html +408 -0
  163. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_MochiKit-Async.json +1 -0
  164. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_MochiKit-Base.html +34 -0
  165. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_MochiKit-Color.html +84 -0
  166. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_MochiKit-DOM-Safari.html +48 -0
  167. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_MochiKit-DOM.html +363 -0
  168. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_MochiKit-DateTime.html +39 -0
  169. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_MochiKit-DragAndDrop.html +54 -0
  170. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_MochiKit-Format.html +39 -0
  171. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_MochiKit-Iter.html +38 -0
  172. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_MochiKit-JSAN.html +32 -0
  173. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_MochiKit-Logging.html +40 -0
  174. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_MochiKit-MochiKit.html +18 -0
  175. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_MochiKit-Selector.html +295 -0
  176. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_MochiKit-Signal.html +43 -0
  177. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_MochiKit-Style.html +223 -0
  178. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_MochiKit-Visual.html +197 -0
  179. data/public/javascripts/old_sql/MochiKit-1.4.2/tests/test_Signal.js +481 -0
  180. data/public/javascripts/old_sql/plotkit-0.9.1/COPYING +28 -0
  181. data/public/javascripts/old_sql/plotkit-0.9.1/PlotKit/Base.js +406 -0
  182. data/public/javascripts/old_sql/plotkit-0.9.1/PlotKit/Canvas.js +683 -0
  183. data/public/javascripts/old_sql/plotkit-0.9.1/PlotKit/EasyPlot.js +161 -0
  184. data/public/javascripts/old_sql/plotkit-0.9.1/PlotKit/Layout.js +756 -0
  185. data/public/javascripts/old_sql/plotkit-0.9.1/PlotKit/PlotKit.js +151 -0
  186. data/public/javascripts/old_sql/plotkit-0.9.1/PlotKit/PlotKit_Packed.js +2177 -0
  187. data/public/javascripts/old_sql/plotkit-0.9.1/PlotKit/SVG.js +705 -0
  188. data/public/javascripts/old_sql/plotkit-0.9.1/PlotKit/SweetCanvas.js +348 -0
  189. data/public/javascripts/old_sql/plotkit-0.9.1/PlotKit/SweetSVG.js +247 -0
  190. data/public/javascripts/old_sql/plotkit-0.9.1/PlotKit/dummy.svg +9 -0
  191. data/public/javascripts/old_sql/plotkit-0.9.1/PlotKit/excanvas.js +723 -0
  192. data/public/javascripts/old_sql/plotkit-0.9.1/README +1 -0
  193. data/public/javascripts/old_sql/plotkit-0.9.1/doc/MochiKitAdditions.html +2 -0
  194. data/public/javascripts/old_sql/plotkit-0.9.1/doc/MochiKitAdditions.txt +2 -0
  195. data/public/javascripts/old_sql/plotkit-0.9.1/doc/PlotKit.Base.html +302 -0
  196. data/public/javascripts/old_sql/plotkit-0.9.1/doc/PlotKit.Base.txt +139 -0
  197. data/public/javascripts/old_sql/plotkit-0.9.1/doc/PlotKit.Canvas.html +172 -0
  198. data/public/javascripts/old_sql/plotkit-0.9.1/doc/PlotKit.Canvas.txt +81 -0
  199. data/public/javascripts/old_sql/plotkit-0.9.1/doc/PlotKit.EasyPlot.html +155 -0
  200. data/public/javascripts/old_sql/plotkit-0.9.1/doc/PlotKit.EasyPlot.txt +50 -0
  201. data/public/javascripts/old_sql/plotkit-0.9.1/doc/PlotKit.Layout.html +428 -0
  202. data/public/javascripts/old_sql/plotkit-0.9.1/doc/PlotKit.Layout.txt +330 -0
  203. data/public/javascripts/old_sql/plotkit-0.9.1/doc/PlotKit.QuickStart.html +368 -0
  204. data/public/javascripts/old_sql/plotkit-0.9.1/doc/PlotKit.QuickStart.txt +256 -0
  205. data/public/javascripts/old_sql/plotkit-0.9.1/doc/PlotKit.Renderer.html +436 -0
  206. data/public/javascripts/old_sql/plotkit-0.9.1/doc/PlotKit.Renderer.txt +299 -0
  207. data/public/javascripts/old_sql/plotkit-0.9.1/doc/PlotKit.SVG.html +159 -0
  208. data/public/javascripts/old_sql/plotkit-0.9.1/doc/PlotKit.SVG.txt +64 -0
  209. data/public/javascripts/old_sql/plotkit-0.9.1/doc/PlotKit.SweetCanvas.html +131 -0
  210. data/public/javascripts/old_sql/plotkit-0.9.1/doc/PlotKit.SweetCanvas.txt +34 -0
  211. data/public/javascripts/old_sql/plotkit-0.9.1/doc/PlotKit.SweetSVG.html +131 -0
  212. data/public/javascripts/old_sql/plotkit-0.9.1/doc/PlotKit.SweetSVG.txt +34 -0
  213. data/public/javascripts/old_sql/plotkit-0.9.1/doc/PlotKit.html +334 -0
  214. data/public/javascripts/old_sql/plotkit-0.9.1/doc/PlotKit.txt +151 -0
  215. data/public/javascripts/old_sql/plotkit-0.9.1/doc/SVGCanvasCompat.html +304 -0
  216. data/public/javascripts/old_sql/plotkit-0.9.1/doc/SVGCanvasCompat.txt +144 -0
  217. data/public/javascripts/old_sql/plotkit-0.9.1/doc/barsample.png +0 -0
  218. data/public/javascripts/old_sql/plotkit-0.9.1/doc/black.png +0 -0
  219. data/public/javascripts/old_sql/plotkit-0.9.1/doc/blue.png +0 -0
  220. data/public/javascripts/old_sql/plotkit-0.9.1/doc/cyan.png +0 -0
  221. data/public/javascripts/old_sql/plotkit-0.9.1/doc/doc.css +62 -0
  222. data/public/javascripts/old_sql/plotkit-0.9.1/doc/generate.py +37 -0
  223. data/public/javascripts/old_sql/plotkit-0.9.1/doc/green.png +0 -0
  224. data/public/javascripts/old_sql/plotkit-0.9.1/doc/orange.png +0 -0
  225. data/public/javascripts/old_sql/plotkit-0.9.1/doc/piesample.png +0 -0
  226. data/public/javascripts/old_sql/plotkit-0.9.1/doc/purple.png +0 -0
  227. data/public/javascripts/old_sql/plotkit-0.9.1/doc/red.png +0 -0
  228. data/public/javascripts/old_sql/plotkit-0.9.1/scripts/custom_rhino.jar +0 -0
  229. data/public/javascripts/old_sql/plotkit-0.9.1/scripts/pack.py +58 -0
  230. data/public/javascripts/old_sql/plotkit-0.9.1/tests/axis.html +31 -0
  231. data/public/javascripts/old_sql/plotkit-0.9.1/tests/basic.html +25 -0
  232. data/public/javascripts/old_sql/plotkit-0.9.1/tests/basic.js +143 -0
  233. data/public/javascripts/old_sql/plotkit-0.9.1/tests/debug.html +56 -0
  234. data/public/javascripts/old_sql/plotkit-0.9.1/tests/demo-svg.html +58 -0
  235. data/public/javascripts/old_sql/plotkit-0.9.1/tests/demo-svg.js +133 -0
  236. data/public/javascripts/old_sql/plotkit-0.9.1/tests/demo.html +57 -0
  237. data/public/javascripts/old_sql/plotkit-0.9.1/tests/demo.js +136 -0
  238. data/public/javascripts/old_sql/plotkit-0.9.1/tests/dynamic.html +161 -0
  239. data/public/javascripts/old_sql/plotkit-0.9.1/tests/img/firefox.png +0 -0
  240. data/public/javascripts/old_sql/plotkit-0.9.1/tests/img/konqueror.png +0 -0
  241. data/public/javascripts/old_sql/plotkit-0.9.1/tests/img/mozilla.ico +0 -0
  242. data/public/javascripts/old_sql/plotkit-0.9.1/tests/img/msie.gif +0 -0
  243. data/public/javascripts/old_sql/plotkit-0.9.1/tests/img/opera.ico +0 -0
  244. data/public/javascripts/old_sql/plotkit-0.9.1/tests/img/safari.gif +0 -0
  245. data/public/javascripts/old_sql/plotkit-0.9.1/tests/labels-img.html +38 -0
  246. data/public/javascripts/old_sql/plotkit-0.9.1/tests/labels.html +43 -0
  247. data/public/javascripts/old_sql/plotkit-0.9.1/tests/prototype_compat.html +28 -0
  248. data/public/javascripts/old_sql/plotkit-0.9.1/tests/quickstart-easy.html +29 -0
  249. data/public/javascripts/old_sql/plotkit-0.9.1/tests/quickstart-horiz.html +53 -0
  250. data/public/javascripts/old_sql/plotkit-0.9.1/tests/quickstart-neg.html +29 -0
  251. data/public/javascripts/old_sql/plotkit-0.9.1/tests/quickstart-svg.html +61 -0
  252. data/public/javascripts/old_sql/plotkit-0.9.1/tests/quickstart.html +57 -0
  253. data/public/javascripts/old_sql/plotkit-0.9.1/tests/sample.txt +6 -0
  254. data/public/javascripts/old_sql/plotkit-0.9.1/tests/svg-sweet.html +29 -0
  255. data/public/javascripts/old_sql/plotkit-0.9.1/tests/svg-sweet.js +141 -0
  256. data/public/javascripts/old_sql/plotkit-0.9.1/tests/svg.html +26 -0
  257. data/public/javascripts/old_sql/plotkit-0.9.1/tests/svg.js +147 -0
  258. data/public/javascripts/old_sql/plotkit-0.9.1/tests/sweet.html +24 -0
  259. data/public/javascripts/old_sql/plotkit-0.9.1/tests/sweet.js +89 -0
  260. data/public/javascripts/old_sql/plotkit-0.9.1/tests/tests.css +66 -0
  261. data/public/javascripts/old_sql/plotkit-0.9.1/tests/testsvg.html +20 -0
  262. data/public/javascripts/old_sql/plotkit-0.9.1/tests/testsvg.js +31 -0
  263. metadata +264 -2
@@ -0,0 +1,137 @@
1
+ if (typeof(dojo) != 'undefined') { dojo.require('MochiKit.Color'); }
2
+ if (typeof(JSAN) != 'undefined') { JSAN.use('MochiKit.Color'); }
3
+ if (typeof(tests) == 'undefined') { tests = {}; }
4
+
5
+ tests.test_Color = function (t) {
6
+ var approx = function (a, b, msg) {
7
+ return t.is(a.toPrecision(4), b.toPrecision(4), msg);
8
+ };
9
+
10
+ t.is( Color.whiteColor().toHexString(), "#ffffff", "whiteColor has right hex" );
11
+ t.is( Color.blackColor().toHexString(), "#000000", "blackColor has right hex" );
12
+ t.is( Color.blueColor().toHexString(), "#0000ff", "blueColor has right hex" );
13
+ t.is( Color.redColor().toHexString(), "#ff0000", "redColor has right hex" );
14
+ t.is( Color.greenColor().toHexString(), "#00ff00", "greenColor has right hex" );
15
+ t.is( compare(Color.whiteColor(), Color.whiteColor()), 0, "default colors compare right" );
16
+ t.ok( Color.whiteColor() == Color.whiteColor(), "default colors are interned" );
17
+ t.ok( Color.whiteColor().toRGBString(), "rgb(255,255,255)", "toRGBString white" );
18
+ t.ok( Color.blueColor().toRGBString(), "rgb(0,0,255)", "toRGBString blue" );
19
+ t.is( Color.fromRGB(190/255, 222/255, 173/255).toHexString(), "#bedead", "fromRGB works" );
20
+ t.is( Color.fromRGB(226/255, 15.9/255, 182/255).toHexString(), "#e210b6", "fromRGB < 16 works" );
21
+ t.is( Color.fromRGB({r:190/255,g:222/255,b:173/255}).toHexString(), "#bedead", "alt fromRGB works" );
22
+ t.is( Color.fromHexString("#bedead").toHexString(), "#bedead", "round-trip hex" );
23
+ t.is( Color.fromString("#bedead").toHexString(), "#bedead", "round-trip string(hex)" );
24
+ t.is( Color.fromRGBString("rgb(190,222,173)").toHexString(), "#bedead", "round-trip rgb" );
25
+ t.is( Color.fromString("rgb(190,222,173)").toHexString(), "#bedead", "round-trip rgb" );
26
+
27
+ var hsl = Color.redColor().asHSL();
28
+ approx( hsl.h, 0.0, "red hsl.h" );
29
+ approx( hsl.s, 1.0, "red hsl.s" );
30
+ approx( hsl.l, 0.5, "red hsl.l" );
31
+ hsl = Color.fromRGB(0, 0, 0.5).asHSL();
32
+ approx( hsl.h, 2/3, "darkblue hsl.h" );
33
+ approx( hsl.s, 1.0, "darkblue hsl.s" );
34
+ approx( hsl.l, 0.25, "darkblue hsl.l" );
35
+ hsl = Color.fromString("#4169E1").asHSL();
36
+ approx( hsl.h, (5/8), "4169e1 h");
37
+ approx( hsl.s, (8/11), "4169e1 s");
38
+ approx( hsl.l, (29/51), "4169e1 l");
39
+ hsl = Color.fromString("#555544").asHSL();
40
+ approx( hsl.h, (1/6), "555544 h" );
41
+ approx( hsl.s, (1/9), "555544 s" );
42
+ approx( hsl.l, (3/10), "555544 l" );
43
+ hsl = Color.fromRGB(0.5, 1, 0.5).asHSL();
44
+ approx( hsl.h, 1/3, "aqua hsl.h" );
45
+ approx( hsl.s, 1.0, "aqua hsl.s" );
46
+ approx( hsl.l, 0.75, "aqua hsl.l" );
47
+ t.is(
48
+ Color.fromHSL(hsl.h, hsl.s, hsl.l).toHexString(),
49
+ Color.fromRGB(0.5, 1, 0.5).toHexString(),
50
+ "fromHSL works with components"
51
+ );
52
+ t.is(
53
+ Color.fromHSL(hsl).toHexString(),
54
+ Color.fromRGB(0.5, 1, 0.5).toHexString(),
55
+ "fromHSL alt form"
56
+ );
57
+ t.is(
58
+ Color.fromString("hsl(120,100%,75%)").toHexString(),
59
+ "#80ff80",
60
+ "fromHSLString"
61
+ );
62
+ t.is(
63
+ Color.fromRGB(0.5, 1, 0.5).toHSLString(),
64
+ "hsl(120,100.0%,75.00%)",
65
+ "toHSLString"
66
+ );
67
+ t.is( Color.fromHSL(0, 0, 0).toHexString(), "#000000", "fromHSL to black" );
68
+ hsl = Color.blackColor().asHSL();
69
+ approx( hsl.h, 0.0, "black hsl.h" );
70
+ approx( hsl.s, 0.0, "black hsl.s" );
71
+ approx( hsl.l, 0.0, "black hsl.l" );
72
+ hsl.h = 1.0;
73
+ hsl = Color.blackColor().asHSL();
74
+ approx( hsl.h, 0.0, "asHSL returns copy" );
75
+ var rgb = Color.brownColor().asRGB();
76
+ approx( rgb.r, 153/255, "brown rgb.r" );
77
+ approx( rgb.g, 102/255, "brown rgb.g" );
78
+ approx( rgb.b, 51/255, "brown rgb.b" );
79
+ rgb.r = 0;
80
+ rgb = Color.brownColor().asRGB();
81
+ approx( rgb.r, 153/255, "asRGB returns copy" );
82
+
83
+ t.is( Color.fromName("aqua").toHexString(), "#00ffff", "aqua fromName" );
84
+ t.is( Color.fromString("aqua").toHexString(), "#00ffff", "aqua fromString" );
85
+ t.is( Color.fromName("transparent"), Color.transparentColor(), "transparent fromName" );
86
+ t.is( Color.fromString("transparent"), Color.transparentColor(), "transparent fromString" );
87
+ t.is( Color.transparentColor().toRGBString(), "rgba(0,0,0,0)", "transparent toRGBString" );
88
+ t.is( Color.fromRGBString("rgba( 0, 255, 255, 50%)").asRGB().a, 0.5, "rgba parsing alpha correctly" );
89
+ t.is( Color.fromRGBString("rgba( 0, 255, 255, 50%)").toRGBString(), "rgba(0,255,255,0.5)", "rgba output correctly" );
90
+ t.is( Color.fromRGBString("rgba( 0, 255, 255, 1)").toHexString(), "#00ffff", "fromRGBString with spaces and alpha" );
91
+ t.is( Color.fromRGBString("rgb( 0, 255, 255)").toHexString(), "#00ffff", "fromRGBString with spaces" );
92
+ t.is( Color.fromRGBString("rgb( 0, 100%, 255)").toHexString(), "#00ffff", "fromRGBString with percents" );
93
+
94
+ var hsv = Color.redColor().asHSV();
95
+ approx( hsv.h, 0.0, "red hsv.h" );
96
+ approx( hsv.s, 1.0, "red hsv.s" );
97
+ approx( hsv.v, 1.0, "red hsv.v" );
98
+ t.is( Color.fromHSV(hsv).toHexString(), Color.redColor().toHexString(), "red hexstring" );
99
+ hsv = Color.fromRGB(0, 0, 0.5).asHSV();
100
+ approx( hsv.h, 2/3, "darkblue hsv.h" );
101
+ approx( hsv.s, 1.0, "darkblue hsv.s" );
102
+ approx( hsv.v, 0.5, "darkblue hsv.v" );
103
+ t.is( Color.fromHSV(hsv).toHexString(), Color.fromRGB(0, 0, 0.5).toHexString(), "darkblue hexstring" );
104
+ hsv = Color.fromString("#4169E1").asHSV();
105
+ approx( hsv.h, 5/8, "4169e1 h");
106
+ approx( hsv.s, 32/45, "4169e1 s");
107
+ approx( hsv.v, 15/17, "4169e1 l");
108
+ t.is( Color.fromHSV(hsv).toHexString(), "#4169e1", "4169e1 hexstring" );
109
+ hsv = Color.fromString("#555544").asHSV();
110
+ approx( hsv.h, 1/6, "555544 h" );
111
+ approx( hsv.s, 1/5, "555544 s" );
112
+ approx( hsv.v, 1/3, "555544 l" );
113
+ t.is( Color.fromHSV(hsv).toHexString(), "#555544", "555544 hexstring" );
114
+ hsv = Color.fromRGB(0.5, 1, 0.5).asHSV();
115
+ approx( hsv.h, 1/3, "aqua hsv.h" );
116
+ approx( hsv.s, 0.5, "aqua hsv.s" );
117
+ approx( hsv.v, 1, "aqua hsv.v" );
118
+ t.is(
119
+ Color.fromHSV(hsv.h, hsv.s, hsv.v).toHexString(),
120
+ Color.fromRGB(0.5, 1, 0.5).toHexString(),
121
+ "fromHSV works with components"
122
+ );
123
+ t.is(
124
+ Color.fromHSV(hsv).toHexString(),
125
+ Color.fromRGB(0.5, 1, 0.5).toHexString(),
126
+ "fromHSV alt form"
127
+ );
128
+ hsv = Color.fromRGB(1, 1, 1).asHSV()
129
+ approx( hsv.h, 0, 'white hsv.h' );
130
+ approx( hsv.s, 0, 'white hsv.s' );
131
+ approx( hsv.v, 1, 'white hsv.v' );
132
+ t.is(
133
+ Color.fromHSV(0, 0, 1).toHexString(),
134
+ '#ffffff',
135
+ 'HSV saturation'
136
+ );
137
+ };
@@ -0,0 +1,52 @@
1
+ if (typeof(dojo) != 'undefined') { dojo.require('MochiKit.DateTime'); }
2
+ if (typeof(JSAN) != 'undefined') { JSAN.use('MochiKit.DateTime'); }
3
+ if (typeof(tests) == 'undefined') { tests = {}; }
4
+
5
+ tests.test_DateTime = function (t) {
6
+ var testDate = isoDate('2005-2-3');
7
+ t.is(testDate.getFullYear(), 2005, "isoDate year ok");
8
+ t.is(testDate.getDate(), 3, "isoDate day ok");
9
+ t.is(testDate.getMonth(), 1, "isoDate month ok");
10
+ t.ok(objEqual(testDate, new Date("February 3, 2005")), "matches string date");
11
+ t.is(toISODate(testDate), '2005-02-03', 'toISODate ok');
12
+
13
+ var testDate = isoDate('2005-06-08');
14
+ t.is(testDate.getFullYear(), 2005, "isoDate year ok");
15
+ t.is(testDate.getDate(), 8, "isoDate day ok");
16
+ t.is(testDate.getMonth(), 5, "isoDate month ok");
17
+ t.ok(objEqual(testDate, new Date("June 8, 2005")), "matches string date");
18
+ t.is(toISODate(testDate), '2005-06-08', 'toISODate ok');
19
+
20
+ var testDate = isoDate('0500-12-12');
21
+ t.is(testDate.getFullYear(), 500, 'isoDate year ok for year < 1000');
22
+ t.is(testDate.getDate(), 12, 'isoDate day ok for year < 1000');
23
+ t.is(testDate.getMonth(), 11, 'isoDate month ok for year < 1000');
24
+ t.ok(objEqual(testDate, new Date("December 12, 0500")), "matches string date for year < 1000");
25
+ t.is(toISODate(testDate), '0500-12-12', 'toISODate ok for year < 1000');
26
+
27
+ t.is(compare(new Date("February 3, 2005"), new Date(2005, 1, 3)), 0, "dates compare eq");
28
+ t.is(compare(new Date("February 3, 2005"), new Date(2005, 2, 3)), -1, "dates compare lt");
29
+ t.is(compare(new Date("February 3, 2005"), new Date(2005, 0, 3)), 1, "dates compare gt");
30
+
31
+ var testDate = isoDate('2005-2-3');
32
+ t.is(compare(americanDate('2/3/2005'), testDate), 0, "americanDate eq");
33
+ t.is(compare('2/3/2005', toAmericanDate(testDate)), 0, "toAmericanDate eq");
34
+
35
+ var testTimestamp = isoTimestamp('2005-2-3 22:01:03');
36
+ t.is(compare(testTimestamp, new Date(2005,1,3,22,1,3)), 0, "isoTimestamp eq");
37
+ t.is(compare(testTimestamp, isoTimestamp('2005-2-3T22:01:03')), 0, "isoTimestamp (real ISO) eq");
38
+ t.is(compare(toISOTimestamp(testTimestamp), '2005-02-03 22:01:03'), 0, "toISOTimestamp eq");
39
+ testTimestamp = isoTimestamp('2005-2-3T22:01:03Z');
40
+ t.is(toISOTimestamp(testTimestamp, true), '2005-02-03T22:01:03Z', "toISOTimestamp (real ISO) eq");
41
+
42
+ var localTZ = Math.round((new Date(2005,1,3,22,1,3)).getTimezoneOffset()/60)
43
+ var direction = (localTZ < 0) ? "+" : "-";
44
+ localTZ = Math.abs(localTZ);
45
+ localTZ = direction + ((localTZ < 10) ? "0" : "") + localTZ;
46
+ testTimestamp = isoTimestamp("2005-2-3T22:01:03" + localTZ);
47
+ var testDateTimestamp = new Date(2005,1,3,22,1,3);
48
+ t.is(compare(testTimestamp, testDateTimestamp), 0, "equal with local tz");
49
+ testTimestamp = isoTimestamp("2005-2-3T17:01:03-05");
50
+ var testDateTimestamp = new Date(Date.UTC(2005,1,3,22,1,3));
51
+ t.is(compare(testTimestamp, testDateTimestamp), 0, "equal with specific tz");
52
+ };
@@ -0,0 +1,30 @@
1
+ if (typeof(dojo) != 'undefined') { dojo.require('MochiKit.Signal'); }
2
+ if (typeof(JSAN) != 'undefined') { JSAN.use('MochiKit.Signal'); }
3
+ if (typeof(tests) == 'undefined') { tests = {}; }
4
+
5
+ tests.test_DragAndDrop = function (t) {
6
+
7
+ var drag1 = new MochiKit.DragAndDrop.Draggable('drag1', {'revert': true, 'ghosting': true});
8
+
9
+ var drop1 = new MochiKit.DragAndDrop.Droppable('drop1', {'hoverclass': 'drop-hover'});
10
+ drop1.activate();
11
+ t.is(hasElementClass('drop1', 'drop-hover'), true, "hoverclass ok");
12
+ drop1.deactivate();
13
+ t.is(hasElementClass('drop1', 'drop-hover'), false, "remove hoverclass ok");
14
+ drop1.destroy();
15
+
16
+ t.is( isEmpty(MochiKit.DragAndDrop.Droppables.drops), true, "Unregister droppable ok");
17
+
18
+ var onhover = function (element) {
19
+ t.is(element, getElement('drag1'), 'onhover ok');
20
+ };
21
+ var drop2 = new MochiKit.DragAndDrop.Droppable('drop1', {'onhover': onhover});
22
+ var pos = getElementPosition('drop1');
23
+ pos = {"x": pos.x + 5, "y": pos.y + 5};
24
+ MochiKit.DragAndDrop.Droppables.show({"page": pos}, getElement('drag1'));
25
+
26
+ drag1.destroy();
27
+ t.is( isEmpty(MochiKit.DragAndDrop.Draggables.drops), true, "Unregister draggable ok");
28
+
29
+ };
30
+
@@ -0,0 +1,89 @@
1
+ if (typeof(dojo) != 'undefined') { dojo.require('MochiKit.Format'); }
2
+ if (typeof(JSAN) != 'undefined') { JSAN.use('MochiKit.Format'); }
3
+ if (typeof(tests) == 'undefined') { tests = {}; }
4
+
5
+ tests.test_Format = function (t) {
6
+ t.is( truncToFixed(0.1234, 3), "0.123", "truncToFixed truncate" );
7
+ t.is( truncToFixed(0.12, 3), "0.120", "truncToFixed trailing zeros" );
8
+ t.is( truncToFixed(0.15, 1), "0.1", "truncToFixed no round" );
9
+ t.is( truncToFixed(0.15, 0), "0", "truncToFixed zero (edge case)" );
10
+ t.is( truncToFixed(568.80, 2), "568.80", "truncToFixed 568.80, floating-point error" );
11
+ t.is( truncToFixed(1.23e+20, 2), "123000000000000000000.00", "truncToFixed 1.23e+20" );
12
+ t.is( truncToFixed(-1.23e+20, 2), "-123000000000000000000.00", "truncToFixed -1.23e+20" );
13
+ t.is( truncToFixed(1.23e-10, 2), "0.00", "truncToFixed 1.23e-10" );
14
+
15
+ t.is( roundToFixed(0.1234, 3), "0.123", "roundToFixed truncate" );
16
+ t.is( roundToFixed(0.12, 3), "0.120", "roundToFixed trailing zeros" );
17
+ t.is( roundToFixed(0.15, 1), "0.2", "roundToFixed round" );
18
+ t.is( roundToFixed(0.15, 0), "0", "roundToFixed zero (edge case)" );
19
+ t.is( roundToFixed(568.80, 2), "568.80", "roundToFixed 568.80, floating-point error" );
20
+
21
+ t.is( twoDigitFloat(-0.1234), "-0.12", "twoDigitFloat -0.1234 correct");
22
+ t.is( twoDigitFloat(-0.1), "-0.1", "twoDigitFloat -0.1 correct");
23
+ t.is( twoDigitFloat(-0), "0", "twoDigitFloat -0 correct");
24
+ t.is( twoDigitFloat(0), "0", "twoDigitFloat 0 correct");
25
+ t.is( twoDigitFloat(1), "1", "twoDigitFloat 1 correct");
26
+ t.is( twoDigitFloat(1.0), "1", "twoDigitFloat 1.0 correct");
27
+ t.is( twoDigitFloat(1.2), "1.2", "twoDigitFloat 1.2 correct");
28
+ t.is( twoDigitFloat(1.234), "1.23", "twoDigitFloat 1.234 correct");
29
+ t.is( twoDigitFloat(0.23), "0.23", "twoDigitFloat 0.23 correct");
30
+ t.is( twoDigitFloat(0.01), "0.01", "twoDigitFloat 0.01 correct");
31
+ t.is( twoDigitFloat(568.80), "568.8", "twoDigitFloat, floating-point error");
32
+
33
+ t.is( percentFormat(123), "12300%", "percentFormat 123 correct");
34
+ t.is( percentFormat(1.23), "123%", "percentFormat 123 correct");
35
+ t.is( twoDigitAverage(1, 0), "0", "twoDigitAverage dbz correct");
36
+ t.is( twoDigitAverage(1, 1), "1", "twoDigitAverage 1 correct");
37
+ t.is( twoDigitAverage(1, 10), "0.1", "twoDigitAverage .1 correct");
38
+ function reprIs(a, b) {
39
+ arguments[0] = repr(a);
40
+ arguments[1] = repr(b);
41
+ t.is.apply(this, arguments);
42
+ }
43
+ reprIs( lstrip("\r\t\n foo \n\t\r"), "foo \n\t\r", "lstrip whitespace chars" );
44
+ reprIs( rstrip("\r\t\n foo \n\t\r"), "\r\t\n foo", "rstrip whitespace chars" );
45
+ reprIs( strip("\r\t\n foo \n\t\r"), "foo", "strip whitespace chars" );
46
+ reprIs( lstrip("\r\n\t \r", "\r"), "\n\t \r", "lstrip custom chars" );
47
+ reprIs( rstrip("\r\n\t \r", "\r"), "\r\n\t ", "rstrip custom chars" );
48
+ reprIs( strip("\r\n\t \r", "\r"), "\n\t ", "strip custom chars" );
49
+
50
+ var nf = numberFormatter("$###,###.00 footer");
51
+ t.is( nf(1000.1), "$1,000.10 footer", "trailing zeros" );
52
+ t.is( nf(1000000.1), "$1,000,000.10 footer", "two seps" );
53
+ t.is( nf(100), "$100.00 footer", "shorter than sep" );
54
+ t.is( nf(100.555), "$100.56 footer", "rounding" );
55
+ t.is( nf(-100.555), "$-100.56 footer", "default neg" );
56
+ nf = numberFormatter("-$###,###.00");
57
+ t.is( nf(-100.555), "-$100.56", "custom neg" );
58
+ nf = numberFormatter("0000.0000");
59
+ t.is( nf(0), "0000.0000", "leading and trailing" );
60
+ t.is( nf(1.1), "0001.1000", "leading and trailing" );
61
+ t.is( nf(12345.12345), "12345.1235", "no need for leading/trailing" );
62
+ nf = numberFormatter("0000.0000");
63
+ t.is( nf("taco"), "", "default placeholder" );
64
+ nf = numberFormatter("###,###.00", "foo", "de_DE");
65
+ t.is( nf("taco"), "foo", "custom placeholder" );
66
+ t.is( nf(12345.12345), "12.345,12", "de_DE locale" );
67
+ nf = numberFormatter("#%");
68
+ t.is( nf(1), "100%", "trivial percent" );
69
+ t.is( nf(0.55), "55%", "percent" );
70
+
71
+ var customLocale = {
72
+ separator: " apples and ",
73
+ decimal: " bagels at ",
74
+ percent: "am for breakfast"};
75
+ var customFormatter = numberFormatter("###,###.0%", "No breakfast", customLocale);
76
+ t.is( customFormatter(23.458), "2 apples and 345 bagels at 8am for breakfast", "custom locale" );
77
+
78
+ nf = numberFormatter("###,###");
79
+ t.is( nf(123), "123", "large number format" );
80
+ t.is( nf(1234), "1,234", "large number format" );
81
+ t.is( nf(12345), "12,345", "large number format" );
82
+ t.is( nf(123456), "123,456", "large number format" );
83
+ t.is( nf(1234567), "1,234,567", "large number format" );
84
+ t.is( nf(12345678), "12,345,678", "large number format" );
85
+ t.is( nf(123456789), "123,456,789", "large number format" );
86
+ t.is( nf(1234567890), "1,234,567,890", "large number format" );
87
+ t.is( nf(12345678901), "12,345,678,901", "large number format" );
88
+ t.is( nf(123456789012), "123,456,789,012", "large number format" );
89
+ };
@@ -0,0 +1,186 @@
1
+ if (typeof(dojo) != 'undefined') { dojo.require('MochiKit.Iter'); }
2
+ if (typeof(JSAN) != 'undefined') { JSAN.use('MochiKit.Iter'); }
3
+ if (typeof(tests) == 'undefined') { tests = {}; }
4
+
5
+ tests.test_Iter = function (t) {
6
+ t.is( sum([1, 2, 3, 4, 5]), 15, "sum works on Arrays" );
7
+ t.is( compare(list([1, 2, 3]), [1, 2, 3]), 0, "list([x]) == [x]" );
8
+ t.is( compare(list(range(6, 0, -1)), [6, 5, 4, 3, 2, 1]), 0, "list(range(6, 0, -1)");
9
+ t.is( compare(list(range(6)), [0, 1, 2, 3, 4, 5]), 0, "list(range(6))" );
10
+ var moreThanTwo = partial(operator.lt, 2);
11
+ t.is( sum(ifilter(moreThanTwo, range(6))), 12, "sum(ifilter(, range()))" );
12
+ t.is( sum(ifilterfalse(moreThanTwo, range(6))), 3, "sum(ifilterfalse(, range()))" );
13
+
14
+ var c = count(10);
15
+ t.is( compare([c.next(), c.next(), c.next()], [10, 11, 12]), 0, "count()" );
16
+ c = cycle([1, 2]);
17
+ t.is( compare([c.next(), c.next(), c.next()], [1, 2, 1]), 0, "cycle()" );
18
+ c = repeat("foo", 3);
19
+ t.is( compare(list(c), ["foo", "foo", "foo"]), 0, "repeat()" );
20
+ c = izip([1, 2], [3, 4, 5], repeat("foo"));
21
+ t.is( compare(list(c), [[1, 3, "foo"], [2, 4, "foo"]]), 0, "izip()" );
22
+
23
+ t.is( compare(list(range(5)), [0, 1, 2, 3, 4]), 0, "range(x)" );
24
+ c = islice(range(10), 0, 10, 2);
25
+ t.is( compare(list(c), [0, 2, 4, 6, 8]), 0, "islice(x, y, z)" );
26
+
27
+ c = imap(operator.add, [1, 2, 3], [2, 4, 6]);
28
+ t.is( compare(list(c), [3, 6, 9]), 0, "imap(fn, p, q)" );
29
+
30
+ c = filter(partial(operator.lt, 1), iter([1, 2, 3]));
31
+ t.is( compare(c, [2, 3]), 0, "filter(fn, iterable)" );
32
+
33
+ c = map(partial(operator.add, -1), iter([1, 2, 3]));
34
+ t.is( compare(c, [0, 1, 2]), 0, "map(fn, iterable)" );
35
+
36
+ c = map(operator.add, iter([1, 2, 3]), [2, 4, 6]);
37
+ t.is( compare(c, [3, 6, 9]), 0, "map(fn, iterable, q)" );
38
+
39
+ c = map(operator.add, iter([1, 2, 3]), iter([2, 4, 6]));
40
+ t.is( compare(c, [3, 6, 9]), 0, "map(fn, iterable, iterable)" );
41
+
42
+ c = applymap(operator.add, [[1, 2], [2, 4], [3, 6]]);
43
+ t.is( compare(list(c), [3, 6, 9]), 0, "applymap()" );
44
+
45
+ c = applymap(function (a) { return [this, a]; }, [[1], [2]], 1);
46
+ t.is( compare(list(c), [[1, 1], [1, 2]]), 0, "applymap(self)" );
47
+
48
+ c = chain(range(2), range(3));
49
+ t.is( compare(list(c), [0, 1, 0, 1, 2]), 0, "chain(p, q)" );
50
+
51
+ var lessThanFive = partial(operator.gt, 5);
52
+ c = takewhile(lessThanFive, count());
53
+ t.is( compare(list(c), [0, 1, 2, 3, 4]), 0, "takewhile()" );
54
+
55
+ c = dropwhile(lessThanFive, range(10));
56
+ t.is( compare(list(c), [5, 6, 7, 8, 9]), 0, "dropwhile()" );
57
+
58
+ c = tee(range(5), 3);
59
+ t.is( compare(list(c[0]), list(c[1])), 0, "tee(..., 3) p0 == p1" );
60
+ t.is( compare(list(c[2]), [0, 1, 2, 3, 4]), 0, "tee(..., 3) p2 == fixed" );
61
+
62
+ t.is( compare(reduce(operator.add, range(10)), 45), 0, "reduce(op.add)" );
63
+
64
+ try {
65
+ reduce(operator.add, []);
66
+ t.ok( false, "reduce didn't raise anything with empty list and no start?!" );
67
+ } catch (e) {
68
+ if (e instanceof TypeError) {
69
+ t.ok( true, "reduce raised TypeError correctly" );
70
+ } else {
71
+ t.ok( false, "reduce raised the wrong exception?" );
72
+ }
73
+ }
74
+
75
+ t.is( reduce(operator.add, [], 10), 10, "range initial value OK empty" );
76
+ t.is( reduce(operator.add, [1], 10), 11, "range initial value OK populated" );
77
+
78
+ t.is( compare(iextend([1], range(2)), [1, 0, 1]), 0, "iextend(...)" );
79
+ var rval = [];
80
+ var o = [0, 1, 2, 3];
81
+ o.next = range(2).next;
82
+ t.is( iextend([], o).length, 2, "iextend handles array-like iterables" );
83
+
84
+ var x = [];
85
+ exhaust(imap(bind(x.push, x), range(5)));
86
+ t.is( compare(x, [0, 1, 2, 3, 4]), 0, "exhaust(...)" );
87
+
88
+ t.is( every([1, 2, 3, 4, 5, 4], lessThanFive), false, "every false" );
89
+ t.is( every([1, 2, 3, 4, 4], lessThanFive), true, "every true" );
90
+ t.is( some([1, 2, 3, 4, 4], lessThanFive), true, "some true" );
91
+ t.is( some([5, 6, 7, 8, 9], lessThanFive), false, "some false" );
92
+ t.is( some([5, 6, 7, 8, 4], lessThanFive), true, "some true" );
93
+
94
+ var rval = [];
95
+ forEach(range(2), rval.push, rval);
96
+ t.is( compare(rval, [0, 1]), 0, "forEach works bound" );
97
+
98
+ function foo(o) {
99
+ rval.push(o);
100
+ }
101
+ forEach(range(2), foo);
102
+ t.is( compare(rval, [0, 1, 0, 1]), 0, "forEach works unbound" );
103
+
104
+ var rval = [];
105
+ var o = [0, 1, 2, 3];
106
+ o.next = range(2).next;
107
+ forEach(o, rval.push, rval);
108
+ t.is( rval.length, 2, "forEach handles array-like iterables" );
109
+
110
+ t.is( compare(sorted([3, 2, 1]), [1, 2, 3]), 0, "sorted default" );
111
+ rval = sorted(["aaa", "bb", "c"], keyComparator("length"));
112
+ t.is(compare(rval, ["c", "bb", "aaa"]), 0, "sorted custom");
113
+
114
+ t.is( compare(reversed(range(4)), [3, 2, 1, 0]), 0, "reversed iterator" );
115
+ t.is( compare(reversed([5, 6, 7]), [7, 6, 5]), 0, "reversed list" );
116
+
117
+ var o = {lst: [1, 2, 3], iterateNext: function () { return this.lst.shift(); }};
118
+ t.is( compare(list(o), [1, 2, 3]), 0, "iterateNext" );
119
+
120
+
121
+ function except(exc, func) {
122
+ try {
123
+ func();
124
+ t.ok(false, exc.name + " was not raised.");
125
+ } catch (e) {
126
+ if (e == exc) {
127
+ t.ok( true, "raised " + exc.name + " correctly" );
128
+ } else {
129
+ t.ok( false, "raised the wrong exception?" );
130
+ }
131
+ }
132
+ }
133
+
134
+ odd = partial(operator.and, 1)
135
+
136
+ // empty
137
+ grouped = groupby([]);
138
+ except(StopIteration, grouped.next);
139
+
140
+ // exhaust sub-iterator
141
+ grouped = groupby([2,4,6,7], odd);
142
+ kv = grouped.next(); k = kv[0], subiter = kv[1];
143
+ t.is(k, 0, "odd(2) = odd(4) = odd(6) == 0");
144
+ t.is(subiter.next(), 2, "sub-iterator.next() == 2");
145
+ t.is(subiter.next(), 4, "sub-iterator.next() == 4");
146
+ t.is(subiter.next(), 6, "sub-iterator.next() == 6");
147
+ except(StopIteration, subiter.next);
148
+ kv = grouped.next(); key = kv[0], subiter = kv[1];
149
+ t.is(key, 1, "odd(7) == 1");
150
+ t.is(subiter.next(), 7, "sub-iterator.next() == 7");
151
+ except(StopIteration, subiter.next);
152
+
153
+ // not consume sub-iterator
154
+ grouped = groupby([2,4,6,7], odd);
155
+ kv = grouped.next(); key = kv[0], subiter = kv[1];
156
+ t.is(key, 0, "0 = odd(2) = odd(4) = odd(6)");
157
+ kv = grouped.next(); key = kv[0], subiter = kv[1];
158
+ t.is(key, 1, "1 = odd(7)");
159
+ except(StopIteration, grouped.next);
160
+
161
+ // consume sub-iterator partially
162
+ grouped = groupby([3,1,1,2], odd);
163
+ kv = grouped.next(); key = kv[0], subiter = kv[1];
164
+ t.is(key, 1, "odd(1) == 1");
165
+ t.is(subiter.next(), 3, "sub-iterator.next() == 3");
166
+ kv = grouped.next(); key = kv[0], v = kv[1];
167
+ t.is(key, 0, "skip (1,1), odd(2) == 0");
168
+ except(StopIteration, grouped.next);
169
+
170
+ // null
171
+ grouped = groupby([null,null]);
172
+ kv = grouped.next(); k = kv[0], v = kv[1];
173
+ t.is(k, null, "null ok");
174
+
175
+ // groupby - array version
176
+ isEqual = (t.isDeeply || function (a, b, msg) {
177
+ return t.ok(compare(a, b) == 0, msg);
178
+ });
179
+ isEqual(groupby_as_array([ ] ), [ ], "empty");
180
+ isEqual(groupby_as_array([1,1,1]), [ [1,[1,1,1]] ], "[1,1,1]: [1,1,1]");
181
+ isEqual(groupby_as_array([1,2,2]), [ [1,[1] ], [2,[2,2]] ], "[1,2,2]: [1], [2,2]");
182
+ isEqual(groupby_as_array([1,1,2]), [ [1,[1,1] ], [2,[2 ]] ], "[1,1,2]: [1,1], [2]");
183
+ isEqual(groupby_as_array([null,null] ), [ [null,[null,null]] ], "[null,null]: [null,null]");
184
+ grouped = groupby_as_array([1,1,3,2,4,6,8], odd);
185
+ isEqual(grouped, [[1, [1,1,3]], [0,[2,4,6,8]]], "[1,1,3,2,4,6,7] odd: [1,1,3], [2,4,6,8]");
186
+ };
@@ -0,0 +1,88 @@
1
+ if (typeof(dojo) != 'undefined') { dojo.require('MochiKit.Logging'); }
2
+ if (typeof(JSAN) != 'undefined') { JSAN.use('MochiKit.Logging'); }
3
+ if (typeof(tests) == 'undefined') { tests = {}; }
4
+
5
+ tests.test_Logging = function (t) {
6
+
7
+ // just in case
8
+ logger.clear();
9
+
10
+ t.is( logLevelAtLeast('DEBUG')('INFO'), false, 'logLevelAtLeast false' );
11
+ t.is( logLevelAtLeast('WARNING')('INFO'), false, 'logLevelAtLeast true' );
12
+ t.ok( logger instanceof Logger, "global logger installed" );
13
+
14
+ var allMessages = [];
15
+ logger.addListener("allMessages", null,
16
+ bind(allMessages.push, allMessages));
17
+
18
+ var fatalMessages = [];
19
+ logger.addListener("fatalMessages", "FATAL",
20
+ bind(fatalMessages.push, fatalMessages));
21
+
22
+ var firstTwo = [];
23
+ logger.addListener("firstTwo", null,
24
+ bind(firstTwo.push, firstTwo));
25
+
26
+
27
+ log("foo");
28
+ var msgs = logger.getMessages();
29
+ t.is( msgs.length, 1, 'global log() put one message in queue' );
30
+ t.is( compare(allMessages, msgs), 0, "allMessages listener" );
31
+ var msg = msgs.pop();
32
+ t.is( compare(msg.info, ["foo"]), 0, "info matches" );
33
+ t.is( msg.level, "INFO", "level matches" );
34
+
35
+ logDebug("debugFoo");
36
+ t.is( msgs.length, 0, 'getMessages() returns copy' );
37
+ msgs = logger.getMessages();
38
+ t.is( compare(allMessages, msgs), 0, "allMessages listener" );
39
+ t.is( msgs.length, 2, 'logDebug()' );
40
+ msg = msgs.pop();
41
+ t.is( compare(msg.info, ["debugFoo"]), 0, "info matches" );
42
+ t.is( msg.level, "DEBUG", "level matches" );
43
+
44
+ logger.removeListener("firstTwo");
45
+
46
+ logError("errorFoo");
47
+ msgs = logger.getMessages();
48
+ t.is( compare(allMessages, msgs), 0, "allMessages listener" );
49
+ t.is( msgs.length, 3, 'logError()' );
50
+ msg = msgs.pop();
51
+ t.is( compare(msg.info, ["errorFoo"]), 0, "info matches" );
52
+ t.is( msg.level, "ERROR", "level matches" );
53
+
54
+ logWarning("warningFoo");
55
+ msgs = logger.getMessages();
56
+ t.is( compare(allMessages, msgs), 0, "allMessages listener" );
57
+ t.is( msgs.length, 4, 'logWarning()' );
58
+ msg = msgs.pop();
59
+ t.is( compare(msg.info, ["warningFoo"]), 0, "info matches" );
60
+ t.is( msg.level, "WARNING", "level matches" );
61
+
62
+ logFatal("fatalFoo");
63
+ msgs = logger.getMessages();
64
+ t.is( compare(allMessages, msgs), 0, "allMessages listener" );
65
+ t.is( msgs.length, 5, 'logFatal()' );
66
+ msg = msgs.pop();
67
+ t.is( compare(fatalMessages, [msg]), 0, "fatalMessages listener" );
68
+ t.is( compare(msg.info, ["fatalFoo"]), 0, "info matches" );
69
+ t.is( msg.level, "FATAL", "level matches" );
70
+ msgs = logger.getMessages(1);
71
+ t.is( compare(fatalMessages, msgs), 0, "getMessages with limit returns latest" );
72
+
73
+ logger.removeListener("allMessages");
74
+ logger.removeListener("fatalMessages");
75
+
76
+ t.is( compare(firstTwo, logger.getMessages().slice(0, 2)), 0, "firstTwo" );
77
+
78
+ logger.clear();
79
+ msgs = logger.getMessages();
80
+ t.is(msgs.length, 0, "clear removes existing messages");
81
+
82
+ logger.baseLog(LogLevel.INFO, 'infoFoo');
83
+ msg = logger.getMessages().pop();
84
+ t.is(msg.level, "INFO", "baseLog converts level")
85
+ logger.baseLog(45, 'errorFoo');
86
+ msg = logger.getMessages().pop();
87
+ t.is(msg.level, "ERROR", "baseLog converts ad-hoc level")
88
+ };