crew 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (606) hide show
  1. checksums.yaml +7 -0
  2. data/.crew/config +122 -0
  3. data/.crew/contexts/local.rb +1 -0
  4. data/.crew/contexts/osx-10.8.rb +5 -0
  5. data/.crew/contexts/osx-10.9.rb +5 -0
  6. data/.crew/contexts/test.rb +0 -0
  7. data/.crew/contexts/ubuntu-12.04-64.rb +6 -0
  8. data/.crew/contexts/ubuntu-12.04-i386.rb +6 -0
  9. data/.crew/data/05/85/df/39e0d88053ac3fe958033cac955a2ed51c/tests/osx-10.8/0.json +1 -0
  10. data/.crew/data/05/85/df/39e0d88053ac3fe958033cac955a2ed51c/tests/osx-10.9/0.json +1 -0
  11. data/.crew/data/05/85/df/39e0d88053ac3fe958033cac955a2ed51c/tests/ubuntu-12.04-64/0.json +1 -0
  12. data/.crew/data/05/85/df/39e0d88053ac3fe958033cac955a2ed51c/tests/ubuntu-12.04-i386/0.json +1 -0
  13. data/.crew/data/06/79/a3/d3ce108f6eb906061a8e6b5e90c7a11634/tests/osx-10.8/0.json +1 -0
  14. data/.crew/data/06/79/a3/d3ce108f6eb906061a8e6b5e90c7a11634/tests/osx-10.9/0.json +1 -0
  15. data/.crew/data/06/79/a3/d3ce108f6eb906061a8e6b5e90c7a11634/tests/ubuntu-12.04-64/0.json +1 -0
  16. data/.crew/data/06/79/a3/d3ce108f6eb906061a8e6b5e90c7a11634/tests/ubuntu-12.04-i386/0.json +1 -0
  17. data/.crew/data/07/8e/ab/29fba509c176c33bd5a4a5c15138d99cc7/tests/osx-10.8/0.json +1 -0
  18. data/.crew/data/07/8e/ab/29fba509c176c33bd5a4a5c15138d99cc7/tests/osx-10.9/0.json +1 -0
  19. data/.crew/data/07/8e/ab/29fba509c176c33bd5a4a5c15138d99cc7/tests/ubuntu-12.04-64/0.json +1 -0
  20. data/.crew/data/07/8e/ab/29fba509c176c33bd5a4a5c15138d99cc7/tests/ubuntu-12.04-i386/0.json +1 -0
  21. data/.crew/data/08/90/74/fd34e1851d23c31e428b4eeaf3d41c71e0/tests/osx-10.8/0.json +1 -0
  22. data/.crew/data/08/90/74/fd34e1851d23c31e428b4eeaf3d41c71e0/tests/osx-10.9/0.json +1 -0
  23. data/.crew/data/08/90/74/fd34e1851d23c31e428b4eeaf3d41c71e0/tests/ubuntu-12.04-64/0.json +1 -0
  24. data/.crew/data/08/90/74/fd34e1851d23c31e428b4eeaf3d41c71e0/tests/ubuntu-12.04-i386/0.json +1 -0
  25. data/.crew/data/0a/8b/0f/f58092f3a8f666c7248ec822c9e0d7f3c2/tests/osx-10.8/0.json +1 -0
  26. data/.crew/data/0a/8b/0f/f58092f3a8f666c7248ec822c9e0d7f3c2/tests/osx-10.9/0.json +1 -0
  27. data/.crew/data/0a/8b/0f/f58092f3a8f666c7248ec822c9e0d7f3c2/tests/ubuntu-12.04-64/0.json +1 -0
  28. data/.crew/data/0a/8b/0f/f58092f3a8f666c7248ec822c9e0d7f3c2/tests/ubuntu-12.04-i386/0.json +1 -0
  29. data/.crew/data/0a/aa/04/628b0a42c5d606a8b9da9c210d59b6f787/tests/osx-10.8/0.json +1 -0
  30. data/.crew/data/0e/09/75/9b7660d3c4f57975342494c322e89c6fec/tests/osx-10.8/0.json +1 -0
  31. data/.crew/data/0e/09/75/9b7660d3c4f57975342494c322e89c6fec/tests/osx-10.9/0.json +1 -0
  32. data/.crew/data/0e/09/75/9b7660d3c4f57975342494c322e89c6fec/tests/ubuntu-12.04-64/0.json +1 -0
  33. data/.crew/data/0e/09/75/9b7660d3c4f57975342494c322e89c6fec/tests/ubuntu-12.04-i386/0.json +1 -0
  34. data/.crew/data/0f/21/55/b3eedd595e9469533f3f8a20b069d6cabe/tests/osx-10.8/0.json +1 -0
  35. data/.crew/data/0f/21/55/b3eedd595e9469533f3f8a20b069d6cabe/tests/osx-10.9/0.json +1 -0
  36. data/.crew/data/0f/21/55/b3eedd595e9469533f3f8a20b069d6cabe/tests/ubuntu-12.04-64/0.json +1 -0
  37. data/.crew/data/0f/21/55/b3eedd595e9469533f3f8a20b069d6cabe/tests/ubuntu-12.04-i386/0.json +1 -0
  38. data/.crew/data/12/06/cf/bd13a47b07d92c4da9b304098c056912b4/tests/osx-10.8/0.json +1 -0
  39. data/.crew/data/12/06/cf/bd13a47b07d92c4da9b304098c056912b4/tests/osx-10.9/0.json +1 -0
  40. data/.crew/data/12/06/cf/bd13a47b07d92c4da9b304098c056912b4/tests/ubuntu-12.04-64/0.json +1 -0
  41. data/.crew/data/12/06/cf/bd13a47b07d92c4da9b304098c056912b4/tests/ubuntu-12.04-i386/0.json +1 -0
  42. data/.crew/data/12/b1/ce/b1cf5b4f5d39f725ecc923068ae0b22d0c/tests/osx-10.8/0.json +1 -0
  43. data/.crew/data/12/b1/ce/b1cf5b4f5d39f725ecc923068ae0b22d0c/tests/osx-10.9/0.json +1 -0
  44. data/.crew/data/12/b1/ce/b1cf5b4f5d39f725ecc923068ae0b22d0c/tests/ubuntu-12.04-64/0.json +1 -0
  45. data/.crew/data/12/b1/ce/b1cf5b4f5d39f725ecc923068ae0b22d0c/tests/ubuntu-12.04-i386/0.json +1 -0
  46. data/.crew/data/16/fa/97/9d4e345222b72cf1bcd2980b235546bb21/tests/osx-10.8/0.json +1 -0
  47. data/.crew/data/16/fa/97/9d4e345222b72cf1bcd2980b235546bb21/tests/osx-10.8/1.json +1 -0
  48. data/.crew/data/16/fa/97/9d4e345222b72cf1bcd2980b235546bb21/tests/osx-10.9/0.json +1 -0
  49. data/.crew/data/16/fa/97/9d4e345222b72cf1bcd2980b235546bb21/tests/osx-10.9/1.json +1 -0
  50. data/.crew/data/16/fa/97/9d4e345222b72cf1bcd2980b235546bb21/tests/ubuntu-12.04-64/0.json +1 -0
  51. data/.crew/data/16/fa/97/9d4e345222b72cf1bcd2980b235546bb21/tests/ubuntu-12.04-64/1.json +1 -0
  52. data/.crew/data/16/fa/97/9d4e345222b72cf1bcd2980b235546bb21/tests/ubuntu-12.04-i386/0.json +1 -0
  53. data/.crew/data/16/fa/97/9d4e345222b72cf1bcd2980b235546bb21/tests/ubuntu-12.04-i386/1.json +1 -0
  54. data/.crew/data/18/a1/92/88d80b56c75d8b0af29af50b43533a06b9/tests/osx-10.8/0.json +1 -0
  55. data/.crew/data/18/a1/92/88d80b56c75d8b0af29af50b43533a06b9/tests/osx-10.9/0.json +1 -0
  56. data/.crew/data/18/a1/92/88d80b56c75d8b0af29af50b43533a06b9/tests/ubuntu-12.04-64/0.json +1 -0
  57. data/.crew/data/18/a1/92/88d80b56c75d8b0af29af50b43533a06b9/tests/ubuntu-12.04-i386/0.json +1 -0
  58. data/.crew/data/18/c1/94/369b5607c05f5f2b9287315a4b3e378f70/tests/osx-10.8/0.json +1 -0
  59. data/.crew/data/18/c1/94/369b5607c05f5f2b9287315a4b3e378f70/tests/osx-10.9/0.json +1 -0
  60. data/.crew/data/18/c1/94/369b5607c05f5f2b9287315a4b3e378f70/tests/ubuntu-12.04-64/0.json +1 -0
  61. data/.crew/data/18/c1/94/369b5607c05f5f2b9287315a4b3e378f70/tests/ubuntu-12.04-i386/0.json +1 -0
  62. data/.crew/data/1d/a9/b9/157a553684900e27316bf3db10a011022c/tests/osx-10.8/0.json +1 -0
  63. data/.crew/data/1d/a9/b9/157a553684900e27316bf3db10a011022c/tests/osx-10.9/0.json +1 -0
  64. data/.crew/data/1d/a9/b9/157a553684900e27316bf3db10a011022c/tests/ubuntu-12.04-64/0.json +1 -0
  65. data/.crew/data/1d/a9/b9/157a553684900e27316bf3db10a011022c/tests/ubuntu-12.04-i386/0.json +1 -0
  66. data/.crew/data/20/44/1c/d33e04260319daae5307969275dec7644b/tests/osx-10.8/0.json +1 -0
  67. data/.crew/data/20/44/1c/d33e04260319daae5307969275dec7644b/tests/osx-10.9/0.json +1 -0
  68. data/.crew/data/20/44/1c/d33e04260319daae5307969275dec7644b/tests/ubuntu-12.04-64/0.json +1 -0
  69. data/.crew/data/20/44/1c/d33e04260319daae5307969275dec7644b/tests/ubuntu-12.04-i386/0.json +1 -0
  70. data/.crew/data/24/35/b9/2355d09cd3f530f6857195181158cf010b/tests/osx-10.8/0.json +1 -0
  71. data/.crew/data/24/35/b9/2355d09cd3f530f6857195181158cf010b/tests/osx-10.9/0.json +1 -0
  72. data/.crew/data/24/35/b9/2355d09cd3f530f6857195181158cf010b/tests/ubuntu-12.04-64/0.json +1 -0
  73. data/.crew/data/24/35/b9/2355d09cd3f530f6857195181158cf010b/tests/ubuntu-12.04-i386/0.json +1 -0
  74. data/.crew/data/24/93/35/3423fe5ca46a8f16366e50eac708bf7d74/tests/osx-10.8/0.json +1 -0
  75. data/.crew/data/24/93/35/3423fe5ca46a8f16366e50eac708bf7d74/tests/osx-10.9/0.json +1 -0
  76. data/.crew/data/24/93/35/3423fe5ca46a8f16366e50eac708bf7d74/tests/ubuntu-12.04-64/0.json +1 -0
  77. data/.crew/data/24/93/35/3423fe5ca46a8f16366e50eac708bf7d74/tests/ubuntu-12.04-i386/0.json +1 -0
  78. data/.crew/data/2e/85/2a/53e6edd481af4e151f4ab9a0ac79e258f1/tests/osx-10.8/0.json +1 -0
  79. data/.crew/data/2e/85/2a/53e6edd481af4e151f4ab9a0ac79e258f1/tests/osx-10.9/0.json +1 -0
  80. data/.crew/data/2e/85/2a/53e6edd481af4e151f4ab9a0ac79e258f1/tests/ubuntu-12.04-64/0.json +1 -0
  81. data/.crew/data/2e/85/2a/53e6edd481af4e151f4ab9a0ac79e258f1/tests/ubuntu-12.04-i386/0.json +1 -0
  82. data/.crew/data/33/81/1d/9293cf0758b4adaaa4433e9f8eb4ee4f45/tests/osx-10.8/0.json +1 -0
  83. data/.crew/data/33/81/1d/9293cf0758b4adaaa4433e9f8eb4ee4f45/tests/osx-10.9/0.json +1 -0
  84. data/.crew/data/33/81/1d/9293cf0758b4adaaa4433e9f8eb4ee4f45/tests/ubuntu-12.04-64/0.json +1 -0
  85. data/.crew/data/33/81/1d/9293cf0758b4adaaa4433e9f8eb4ee4f45/tests/ubuntu-12.04-i386/0.json +1 -0
  86. data/.crew/data/36/67/ee/c500ccc460cf6c2737a2ede8169dc135a2/tests/osx-10.8/0.json +1 -0
  87. data/.crew/data/36/67/ee/c500ccc460cf6c2737a2ede8169dc135a2/tests/osx-10.9/0.json +1 -0
  88. data/.crew/data/36/67/ee/c500ccc460cf6c2737a2ede8169dc135a2/tests/ubuntu-12.04-64/0.json +1 -0
  89. data/.crew/data/36/67/ee/c500ccc460cf6c2737a2ede8169dc135a2/tests/ubuntu-12.04-i386/0.json +1 -0
  90. data/.crew/data/38/73/4c/1b7b3d8baee8bdb337a23fceacf6dc8179/tests/osx-10.8/0.json +1 -0
  91. data/.crew/data/38/73/4c/1b7b3d8baee8bdb337a23fceacf6dc8179/tests/osx-10.9/0.json +1 -0
  92. data/.crew/data/38/73/4c/1b7b3d8baee8bdb337a23fceacf6dc8179/tests/ubuntu-12.04-64/0.json +1 -0
  93. data/.crew/data/38/73/4c/1b7b3d8baee8bdb337a23fceacf6dc8179/tests/ubuntu-12.04-i386/0.json +1 -0
  94. data/.crew/data/3b/1e/7b/8d889f6418a7f4d6bb0c1af59e930708b6/tests/osx-10.8/0.json +1 -0
  95. data/.crew/data/3b/1e/7b/8d889f6418a7f4d6bb0c1af59e930708b6/tests/osx-10.9/0.json +1 -0
  96. data/.crew/data/3b/1e/7b/8d889f6418a7f4d6bb0c1af59e930708b6/tests/ubuntu-12.04-64/0.json +1 -0
  97. data/.crew/data/3b/1e/7b/8d889f6418a7f4d6bb0c1af59e930708b6/tests/ubuntu-12.04-i386/0.json +1 -0
  98. data/.crew/data/3b/4f/3f/3fc88c6799dc14750b70b557aa355d85e0/tests/osx-10.8/0.json +1 -0
  99. data/.crew/data/3b/4f/3f/3fc88c6799dc14750b70b557aa355d85e0/tests/osx-10.9/0.json +1 -0
  100. data/.crew/data/3b/4f/3f/3fc88c6799dc14750b70b557aa355d85e0/tests/ubuntu-12.04-64/0.json +1 -0
  101. data/.crew/data/3b/4f/3f/3fc88c6799dc14750b70b557aa355d85e0/tests/ubuntu-12.04-i386/0.json +1 -0
  102. data/.crew/data/3d/12/4a/9c2b5a4cc05a3af7b508d09ce84650b4d8/tests/osx-10.8/0.json +1 -0
  103. data/.crew/data/3d/12/4a/9c2b5a4cc05a3af7b508d09ce84650b4d8/tests/osx-10.8/1.json +1 -0
  104. data/.crew/data/3d/12/4a/9c2b5a4cc05a3af7b508d09ce84650b4d8/tests/osx-10.9/0.json +1 -0
  105. data/.crew/data/3d/12/4a/9c2b5a4cc05a3af7b508d09ce84650b4d8/tests/osx-10.9/1.json +1 -0
  106. data/.crew/data/3d/12/4a/9c2b5a4cc05a3af7b508d09ce84650b4d8/tests/ubuntu-12.04-64/0.json +1 -0
  107. data/.crew/data/3d/12/4a/9c2b5a4cc05a3af7b508d09ce84650b4d8/tests/ubuntu-12.04-64/1.json +1 -0
  108. data/.crew/data/3d/12/4a/9c2b5a4cc05a3af7b508d09ce84650b4d8/tests/ubuntu-12.04-i386/0.json +1 -0
  109. data/.crew/data/3d/12/4a/9c2b5a4cc05a3af7b508d09ce84650b4d8/tests/ubuntu-12.04-i386/1.json +1 -0
  110. data/.crew/data/3f/69/57/1d2327bb01a264c2550f846a2743605059/tests/osx-10.8/0.json +1 -0
  111. data/.crew/data/3f/69/57/1d2327bb01a264c2550f846a2743605059/tests/osx-10.8/1.json +1 -0
  112. data/.crew/data/3f/69/57/1d2327bb01a264c2550f846a2743605059/tests/osx-10.9/0.json +1 -0
  113. data/.crew/data/3f/69/57/1d2327bb01a264c2550f846a2743605059/tests/osx-10.9/1.json +1 -0
  114. data/.crew/data/3f/69/57/1d2327bb01a264c2550f846a2743605059/tests/ubuntu-12.04-64/0.json +1 -0
  115. data/.crew/data/3f/69/57/1d2327bb01a264c2550f846a2743605059/tests/ubuntu-12.04-64/1.json +1 -0
  116. data/.crew/data/3f/69/57/1d2327bb01a264c2550f846a2743605059/tests/ubuntu-12.04-i386/0.json +1 -0
  117. data/.crew/data/3f/69/57/1d2327bb01a264c2550f846a2743605059/tests/ubuntu-12.04-i386/1.json +1 -0
  118. data/.crew/data/3f/ac/a9/c08af9aaa1b328db410105e33d23c7f9ad/tests/osx-10.8/0.json +1 -0
  119. data/.crew/data/3f/ac/a9/c08af9aaa1b328db410105e33d23c7f9ad/tests/osx-10.9/0.json +1 -0
  120. data/.crew/data/3f/ac/a9/c08af9aaa1b328db410105e33d23c7f9ad/tests/ubuntu-12.04-64/0.json +1 -0
  121. data/.crew/data/3f/ac/a9/c08af9aaa1b328db410105e33d23c7f9ad/tests/ubuntu-12.04-i386/0.json +1 -0
  122. data/.crew/data/40/f5/4c/626afdad31becb2c4bbf4257cb84e7cfcb/tests/osx-10.8/0.json +1 -0
  123. data/.crew/data/40/f5/4c/626afdad31becb2c4bbf4257cb84e7cfcb/tests/osx-10.9/0.json +1 -0
  124. data/.crew/data/40/f5/4c/626afdad31becb2c4bbf4257cb84e7cfcb/tests/ubuntu-12.04-64/0.json +1 -0
  125. data/.crew/data/40/f5/4c/626afdad31becb2c4bbf4257cb84e7cfcb/tests/ubuntu-12.04-i386/0.json +1 -0
  126. data/.crew/data/41/7f/ea/38a70542bf56f950bc51979a76528777b8/tests/osx-10.8/0.json +1 -0
  127. data/.crew/data/41/7f/ea/38a70542bf56f950bc51979a76528777b8/tests/osx-10.9/0.json +1 -0
  128. data/.crew/data/41/7f/ea/38a70542bf56f950bc51979a76528777b8/tests/ubuntu-12.04-64/0.json +1 -0
  129. data/.crew/data/41/7f/ea/38a70542bf56f950bc51979a76528777b8/tests/ubuntu-12.04-i386/0.json +1 -0
  130. data/.crew/data/49/5d/c5/508fe63690598c43044d2b8978187773e0/tests/osx-10.8/0.json +1 -0
  131. data/.crew/data/49/5d/c5/508fe63690598c43044d2b8978187773e0/tests/osx-10.9/0.json +1 -0
  132. data/.crew/data/49/5d/c5/508fe63690598c43044d2b8978187773e0/tests/ubuntu-12.04-64/0.json +1 -0
  133. data/.crew/data/49/5d/c5/508fe63690598c43044d2b8978187773e0/tests/ubuntu-12.04-i386/0.json +1 -0
  134. data/.crew/data/4b/18/d9/d12fedd067b532a13f5fb5c2bb7ff22c75/tests/osx-10.8/0.json +1 -0
  135. data/.crew/data/4b/18/d9/d12fedd067b532a13f5fb5c2bb7ff22c75/tests/osx-10.9/0.json +1 -0
  136. data/.crew/data/4b/18/d9/d12fedd067b532a13f5fb5c2bb7ff22c75/tests/ubuntu-12.04-64/0.json +1 -0
  137. data/.crew/data/4b/18/d9/d12fedd067b532a13f5fb5c2bb7ff22c75/tests/ubuntu-12.04-i386/0.json +1 -0
  138. data/.crew/data/4b/da/a5/b92b26c925b17f23eaeb86575746bd7edc/tests/osx-10.8/0.json +1 -0
  139. data/.crew/data/4c/f5/1e/483b8871774254bceae17e12e0f7950ddf/tests/osx-10.8/0.json +1 -0
  140. data/.crew/data/4c/f5/1e/483b8871774254bceae17e12e0f7950ddf/tests/osx-10.9/0.json +1 -0
  141. data/.crew/data/4c/f5/1e/483b8871774254bceae17e12e0f7950ddf/tests/ubuntu-12.04-64/0.json +1 -0
  142. data/.crew/data/4c/f5/1e/483b8871774254bceae17e12e0f7950ddf/tests/ubuntu-12.04-i386/0.json +1 -0
  143. data/.crew/data/50/92/5c/069980f8bf485158e333e073c1734fc00a/tests/osx-10.8/0.json +1 -0
  144. data/.crew/data/50/92/5c/069980f8bf485158e333e073c1734fc00a/tests/osx-10.9/0.json +1 -0
  145. data/.crew/data/50/92/5c/069980f8bf485158e333e073c1734fc00a/tests/ubuntu-12.04-64/0.json +1 -0
  146. data/.crew/data/50/92/5c/069980f8bf485158e333e073c1734fc00a/tests/ubuntu-12.04-i386/0.json +1 -0
  147. data/.crew/data/50/ca/2a/ad3174d05cd472f099fed9ce183b26548a/tests/osx-10.8/0.json +1 -0
  148. data/.crew/data/50/ca/2a/ad3174d05cd472f099fed9ce183b26548a/tests/osx-10.8/1.json +1 -0
  149. data/.crew/data/50/ca/2a/ad3174d05cd472f099fed9ce183b26548a/tests/osx-10.9/0.json +1 -0
  150. data/.crew/data/50/ca/2a/ad3174d05cd472f099fed9ce183b26548a/tests/osx-10.9/1.json +1 -0
  151. data/.crew/data/50/ca/2a/ad3174d05cd472f099fed9ce183b26548a/tests/ubuntu-12.04-64/0.json +1 -0
  152. data/.crew/data/50/ca/2a/ad3174d05cd472f099fed9ce183b26548a/tests/ubuntu-12.04-64/1.json +1 -0
  153. data/.crew/data/50/ca/2a/ad3174d05cd472f099fed9ce183b26548a/tests/ubuntu-12.04-i386/0.json +1 -0
  154. data/.crew/data/50/ca/2a/ad3174d05cd472f099fed9ce183b26548a/tests/ubuntu-12.04-i386/1.json +1 -0
  155. data/.crew/data/54/38/66/f7f4c13ccf7c27f41c9962f5860056e4ba/tests/osx-10.8/0.json +1 -0
  156. data/.crew/data/54/38/66/f7f4c13ccf7c27f41c9962f5860056e4ba/tests/osx-10.9/0.json +1 -0
  157. data/.crew/data/54/38/66/f7f4c13ccf7c27f41c9962f5860056e4ba/tests/ubuntu-12.04-64/0.json +1 -0
  158. data/.crew/data/54/38/66/f7f4c13ccf7c27f41c9962f5860056e4ba/tests/ubuntu-12.04-i386/0.json +1 -0
  159. data/.crew/data/5a/42/55/d9cdf72b385b3e1f66efa7e90538a7b157/tests/osx-10.8/0.json +1 -0
  160. data/.crew/data/5a/42/55/d9cdf72b385b3e1f66efa7e90538a7b157/tests/osx-10.9/0.json +1 -0
  161. data/.crew/data/5a/42/55/d9cdf72b385b3e1f66efa7e90538a7b157/tests/ubuntu-12.04-64/0.json +1 -0
  162. data/.crew/data/5a/42/55/d9cdf72b385b3e1f66efa7e90538a7b157/tests/ubuntu-12.04-i386/0.json +1 -0
  163. data/.crew/data/5a/42/58/4fea59182f1b9b7e390e768edbd24a2c5f/tests/osx-10.8/0.json +1 -0
  164. data/.crew/data/5a/42/58/4fea59182f1b9b7e390e768edbd24a2c5f/tests/osx-10.9/0.json +1 -0
  165. data/.crew/data/5a/42/58/4fea59182f1b9b7e390e768edbd24a2c5f/tests/ubuntu-12.04-64/0.json +1 -0
  166. data/.crew/data/5a/42/58/4fea59182f1b9b7e390e768edbd24a2c5f/tests/ubuntu-12.04-i386/0.json +1 -0
  167. data/.crew/data/60/2f/0a/b2ebc5eee7ef41d19f1339b47d0dd8e463/tests/osx-10.8/0.json +1 -0
  168. data/.crew/data/60/2f/0a/b2ebc5eee7ef41d19f1339b47d0dd8e463/tests/osx-10.8/1.json +1 -0
  169. data/.crew/data/60/2f/0a/b2ebc5eee7ef41d19f1339b47d0dd8e463/tests/osx-10.9/0.json +1 -0
  170. data/.crew/data/60/2f/0a/b2ebc5eee7ef41d19f1339b47d0dd8e463/tests/osx-10.9/1.json +1 -0
  171. data/.crew/data/60/2f/0a/b2ebc5eee7ef41d19f1339b47d0dd8e463/tests/ubuntu-12.04-64/0.json +1 -0
  172. data/.crew/data/60/2f/0a/b2ebc5eee7ef41d19f1339b47d0dd8e463/tests/ubuntu-12.04-64/1.json +1 -0
  173. data/.crew/data/60/2f/0a/b2ebc5eee7ef41d19f1339b47d0dd8e463/tests/ubuntu-12.04-i386/0.json +1 -0
  174. data/.crew/data/60/2f/0a/b2ebc5eee7ef41d19f1339b47d0dd8e463/tests/ubuntu-12.04-i386/1.json +1 -0
  175. data/.crew/data/61/54/b3/2f204b71a66f5876cbabf537c9167635f4/tests/osx-10.8/0.json +1 -0
  176. data/.crew/data/61/54/b3/2f204b71a66f5876cbabf537c9167635f4/tests/osx-10.9/0.json +1 -0
  177. data/.crew/data/61/54/b3/2f204b71a66f5876cbabf537c9167635f4/tests/ubuntu-12.04-64/0.json +1 -0
  178. data/.crew/data/61/54/b3/2f204b71a66f5876cbabf537c9167635f4/tests/ubuntu-12.04-i386/0.json +1 -0
  179. data/.crew/data/67/73/f0/17499b893000bae9d0c0e8e55e4fa3022a/tests/osx-10.8/0.json +1 -0
  180. data/.crew/data/67/73/f0/17499b893000bae9d0c0e8e55e4fa3022a/tests/osx-10.8/1.json +1 -0
  181. data/.crew/data/67/73/f0/17499b893000bae9d0c0e8e55e4fa3022a/tests/osx-10.9/0.json +1 -0
  182. data/.crew/data/67/73/f0/17499b893000bae9d0c0e8e55e4fa3022a/tests/osx-10.9/1.json +1 -0
  183. data/.crew/data/67/73/f0/17499b893000bae9d0c0e8e55e4fa3022a/tests/ubuntu-12.04-64/0.json +1 -0
  184. data/.crew/data/67/73/f0/17499b893000bae9d0c0e8e55e4fa3022a/tests/ubuntu-12.04-64/1.json +1 -0
  185. data/.crew/data/67/73/f0/17499b893000bae9d0c0e8e55e4fa3022a/tests/ubuntu-12.04-i386/0.json +1 -0
  186. data/.crew/data/67/73/f0/17499b893000bae9d0c0e8e55e4fa3022a/tests/ubuntu-12.04-i386/1.json +1 -0
  187. data/.crew/data/6f/f4/2a/dd129133c8765bf4e737fe458f83451252/tests/osx-10.8/0.json +1 -0
  188. data/.crew/data/6f/f4/2a/dd129133c8765bf4e737fe458f83451252/tests/osx-10.9/0.json +1 -0
  189. data/.crew/data/6f/f4/2a/dd129133c8765bf4e737fe458f83451252/tests/ubuntu-12.04-64/0.json +1 -0
  190. data/.crew/data/6f/f4/2a/dd129133c8765bf4e737fe458f83451252/tests/ubuntu-12.04-i386/0.json +1 -0
  191. data/.crew/data/73/9c/7b/0dbfe647f1b4e7dad59081931cfdbca9cb/tests/osx-10.8/0.json +1 -0
  192. data/.crew/data/73/9c/7b/0dbfe647f1b4e7dad59081931cfdbca9cb/tests/osx-10.8/1.json +1 -0
  193. data/.crew/data/73/9c/7b/0dbfe647f1b4e7dad59081931cfdbca9cb/tests/osx-10.8/2.json +1 -0
  194. data/.crew/data/73/9c/7b/0dbfe647f1b4e7dad59081931cfdbca9cb/tests/osx-10.9/0.json +1 -0
  195. data/.crew/data/73/9c/7b/0dbfe647f1b4e7dad59081931cfdbca9cb/tests/osx-10.9/1.json +1 -0
  196. data/.crew/data/73/9c/7b/0dbfe647f1b4e7dad59081931cfdbca9cb/tests/osx-10.9/2.json +1 -0
  197. data/.crew/data/73/9c/7b/0dbfe647f1b4e7dad59081931cfdbca9cb/tests/ubuntu-12.04-64/0.json +1 -0
  198. data/.crew/data/73/9c/7b/0dbfe647f1b4e7dad59081931cfdbca9cb/tests/ubuntu-12.04-64/1.json +1 -0
  199. data/.crew/data/73/9c/7b/0dbfe647f1b4e7dad59081931cfdbca9cb/tests/ubuntu-12.04-64/2.json +1 -0
  200. data/.crew/data/73/9c/7b/0dbfe647f1b4e7dad59081931cfdbca9cb/tests/ubuntu-12.04-i386/0.json +1 -0
  201. data/.crew/data/73/9c/7b/0dbfe647f1b4e7dad59081931cfdbca9cb/tests/ubuntu-12.04-i386/1.json +1 -0
  202. data/.crew/data/73/9c/7b/0dbfe647f1b4e7dad59081931cfdbca9cb/tests/ubuntu-12.04-i386/2.json +1 -0
  203. data/.crew/data/73/b3/ca/9bb80d9cc345d2c175c01308796b1dc387/tests/osx-10.8/0.json +1 -0
  204. data/.crew/data/73/b3/ca/9bb80d9cc345d2c175c01308796b1dc387/tests/osx-10.9/0.json +1 -0
  205. data/.crew/data/73/b3/ca/9bb80d9cc345d2c175c01308796b1dc387/tests/ubuntu-12.04-64/0.json +1 -0
  206. data/.crew/data/73/b3/ca/9bb80d9cc345d2c175c01308796b1dc387/tests/ubuntu-12.04-i386/0.json +1 -0
  207. data/.crew/data/77/f0/57/53b4cf1d85631a096a6355756347a7d2af/tests/osx-10.8/0.json +1 -0
  208. data/.crew/data/77/f0/57/53b4cf1d85631a096a6355756347a7d2af/tests/osx-10.9/0.json +1 -0
  209. data/.crew/data/77/f0/57/53b4cf1d85631a096a6355756347a7d2af/tests/ubuntu-12.04-64/0.json +1 -0
  210. data/.crew/data/77/f0/57/53b4cf1d85631a096a6355756347a7d2af/tests/ubuntu-12.04-i386/0.json +1 -0
  211. data/.crew/data/78/0a/17/a63b895008ab14142bf194466ec572b839/tests/osx-10.8/0.json +1 -0
  212. data/.crew/data/78/0a/17/a63b895008ab14142bf194466ec572b839/tests/osx-10.9/0.json +1 -0
  213. data/.crew/data/78/0a/17/a63b895008ab14142bf194466ec572b839/tests/ubuntu-12.04-64/0.json +1 -0
  214. data/.crew/data/78/0a/17/a63b895008ab14142bf194466ec572b839/tests/ubuntu-12.04-i386/0.json +1 -0
  215. data/.crew/data/7a/13/a0/ba8a89a2e272d506cf803f8b881f17c177/tests/osx-10.8/0.json +1 -0
  216. data/.crew/data/7a/13/a0/ba8a89a2e272d506cf803f8b881f17c177/tests/osx-10.9/0.json +1 -0
  217. data/.crew/data/7a/13/a0/ba8a89a2e272d506cf803f8b881f17c177/tests/ubuntu-12.04-64/0.json +1 -0
  218. data/.crew/data/7a/13/a0/ba8a89a2e272d506cf803f8b881f17c177/tests/ubuntu-12.04-i386/0.json +1 -0
  219. data/.crew/data/7a/cf/d2/eed0204e56061685ab3e6d17c791a7a8ba/tests/osx-10.8/0.json +1 -0
  220. data/.crew/data/7a/cf/d2/eed0204e56061685ab3e6d17c791a7a8ba/tests/osx-10.9/0.json +1 -0
  221. data/.crew/data/7a/cf/d2/eed0204e56061685ab3e6d17c791a7a8ba/tests/ubuntu-12.04-64/0.json +1 -0
  222. data/.crew/data/7a/cf/d2/eed0204e56061685ab3e6d17c791a7a8ba/tests/ubuntu-12.04-i386/0.json +1 -0
  223. data/.crew/data/80/65/53/d938749d470cc7ac80a88bd88bace0fc6f/tests/osx-10.8/0.json +1 -0
  224. data/.crew/data/80/65/53/d938749d470cc7ac80a88bd88bace0fc6f/tests/osx-10.9/0.json +1 -0
  225. data/.crew/data/80/65/53/d938749d470cc7ac80a88bd88bace0fc6f/tests/ubuntu-12.04-64/0.json +1 -0
  226. data/.crew/data/80/65/53/d938749d470cc7ac80a88bd88bace0fc6f/tests/ubuntu-12.04-i386/0.json +1 -0
  227. data/.crew/data/81/5e/53/a98af3c4e158798139dd9cf33702b45d88/tests/osx-10.8/0.json +1 -0
  228. data/.crew/data/81/5e/53/a98af3c4e158798139dd9cf33702b45d88/tests/osx-10.9/0.json +1 -0
  229. data/.crew/data/81/5e/53/a98af3c4e158798139dd9cf33702b45d88/tests/ubuntu-12.04-64/0.json +1 -0
  230. data/.crew/data/81/5e/53/a98af3c4e158798139dd9cf33702b45d88/tests/ubuntu-12.04-i386/0.json +1 -0
  231. data/.crew/data/81/d9/b7/62a666f832011e8eb01b6bd5e58fdc96ea/tests/osx-10.8/0.json +1 -0
  232. data/.crew/data/81/d9/b7/62a666f832011e8eb01b6bd5e58fdc96ea/tests/osx-10.9/0.json +1 -0
  233. data/.crew/data/81/d9/b7/62a666f832011e8eb01b6bd5e58fdc96ea/tests/ubuntu-12.04-64/0.json +1 -0
  234. data/.crew/data/81/d9/b7/62a666f832011e8eb01b6bd5e58fdc96ea/tests/ubuntu-12.04-i386/0.json +1 -0
  235. data/.crew/data/82/cc/5d/1f54a07939b81ba363495ed08a89f855a6/tests/osx-10.8/0.json +1 -0
  236. data/.crew/data/82/cc/5d/1f54a07939b81ba363495ed08a89f855a6/tests/osx-10.9/0.json +1 -0
  237. data/.crew/data/82/cc/5d/1f54a07939b81ba363495ed08a89f855a6/tests/ubuntu-12.04-64/0.json +1 -0
  238. data/.crew/data/82/cc/5d/1f54a07939b81ba363495ed08a89f855a6/tests/ubuntu-12.04-i386/0.json +1 -0
  239. data/.crew/data/83/34/a6/13f48377b91a1f2a5cc17bf385b4bf6523/tests/osx-10.8/0.json +1 -0
  240. data/.crew/data/88/b0/41/45343ede8f9270dcb80dcadc92feaae165/tests/osx-10.8/0.json +1 -0
  241. data/.crew/data/88/b0/41/45343ede8f9270dcb80dcadc92feaae165/tests/osx-10.9/0.json +1 -0
  242. data/.crew/data/88/b0/41/45343ede8f9270dcb80dcadc92feaae165/tests/ubuntu-12.04-64/0.json +1 -0
  243. data/.crew/data/88/b0/41/45343ede8f9270dcb80dcadc92feaae165/tests/ubuntu-12.04-i386/0.json +1 -0
  244. data/.crew/data/89/d9/be/5689cd98a46bb5b18d059bb4d8d4e88d47/tests/osx-10.8/0.json +1 -0
  245. data/.crew/data/89/d9/be/5689cd98a46bb5b18d059bb4d8d4e88d47/tests/osx-10.9/0.json +1 -0
  246. data/.crew/data/89/d9/be/5689cd98a46bb5b18d059bb4d8d4e88d47/tests/ubuntu-12.04-64/0.json +1 -0
  247. data/.crew/data/89/d9/be/5689cd98a46bb5b18d059bb4d8d4e88d47/tests/ubuntu-12.04-i386/0.json +1 -0
  248. data/.crew/data/91/fb/2e/398bb932bcdfb81930c38e06e57dea8607/tests/osx-10.8/0.json +1 -0
  249. data/.crew/data/91/fb/2e/398bb932bcdfb81930c38e06e57dea8607/tests/osx-10.9/0.json +1 -0
  250. data/.crew/data/91/fb/2e/398bb932bcdfb81930c38e06e57dea8607/tests/ubuntu-12.04-64/0.json +1 -0
  251. data/.crew/data/91/fb/2e/398bb932bcdfb81930c38e06e57dea8607/tests/ubuntu-12.04-i386/0.json +1 -0
  252. data/.crew/data/94/ea/1a/2ee5681f79252593dd3c2597cc7e9e3ed9/tests/osx-10.8/0.json +1 -0
  253. data/.crew/data/94/ea/1a/2ee5681f79252593dd3c2597cc7e9e3ed9/tests/osx-10.9/0.json +1 -0
  254. data/.crew/data/94/ea/1a/2ee5681f79252593dd3c2597cc7e9e3ed9/tests/ubuntu-12.04-64/0.json +1 -0
  255. data/.crew/data/94/ea/1a/2ee5681f79252593dd3c2597cc7e9e3ed9/tests/ubuntu-12.04-i386/0.json +1 -0
  256. data/.crew/data/95/eb/c8/131d68d6f15a3098b4334829313bc4bc50/tests/osx-10.8/0.json +1 -0
  257. data/.crew/data/95/eb/c8/131d68d6f15a3098b4334829313bc4bc50/tests/osx-10.9/0.json +1 -0
  258. data/.crew/data/95/eb/c8/131d68d6f15a3098b4334829313bc4bc50/tests/ubuntu-12.04-64/0.json +1 -0
  259. data/.crew/data/95/eb/c8/131d68d6f15a3098b4334829313bc4bc50/tests/ubuntu-12.04-i386/0.json +1 -0
  260. data/.crew/data/9b/6c/1b/ea2ac879da5e88ba4bd18d5160d359bc27/tests/osx-10.8/0.json +1 -0
  261. data/.crew/data/9b/6c/1b/ea2ac879da5e88ba4bd18d5160d359bc27/tests/osx-10.8/1.json +1 -0
  262. data/.crew/data/9b/6c/1b/ea2ac879da5e88ba4bd18d5160d359bc27/tests/osx-10.9/0.json +1 -0
  263. data/.crew/data/9b/6c/1b/ea2ac879da5e88ba4bd18d5160d359bc27/tests/osx-10.9/1.json +1 -0
  264. data/.crew/data/9b/6c/1b/ea2ac879da5e88ba4bd18d5160d359bc27/tests/ubuntu-12.04-64/0.json +1 -0
  265. data/.crew/data/9b/6c/1b/ea2ac879da5e88ba4bd18d5160d359bc27/tests/ubuntu-12.04-64/1.json +1 -0
  266. data/.crew/data/9b/6c/1b/ea2ac879da5e88ba4bd18d5160d359bc27/tests/ubuntu-12.04-i386/0.json +1 -0
  267. data/.crew/data/9b/6c/1b/ea2ac879da5e88ba4bd18d5160d359bc27/tests/ubuntu-12.04-i386/1.json +1 -0
  268. data/.crew/data/9e/5b/23/9c76179f03ad85fe9861e1078bc4de969e/tests/osx-10.8/0.json +1 -0
  269. data/.crew/data/9e/5b/23/9c76179f03ad85fe9861e1078bc4de969e/tests/osx-10.8/1.json +1 -0
  270. data/.crew/data/9e/5b/23/9c76179f03ad85fe9861e1078bc4de969e/tests/osx-10.9/0.json +1 -0
  271. data/.crew/data/9e/5b/23/9c76179f03ad85fe9861e1078bc4de969e/tests/osx-10.9/1.json +1 -0
  272. data/.crew/data/9e/5b/23/9c76179f03ad85fe9861e1078bc4de969e/tests/ubuntu-12.04-64/0.json +1 -0
  273. data/.crew/data/9e/5b/23/9c76179f03ad85fe9861e1078bc4de969e/tests/ubuntu-12.04-64/1.json +1 -0
  274. data/.crew/data/9e/5b/23/9c76179f03ad85fe9861e1078bc4de969e/tests/ubuntu-12.04-i386/0.json +1 -0
  275. data/.crew/data/9e/5b/23/9c76179f03ad85fe9861e1078bc4de969e/tests/ubuntu-12.04-i386/1.json +1 -0
  276. data/.crew/data/a0/78/c8/b159659d130772f2ffd084a745bcca213e/tests/osx-10.8/0.json +1 -0
  277. data/.crew/data/a0/78/c8/b159659d130772f2ffd084a745bcca213e/tests/osx-10.9/0.json +1 -0
  278. data/.crew/data/a0/78/c8/b159659d130772f2ffd084a745bcca213e/tests/ubuntu-12.04-64/0.json +1 -0
  279. data/.crew/data/a0/78/c8/b159659d130772f2ffd084a745bcca213e/tests/ubuntu-12.04-i386/0.json +1 -0
  280. data/.crew/data/a0/cc/e4/8575268d4958d7b76f94546f59ccac95ae/tests/osx-10.8/0.json +1 -0
  281. data/.crew/data/a0/cc/e4/8575268d4958d7b76f94546f59ccac95ae/tests/osx-10.8/1.json +1 -0
  282. data/.crew/data/a0/cc/e4/8575268d4958d7b76f94546f59ccac95ae/tests/osx-10.9/0.json +1 -0
  283. data/.crew/data/a0/cc/e4/8575268d4958d7b76f94546f59ccac95ae/tests/osx-10.9/1.json +1 -0
  284. data/.crew/data/a0/cc/e4/8575268d4958d7b76f94546f59ccac95ae/tests/ubuntu-12.04-64/0.json +1 -0
  285. data/.crew/data/a0/cc/e4/8575268d4958d7b76f94546f59ccac95ae/tests/ubuntu-12.04-64/1.json +1 -0
  286. data/.crew/data/a0/cc/e4/8575268d4958d7b76f94546f59ccac95ae/tests/ubuntu-12.04-i386/0.json +1 -0
  287. data/.crew/data/a0/cc/e4/8575268d4958d7b76f94546f59ccac95ae/tests/ubuntu-12.04-i386/1.json +1 -0
  288. data/.crew/data/a1/fb/a3/bfd293b02991a74289211d5da90230744d/tests/osx-10.8/0.json +1 -0
  289. data/.crew/data/a1/fb/a3/bfd293b02991a74289211d5da90230744d/tests/osx-10.9/0.json +1 -0
  290. data/.crew/data/a1/fb/a3/bfd293b02991a74289211d5da90230744d/tests/ubuntu-12.04-64/0.json +1 -0
  291. data/.crew/data/a1/fb/a3/bfd293b02991a74289211d5da90230744d/tests/ubuntu-12.04-i386/0.json +1 -0
  292. data/.crew/data/a3/f8/ad/33edb7c57bae5011633609b344f59681a6/tests/osx-10.8/0.json +1 -0
  293. data/.crew/data/a3/f8/ad/33edb7c57bae5011633609b344f59681a6/tests/osx-10.9/0.json +1 -0
  294. data/.crew/data/a3/f8/ad/33edb7c57bae5011633609b344f59681a6/tests/ubuntu-12.04-64/0.json +1 -0
  295. data/.crew/data/a3/f8/ad/33edb7c57bae5011633609b344f59681a6/tests/ubuntu-12.04-i386/0.json +1 -0
  296. data/.crew/data/a6/77/a8/6be578ac0323a50c1485b0dff2a7a8feeb/tests/osx-10.8/0.json +1 -0
  297. data/.crew/data/a6/77/a8/6be578ac0323a50c1485b0dff2a7a8feeb/tests/osx-10.9/0.json +1 -0
  298. data/.crew/data/a6/77/a8/6be578ac0323a50c1485b0dff2a7a8feeb/tests/ubuntu-12.04-64/0.json +1 -0
  299. data/.crew/data/a6/77/a8/6be578ac0323a50c1485b0dff2a7a8feeb/tests/ubuntu-12.04-i386/0.json +1 -0
  300. data/.crew/data/a7/ce/ca/4165c4e4b7936a7dcffdc711bf67f6c345/tests/osx-10.8/0.json +1 -0
  301. data/.crew/data/a7/ce/ca/4165c4e4b7936a7dcffdc711bf67f6c345/tests/osx-10.8/1.json +1 -0
  302. data/.crew/data/a7/ce/ca/4165c4e4b7936a7dcffdc711bf67f6c345/tests/osx-10.9/0.json +1 -0
  303. data/.crew/data/a7/ce/ca/4165c4e4b7936a7dcffdc711bf67f6c345/tests/osx-10.9/1.json +1 -0
  304. data/.crew/data/a7/ce/ca/4165c4e4b7936a7dcffdc711bf67f6c345/tests/ubuntu-12.04-64/0.json +1 -0
  305. data/.crew/data/a7/ce/ca/4165c4e4b7936a7dcffdc711bf67f6c345/tests/ubuntu-12.04-64/1.json +1 -0
  306. data/.crew/data/a7/ce/ca/4165c4e4b7936a7dcffdc711bf67f6c345/tests/ubuntu-12.04-i386/0.json +1 -0
  307. data/.crew/data/a7/ce/ca/4165c4e4b7936a7dcffdc711bf67f6c345/tests/ubuntu-12.04-i386/1.json +1 -0
  308. data/.crew/data/a8/af/2f/f20ea30fb5e28a733d20a285acd24e6660/tests/osx-10.8/0.json +1 -0
  309. data/.crew/data/a8/af/2f/f20ea30fb5e28a733d20a285acd24e6660/tests/osx-10.9/0.json +1 -0
  310. data/.crew/data/a8/af/2f/f20ea30fb5e28a733d20a285acd24e6660/tests/ubuntu-12.04-64/0.json +1 -0
  311. data/.crew/data/a8/af/2f/f20ea30fb5e28a733d20a285acd24e6660/tests/ubuntu-12.04-i386/0.json +1 -0
  312. data/.crew/data/aa/2c/4b/e2a18bff495bf05e49442ad05169bb5941/tests/osx-10.8/0.json +1 -0
  313. data/.crew/data/aa/2c/4b/e2a18bff495bf05e49442ad05169bb5941/tests/osx-10.9/0.json +1 -0
  314. data/.crew/data/aa/2c/4b/e2a18bff495bf05e49442ad05169bb5941/tests/ubuntu-12.04-64/0.json +1 -0
  315. data/.crew/data/aa/2c/4b/e2a18bff495bf05e49442ad05169bb5941/tests/ubuntu-12.04-i386/0.json +1 -0
  316. data/.crew/data/aa/76/69/35512c762779253e02586f127cc07b59fc/tests/osx-10.8/0.json +1 -0
  317. data/.crew/data/aa/76/69/35512c762779253e02586f127cc07b59fc/tests/osx-10.8/1.json +1 -0
  318. data/.crew/data/aa/76/69/35512c762779253e02586f127cc07b59fc/tests/osx-10.9/0.json +1 -0
  319. data/.crew/data/aa/76/69/35512c762779253e02586f127cc07b59fc/tests/osx-10.9/1.json +1 -0
  320. data/.crew/data/aa/76/69/35512c762779253e02586f127cc07b59fc/tests/ubuntu-12.04-64/0.json +1 -0
  321. data/.crew/data/aa/76/69/35512c762779253e02586f127cc07b59fc/tests/ubuntu-12.04-64/1.json +1 -0
  322. data/.crew/data/aa/76/69/35512c762779253e02586f127cc07b59fc/tests/ubuntu-12.04-i386/0.json +1 -0
  323. data/.crew/data/aa/76/69/35512c762779253e02586f127cc07b59fc/tests/ubuntu-12.04-i386/1.json +1 -0
  324. data/.crew/data/ac/c7/90/b064eda41db6345e265645f88794509023/tests/osx-10.8/0.json +1 -0
  325. data/.crew/data/ac/c7/90/b064eda41db6345e265645f88794509023/tests/osx-10.9/0.json +1 -0
  326. data/.crew/data/ac/c7/90/b064eda41db6345e265645f88794509023/tests/ubuntu-12.04-64/0.json +1 -0
  327. data/.crew/data/ac/c7/90/b064eda41db6345e265645f88794509023/tests/ubuntu-12.04-i386/0.json +1 -0
  328. data/.crew/data/ad/81/d7/a8a9a48d89d175ee49487c3ea1e42d3774/tests/osx-10.8/0.json +1 -0
  329. data/.crew/data/ad/81/d7/a8a9a48d89d175ee49487c3ea1e42d3774/tests/osx-10.9/0.json +1 -0
  330. data/.crew/data/ad/81/d7/a8a9a48d89d175ee49487c3ea1e42d3774/tests/ubuntu-12.04-64/0.json +1 -0
  331. data/.crew/data/ad/81/d7/a8a9a48d89d175ee49487c3ea1e42d3774/tests/ubuntu-12.04-i386/0.json +1 -0
  332. data/.crew/data/b2/26/74/acbee6e6955467a2f735b6cbe9f08feef3/tests/osx-10.8/0.json +1 -0
  333. data/.crew/data/b2/26/74/acbee6e6955467a2f735b6cbe9f08feef3/tests/osx-10.9/0.json +1 -0
  334. data/.crew/data/b2/26/74/acbee6e6955467a2f735b6cbe9f08feef3/tests/ubuntu-12.04-64/0.json +1 -0
  335. data/.crew/data/b2/26/74/acbee6e6955467a2f735b6cbe9f08feef3/tests/ubuntu-12.04-i386/0.json +1 -0
  336. data/.crew/data/b3/23/a2/e1a378ecc1a7ae61eced3435e4b889682e/tests/osx-10.8/0.json +1 -0
  337. data/.crew/data/b3/23/a2/e1a378ecc1a7ae61eced3435e4b889682e/tests/osx-10.9/0.json +1 -0
  338. data/.crew/data/b3/23/a2/e1a378ecc1a7ae61eced3435e4b889682e/tests/ubuntu-12.04-64/0.json +1 -0
  339. data/.crew/data/b3/23/a2/e1a378ecc1a7ae61eced3435e4b889682e/tests/ubuntu-12.04-i386/0.json +1 -0
  340. data/.crew/data/b3/74/99/568f2eddabc9675c01705c9477d7989949/tests/osx-10.8/0.json +1 -0
  341. data/.crew/data/b3/74/99/568f2eddabc9675c01705c9477d7989949/tests/osx-10.9/0.json +1 -0
  342. data/.crew/data/b3/74/99/568f2eddabc9675c01705c9477d7989949/tests/ubuntu-12.04-64/0.json +1 -0
  343. data/.crew/data/b3/74/99/568f2eddabc9675c01705c9477d7989949/tests/ubuntu-12.04-i386/0.json +1 -0
  344. data/.crew/data/bb/33/2c/b6397ce5e086a303fffffa58af2b28b5f9/tests/osx-10.8/0.json +1 -0
  345. data/.crew/data/bb/33/2c/b6397ce5e086a303fffffa58af2b28b5f9/tests/osx-10.9/0.json +1 -0
  346. data/.crew/data/bb/33/2c/b6397ce5e086a303fffffa58af2b28b5f9/tests/ubuntu-12.04-64/0.json +1 -0
  347. data/.crew/data/bb/33/2c/b6397ce5e086a303fffffa58af2b28b5f9/tests/ubuntu-12.04-i386/0.json +1 -0
  348. data/.crew/data/bc/8b/4a/919661c1d982a276cec4015683d971cb31/tests/osx-10.8/0.json +1 -0
  349. data/.crew/data/bc/8b/4a/919661c1d982a276cec4015683d971cb31/tests/osx-10.9/0.json +1 -0
  350. data/.crew/data/bc/8b/4a/919661c1d982a276cec4015683d971cb31/tests/ubuntu-12.04-64/0.json +1 -0
  351. data/.crew/data/bc/8b/4a/919661c1d982a276cec4015683d971cb31/tests/ubuntu-12.04-i386/0.json +1 -0
  352. data/.crew/data/bd/30/20/74625c1b394768c79b9034dd02c716d50b/tests/osx-10.8/0.json +1 -0
  353. data/.crew/data/bd/30/20/74625c1b394768c79b9034dd02c716d50b/tests/osx-10.9/0.json +1 -0
  354. data/.crew/data/bd/30/20/74625c1b394768c79b9034dd02c716d50b/tests/ubuntu-12.04-64/0.json +1 -0
  355. data/.crew/data/bd/30/20/74625c1b394768c79b9034dd02c716d50b/tests/ubuntu-12.04-i386/0.json +1 -0
  356. data/.crew/data/be/c9/bb/bda4b0173454b2b5dc28a0a22702e9df24/tests/osx-10.8/0.json +1 -0
  357. data/.crew/data/be/c9/bb/bda4b0173454b2b5dc28a0a22702e9df24/tests/osx-10.9/0.json +1 -0
  358. data/.crew/data/be/c9/bb/bda4b0173454b2b5dc28a0a22702e9df24/tests/ubuntu-12.04-64/0.json +1 -0
  359. data/.crew/data/be/c9/bb/bda4b0173454b2b5dc28a0a22702e9df24/tests/ubuntu-12.04-i386/0.json +1 -0
  360. data/.crew/data/c1/76/63/1ab3d7fe9b68c7aab87cf6a659a003c8cf/tests/osx-10.8/0.json +1 -0
  361. data/.crew/data/c1/76/63/1ab3d7fe9b68c7aab87cf6a659a003c8cf/tests/osx-10.9/0.json +1 -0
  362. data/.crew/data/c1/76/63/1ab3d7fe9b68c7aab87cf6a659a003c8cf/tests/ubuntu-12.04-64/0.json +1 -0
  363. data/.crew/data/c1/76/63/1ab3d7fe9b68c7aab87cf6a659a003c8cf/tests/ubuntu-12.04-i386/0.json +1 -0
  364. data/.crew/data/c4/22/4c/d80e5f573cc1e16fc358e9a2dad88ad58a/tests/osx-10.8/0.json +1 -0
  365. data/.crew/data/c4/22/4c/d80e5f573cc1e16fc358e9a2dad88ad58a/tests/osx-10.9/0.json +1 -0
  366. data/.crew/data/c4/22/4c/d80e5f573cc1e16fc358e9a2dad88ad58a/tests/ubuntu-12.04-64/0.json +1 -0
  367. data/.crew/data/c4/22/4c/d80e5f573cc1e16fc358e9a2dad88ad58a/tests/ubuntu-12.04-i386/0.json +1 -0
  368. data/.crew/data/c8/04/18/f5770b9a5ee0f29bc6d0ebfcc287ee8e72/tests/osx-10.8/0.json +1 -0
  369. data/.crew/data/c8/04/18/f5770b9a5ee0f29bc6d0ebfcc287ee8e72/tests/osx-10.9/0.json +1 -0
  370. data/.crew/data/c8/04/18/f5770b9a5ee0f29bc6d0ebfcc287ee8e72/tests/ubuntu-12.04-64/0.json +1 -0
  371. data/.crew/data/c8/04/18/f5770b9a5ee0f29bc6d0ebfcc287ee8e72/tests/ubuntu-12.04-i386/0.json +1 -0
  372. data/.crew/data/ce/ac/25/c1903fb904667a5fe15faaac128208aa50/tests/osx-10.8/0.json +1 -0
  373. data/.crew/data/ce/ac/25/c1903fb904667a5fe15faaac128208aa50/tests/osx-10.8/1.json +1 -0
  374. data/.crew/data/ce/ac/25/c1903fb904667a5fe15faaac128208aa50/tests/osx-10.9/0.json +1 -0
  375. data/.crew/data/ce/ac/25/c1903fb904667a5fe15faaac128208aa50/tests/osx-10.9/1.json +1 -0
  376. data/.crew/data/ce/ac/25/c1903fb904667a5fe15faaac128208aa50/tests/ubuntu-12.04-64/0.json +1 -0
  377. data/.crew/data/ce/ac/25/c1903fb904667a5fe15faaac128208aa50/tests/ubuntu-12.04-64/1.json +1 -0
  378. data/.crew/data/ce/ac/25/c1903fb904667a5fe15faaac128208aa50/tests/ubuntu-12.04-i386/0.json +1 -0
  379. data/.crew/data/ce/ac/25/c1903fb904667a5fe15faaac128208aa50/tests/ubuntu-12.04-i386/1.json +1 -0
  380. data/.crew/data/d0/0a/6a/93e799f14e475d3f02e6769de2575aa582/tests/osx-10.8/0.json +1 -0
  381. data/.crew/data/d0/0a/6a/93e799f14e475d3f02e6769de2575aa582/tests/osx-10.9/0.json +1 -0
  382. data/.crew/data/d0/0a/6a/93e799f14e475d3f02e6769de2575aa582/tests/ubuntu-12.04-64/0.json +1 -0
  383. data/.crew/data/d0/0a/6a/93e799f14e475d3f02e6769de2575aa582/tests/ubuntu-12.04-i386/0.json +1 -0
  384. data/.crew/data/d4/57/1e/5c037c53390b1f6ff284b98646f2d75bee/tests/osx-10.8/0.json +1 -0
  385. data/.crew/data/d4/57/1e/5c037c53390b1f6ff284b98646f2d75bee/tests/osx-10.9/0.json +1 -0
  386. data/.crew/data/d4/57/1e/5c037c53390b1f6ff284b98646f2d75bee/tests/ubuntu-12.04-64/0.json +1 -0
  387. data/.crew/data/d4/57/1e/5c037c53390b1f6ff284b98646f2d75bee/tests/ubuntu-12.04-i386/0.json +1 -0
  388. data/.crew/data/d6/d1/13/2ccffeef92ee6dc6a255990bf5d42e9cae/tests/osx-10.8/0.json +1 -0
  389. data/.crew/data/d6/d1/13/2ccffeef92ee6dc6a255990bf5d42e9cae/tests/osx-10.9/0.json +1 -0
  390. data/.crew/data/d6/d1/13/2ccffeef92ee6dc6a255990bf5d42e9cae/tests/ubuntu-12.04-64/0.json +1 -0
  391. data/.crew/data/d6/d1/13/2ccffeef92ee6dc6a255990bf5d42e9cae/tests/ubuntu-12.04-i386/0.json +1 -0
  392. data/.crew/data/d8/26/ed/4bb150c462c56064d2572b1ba1c3094ea2/tests/osx-10.8/0.json +1 -0
  393. data/.crew/data/d8/26/ed/4bb150c462c56064d2572b1ba1c3094ea2/tests/osx-10.9/0.json +1 -0
  394. data/.crew/data/d8/26/ed/4bb150c462c56064d2572b1ba1c3094ea2/tests/ubuntu-12.04-64/0.json +1 -0
  395. data/.crew/data/d8/26/ed/4bb150c462c56064d2572b1ba1c3094ea2/tests/ubuntu-12.04-i386/0.json +1 -0
  396. data/.crew/data/dc/ff/31/2e9be2d741eb06b87ccdf9c21914ac15ab/tests/osx-10.8/0.json +1 -0
  397. data/.crew/data/dc/ff/31/2e9be2d741eb06b87ccdf9c21914ac15ab/tests/osx-10.9/0.json +1 -0
  398. data/.crew/data/dc/ff/31/2e9be2d741eb06b87ccdf9c21914ac15ab/tests/ubuntu-12.04-64/0.json +1 -0
  399. data/.crew/data/dc/ff/31/2e9be2d741eb06b87ccdf9c21914ac15ab/tests/ubuntu-12.04-i386/0.json +1 -0
  400. data/.crew/data/e2/e1/c2/8cda0d1f6c1dc182451753d563dba120a7/tests/osx-10.8/0.json +1 -0
  401. data/.crew/data/e2/e1/c2/8cda0d1f6c1dc182451753d563dba120a7/tests/osx-10.9/0.json +1 -0
  402. data/.crew/data/e2/e1/c2/8cda0d1f6c1dc182451753d563dba120a7/tests/ubuntu-12.04-64/0.json +1 -0
  403. data/.crew/data/e2/e1/c2/8cda0d1f6c1dc182451753d563dba120a7/tests/ubuntu-12.04-i386/0.json +1 -0
  404. data/.crew/data/e4/3d/7f/0f432972020d7150e5ceacb4ab99a636af/tests/osx-10.8/0.json +1 -0
  405. data/.crew/data/e4/3d/7f/0f432972020d7150e5ceacb4ab99a636af/tests/osx-10.8/1.json +1 -0
  406. data/.crew/data/e4/3d/7f/0f432972020d7150e5ceacb4ab99a636af/tests/osx-10.9/0.json +1 -0
  407. data/.crew/data/e4/3d/7f/0f432972020d7150e5ceacb4ab99a636af/tests/osx-10.9/1.json +1 -0
  408. data/.crew/data/e4/3d/7f/0f432972020d7150e5ceacb4ab99a636af/tests/ubuntu-12.04-64/0.json +1 -0
  409. data/.crew/data/e4/3d/7f/0f432972020d7150e5ceacb4ab99a636af/tests/ubuntu-12.04-64/1.json +1 -0
  410. data/.crew/data/e4/3d/7f/0f432972020d7150e5ceacb4ab99a636af/tests/ubuntu-12.04-i386/0.json +1 -0
  411. data/.crew/data/e4/3d/7f/0f432972020d7150e5ceacb4ab99a636af/tests/ubuntu-12.04-i386/1.json +1 -0
  412. data/.crew/data/e6/6e/60/f2b9570394b624dbb63fb710120830bfe8/tests/osx-10.8/0.json +1 -0
  413. data/.crew/data/e6/6e/60/f2b9570394b624dbb63fb710120830bfe8/tests/osx-10.9/0.json +1 -0
  414. data/.crew/data/e6/6e/60/f2b9570394b624dbb63fb710120830bfe8/tests/ubuntu-12.04-64/0.json +1 -0
  415. data/.crew/data/e6/6e/60/f2b9570394b624dbb63fb710120830bfe8/tests/ubuntu-12.04-i386/0.json +1 -0
  416. data/.crew/data/e7/2d/2e/4a03635bfdb86b7d32cfcd798455ddd525/tests/osx-10.8/0.json +1 -0
  417. data/.crew/data/e7/2d/2e/4a03635bfdb86b7d32cfcd798455ddd525/tests/osx-10.9/0.json +1 -0
  418. data/.crew/data/e7/2d/2e/4a03635bfdb86b7d32cfcd798455ddd525/tests/ubuntu-12.04-64/0.json +1 -0
  419. data/.crew/data/e7/2d/2e/4a03635bfdb86b7d32cfcd798455ddd525/tests/ubuntu-12.04-i386/0.json +1 -0
  420. data/.crew/data/eb/12/bb/041d2666899429affc734eb04910b495d7/tests/osx-10.8/0.json +1 -0
  421. data/.crew/data/eb/12/bb/041d2666899429affc734eb04910b495d7/tests/osx-10.9/0.json +1 -0
  422. data/.crew/data/eb/12/bb/041d2666899429affc734eb04910b495d7/tests/ubuntu-12.04-64/0.json +1 -0
  423. data/.crew/data/eb/12/bb/041d2666899429affc734eb04910b495d7/tests/ubuntu-12.04-i386/0.json +1 -0
  424. data/.crew/data/f1/90/25/22d73d849eb8f03a1a9217fc151d41017c/tests/osx-10.8/0.json +1 -0
  425. data/.crew/data/f1/90/25/22d73d849eb8f03a1a9217fc151d41017c/tests/osx-10.9/0.json +1 -0
  426. data/.crew/data/f1/90/25/22d73d849eb8f03a1a9217fc151d41017c/tests/ubuntu-12.04-64/0.json +1 -0
  427. data/.crew/data/f1/90/25/22d73d849eb8f03a1a9217fc151d41017c/tests/ubuntu-12.04-i386/0.json +1 -0
  428. data/.crew/data/fc/e4/b4/cf98fed5e0bcbfd09fd45693fd040f7375/tests/osx-10.8/0.json +1 -0
  429. data/.crew/data/fc/e4/b4/cf98fed5e0bcbfd09fd45693fd040f7375/tests/osx-10.9/0.json +1 -0
  430. data/.crew/data/fc/e4/b4/cf98fed5e0bcbfd09fd45693fd040f7375/tests/ubuntu-12.04-64/0.json +1 -0
  431. data/.crew/data/fc/e4/b4/cf98fed5e0bcbfd09fd45693fd040f7375/tests/ubuntu-12.04-i386/0.json +1 -0
  432. data/.crew/data/fd/2f/4d/dca282780f6e6dea6efbdc4f2efa0b5e46/tests/osx-10.8/0.json +1 -0
  433. data/.crew/data/fd/2f/4d/dca282780f6e6dea6efbdc4f2efa0b5e46/tests/osx-10.9/0.json +1 -0
  434. data/.crew/data/fd/2f/4d/dca282780f6e6dea6efbdc4f2efa0b5e46/tests/ubuntu-12.04-64/0.json +1 -0
  435. data/.crew/data/fd/2f/4d/dca282780f6e6dea6efbdc4f2efa0b5e46/tests/ubuntu-12.04-i386/0.json +1 -0
  436. data/.crew/data/ff/c8/ea/eee4fd661d753247772add2607bd7334db/tests/osx-10.8/0.json +1 -0
  437. data/.crew/data/ff/c8/ea/eee4fd661d753247772add2607bd7334db/tests/osx-10.8/1.json +1 -0
  438. data/.crew/data/ff/c8/ea/eee4fd661d753247772add2607bd7334db/tests/osx-10.9/0.json +1 -0
  439. data/.crew/data/ff/c8/ea/eee4fd661d753247772add2607bd7334db/tests/osx-10.9/1.json +1 -0
  440. data/.crew/data/ff/c8/ea/eee4fd661d753247772add2607bd7334db/tests/ubuntu-12.04-64/0.json +1 -0
  441. data/.crew/data/ff/c8/ea/eee4fd661d753247772add2607bd7334db/tests/ubuntu-12.04-64/1.json +1 -0
  442. data/.crew/data/ff/c8/ea/eee4fd661d753247772add2607bd7334db/tests/ubuntu-12.04-i386/0.json +1 -0
  443. data/.crew/data/ff/c8/ea/eee4fd661d753247772add2607bd7334db/tests/ubuntu-12.04-i386/1.json +1 -0
  444. data/.crew/tasks/apt/get/install.crew +24 -0
  445. data/.crew/tasks/apt/get/remove.crew +20 -0
  446. data/.crew/tasks/apt/get/update.crew +11 -0
  447. data/.crew/tasks/apt/installed/version.crew +17 -0
  448. data/.crew/tasks/apt/installed_.crew +21 -0
  449. data/.crew/tasks/assert/equal.crew +23 -0
  450. data/.crew/tasks/assert/fails.crew +28 -0
  451. data/.crew/tasks/assert/fs/equal.crew +25 -0
  452. data/.crew/tasks/assert/include.crew +13 -0
  453. data/.crew/tasks/assert/match.crew +16 -0
  454. data/.crew/tasks/assert/not.crew +14 -0
  455. data/.crew/tasks/assert/not/equal.crew +23 -0
  456. data/.crew/tasks/assert/not/include.crew +13 -0
  457. data/.crew/tasks/brew/install.crew +24 -0
  458. data/.crew/tasks/brew/installed/version.crew +19 -0
  459. data/.crew/tasks/brew/installed_.crew +19 -0
  460. data/.crew/tasks/brew/uninstall.crew +20 -0
  461. data/.crew/tasks/crew/boot.crew +9 -0
  462. data/.crew/tasks/desc.crew +11 -0
  463. data/.crew/tasks/dmg/install/app.crew +24 -0
  464. data/.crew/tasks/dmg/install/pkg.crew +21 -0
  465. data/.crew/tasks/dmg/mount.crew +30 -0
  466. data/.crew/tasks/dpkg/install.crew +21 -0
  467. data/.crew/tasks/env.crew +11 -0
  468. data/.crew/tasks/env/home.crew +9 -0
  469. data/.crew/tasks/env/shell.crew +9 -0
  470. data/.crew/tasks/env/shell/type.crew +9 -0
  471. data/.crew/tasks/fs/copy.crew +35 -0
  472. data/.crew/tasks/fs/directory_.crew +12 -0
  473. data/.crew/tasks/fs/exists_.crew +14 -0
  474. data/.crew/tasks/fs/join.crew +11 -0
  475. data/.crew/tasks/fs/lines.crew +13 -0
  476. data/.crew/tasks/fs/lines/add.crew +24 -0
  477. data/.crew/tasks/fs/lines/remove.crew +20 -0
  478. data/.crew/tasks/fs/list.crew +18 -0
  479. data/.crew/tasks/fs/md5.crew +17 -0
  480. data/.crew/tasks/fs/path/add.crew +22 -0
  481. data/.crew/tasks/fs/path/include_.crew +12 -0
  482. data/.crew/tasks/fs/paths.crew +9 -0
  483. data/.crew/tasks/fs/pwd.crew +9 -0
  484. data/.crew/tasks/fs/read.crew +15 -0
  485. data/.crew/tasks/fs/remove.crew +29 -0
  486. data/.crew/tasks/fs/rename.crew +22 -0
  487. data/.crew/tasks/fs/sha1.crew +14 -0
  488. data/.crew/tasks/fs/size.crew +19 -0
  489. data/.crew/tasks/fs/temp/dir.crew +25 -0
  490. data/.crew/tasks/fs/touch.crew +14 -0
  491. data/.crew/tasks/fs/which_.crew +15 -0
  492. data/.crew/tasks/fs/write.crew +17 -0
  493. data/.crew/tasks/fs/writeable/dir_.crew +20 -0
  494. data/.crew/tasks/fs/writeable_.crew +22 -0
  495. data/.crew/tasks/gem/install.crew +25 -0
  496. data/.crew/tasks/gem/list.crew +18 -0
  497. data/.crew/tasks/gem/uninstall.crew +20 -0
  498. data/.crew/tasks/git/authors.crew +12 -0
  499. data/.crew/tasks/git/clone.crew +38 -0
  500. data/.crew/tasks/git/remotes.crew +13 -0
  501. data/.crew/tasks/git/version.crew +13 -0
  502. data/.crew/tasks/html/css/select.crew +15 -0
  503. data/.crew/tasks/html/xpath/select.crew +15 -0
  504. data/.crew/tasks/http/download.crew +62 -0
  505. data/.crew/tasks/http/get.crew +16 -0
  506. data/.crew/tasks/os/version.crew +29 -0
  507. data/.crew/tasks/ps/alive_.crew +16 -0
  508. data/.crew/tasks/ps/info/user.crew +22 -0
  509. data/.crew/tasks/ps/kill.crew +17 -0
  510. data/.crew/tasks/ps/list.crew +17 -0
  511. data/.crew/tasks/ps/map.crew +24 -0
  512. data/.crew/tasks/ps/wait.crew +30 -0
  513. data/.crew/tasks/rbenv/install.crew +23 -0
  514. data/.crew/tasks/rbenv/versions.crew +15 -0
  515. data/.crew/tasks/ruby/version.crew +11 -0
  516. data/.crew/tasks/rvm/install.crew +21 -0
  517. data/.crew/tasks/rvm/list/rubies.crew +22 -0
  518. data/.crew/tasks/say.crew +15 -0
  519. data/.crew/tasks/setup/crew.crew +16 -0
  520. data/.crew/tasks/setup/crew/dev.crew +14 -0
  521. data/.crew/tasks/setup/crew/dev/osx/109.crew +15 -0
  522. data/.crew/tasks/setup/curl.crew +25 -0
  523. data/.crew/tasks/setup/darwin/clitools.crew +13 -0
  524. data/.crew/tasks/setup/dev.crew +22 -0
  525. data/.crew/tasks/setup/gawk.crew +25 -0
  526. data/.crew/tasks/setup/gcc.crew +24 -0
  527. data/.crew/tasks/setup/git.crew +25 -0
  528. data/.crew/tasks/setup/gitxdev.crew +26 -0
  529. data/.crew/tasks/setup/heroku/toolbelt.crew +17 -0
  530. data/.crew/tasks/setup/homebrew.crew +22 -0
  531. data/.crew/tasks/setup/nmap.crew +25 -0
  532. data/.crew/tasks/setup/ohmyzsh.crew +12 -0
  533. data/.crew/tasks/setup/rbenv.crew +27 -0
  534. data/.crew/tasks/setup/ruby.crew +13 -0
  535. data/.crew/tasks/setup/rubybuild.crew +19 -0
  536. data/.crew/tasks/setup/rvm.crew +28 -0
  537. data/.crew/tasks/setup/screen.crew +17 -0
  538. data/.crew/tasks/setup/sublime3.crew +23 -0
  539. data/.crew/tasks/setup/vagrant.crew +40 -0
  540. data/.crew/tasks/setup/virtualbox.crew +22 -0
  541. data/.crew/tasks/setup/vmware.crew +17 -0
  542. data/.crew/tasks/setup/watch.crew +25 -0
  543. data/.crew/tasks/setup/wget.crew +13 -0
  544. data/.crew/tasks/setup/xquartz.crew +24 -0
  545. data/.crew/tasks/sh/change.crew +17 -0
  546. data/.crew/tasks/sh_.crew +13 -0
  547. data/.crew/tasks/url/escape.crew +13 -0
  548. data/.crew/tasks/user/current.crew +9 -0
  549. data/.crew/tasks/uuid.crew +9 -0
  550. data/.crew/tasks/vmrun/bin.crew +6 -0
  551. data/.crew/tasks/vmrun/checktoolsstate.crew +8 -0
  552. data/.crew/tasks/vmrun/getguestipaddress.crew +9 -0
  553. data/.crew/tasks/vmrun/installtools.crew +12 -0
  554. data/.crew/tasks/vmrun/list.crew +10 -0
  555. data/.crew/tasks/vmrun/snapshots.crew +12 -0
  556. data/.crew/tasks/vmrun/snapshots/create.crew +12 -0
  557. data/.crew/tasks/vmrun/snapshots/delete.crew +12 -0
  558. data/.crew/tasks/vmrun/snapshots/revert.crew +8 -0
  559. data/.crew/tasks/vmrun/start.crew +21 -0
  560. data/.crew/tasks/vmrun/stop.crew +11 -0
  561. data/.crew/tasks/vmrun/suspend.crew +11 -0
  562. data/.crew/tasks/wget/version.crew +10 -0
  563. data/.gitignore +3 -0
  564. data/Gemfile +4 -0
  565. data/Gemfile.lock +46 -0
  566. data/README.md +3 -0
  567. data/Rakefile +34 -0
  568. data/bin/crew +7 -0
  569. data/crew.gemspec +33 -0
  570. data/install.sh +26 -0
  571. data/lib/crew.rb +37 -0
  572. data/lib/crew/cli.rb +147 -0
  573. data/lib/crew/cli/contexts.rb +76 -0
  574. data/lib/crew/cli/tasks.rb +129 -0
  575. data/lib/crew/context.rb +137 -0
  576. data/lib/crew/context/dsl.rb +30 -0
  577. data/lib/crew/context/fusion.rb +60 -0
  578. data/lib/crew/context/local.rb +67 -0
  579. data/lib/crew/context/ssh.rb +117 -0
  580. data/lib/crew/context/vagrant.rb +34 -0
  581. data/lib/crew/docs.rb +21 -0
  582. data/lib/crew/home.rb +390 -0
  583. data/lib/crew/home/dsl.rb +46 -0
  584. data/lib/crew/logger.rb +127 -0
  585. data/lib/crew/task.rb +242 -0
  586. data/lib/crew/task/arguments.rb +132 -0
  587. data/lib/crew/task/arguments/dsl.rb +32 -0
  588. data/lib/crew/task/dsl.rb +76 -0
  589. data/lib/crew/task/test.rb +124 -0
  590. data/lib/crew/template/_task.html.erb +34 -0
  591. data/lib/crew/template/config.erb +13 -0
  592. data/lib/crew/template/context.rb.erb +9 -0
  593. data/lib/crew/template/docs.html.erb +1313 -0
  594. data/lib/crew/template/task.crew.erb +17 -0
  595. data/lib/crew/tester.rb +67 -0
  596. data/lib/crew/tester/dsl.rb +25 -0
  597. data/lib/crew/tester/preparer.rb +32 -0
  598. data/lib/crew/tester/preparer/dsl.rb +32 -0
  599. data/lib/crew/util.rb +70 -0
  600. data/lib/crew/version.rb +3 -0
  601. data/spec/cli_spec.rb +149 -0
  602. data/spec/context_spec.rb +47 -0
  603. data/spec/fixtures/dmg/mount/good.dmg +0 -0
  604. data/spec/spec_helper.rb +68 -0
  605. data/spec/task_spec.rb +88 -0
  606. metadata +808 -0
@@ -0,0 +1,32 @@
1
+ module Crew
2
+ class Task
3
+ class Arguments
4
+ module DSL
5
+ attr_accessor :_arguments
6
+
7
+ def self.load(arguments, &blk)
8
+ loader = Class.new do
9
+ include DSL
10
+ end.new
11
+ loader._arguments = arguments
12
+ loader.instance_eval(&blk) if blk
13
+ end
14
+
15
+ def arg(name, desc = nil, opts = {})
16
+ opts, desc = desc, nil if desc.is_a?(Hash)
17
+ _arguments.define(name, :required, desc, opts)
18
+ end
19
+
20
+ def args(name, desc = nil, opts = {})
21
+ opts, desc = desc, nil if desc.is_a?(Hash)
22
+ _arguments.define(name, :glob, desc, opts)
23
+ end
24
+
25
+ def opt(name, desc = nil, opts = {})
26
+ opts, desc = desc, nil if desc.is_a?(Hash)
27
+ _arguments.define(name, :opt, desc, opts)
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,76 @@
1
+ module Crew
2
+ class Task
3
+ class DSL
4
+ include Arguments::DSL
5
+
6
+ def initialize(task, &blk)
7
+ @task = task
8
+ self._arguments = @task.arguments
9
+ instance_eval(&blk) if blk
10
+ end
11
+
12
+ def load(path)
13
+ contents = File.read(path)
14
+ instance_eval(contents, path, 1)
15
+ process_templates contents.split("__END__\n", 2)[1]
16
+ end
17
+
18
+ def desc(val)
19
+ @task.desc = val
20
+ end
21
+
22
+ def hints(*hints)
23
+ @task.default_hints = hints
24
+ end
25
+
26
+ def setup(*hints, &blk)
27
+ add_to_task(:setup, hints, blk)
28
+ end
29
+
30
+ def run(*hints, &blk)
31
+ add_to_task(:run, hints, blk)
32
+ end
33
+
34
+ def verify(*hints, &blk)
35
+ add_to_task(:verify, hints, blk)
36
+ end
37
+
38
+ def test(*hints, &blk)
39
+ add_to_task(:test, hints, blk)
40
+ end
41
+
42
+ def block(opts = {}, &blk)
43
+ @task.arguments.define_block(opts, &blk)
44
+ end
45
+
46
+ private
47
+ def add_to_task(type, hints, handler)
48
+ method_name = "add_#{type}"
49
+ if hints.empty?
50
+ @task.send(method_name, &handler)
51
+ else
52
+ hints.each { |hint| @task.send(method_name, hint, &handler) }
53
+ end
54
+ end
55
+
56
+ def process_templates(data)
57
+ return unless data
58
+ templates = {}
59
+ last_name = nil
60
+ data.each_line do |line|
61
+ if name = line[/^@@ (.*)\n/, 1]
62
+ templates[name] = ''
63
+ last_name = name
64
+ elsif !last_name
65
+ raise
66
+ else
67
+ templates[last_name] << line
68
+ end
69
+ end
70
+ templates.each do |name, contents|
71
+ @task.add_template name, contents
72
+ end
73
+ end
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,124 @@
1
+ module Crew
2
+ class Task
3
+ class Test
4
+
5
+ include Util
6
+
7
+ class FailedException < RuntimeError
8
+ end
9
+
10
+ class Result < Struct.new(:context_name, :task_name, :index, :status, :extras)
11
+ def missing?
12
+ status == 'missing'
13
+ end
14
+
15
+ def passed?
16
+ status == 'pass'
17
+ end
18
+
19
+ def failed?
20
+ status == 'fail'
21
+ end
22
+
23
+ def skipped?
24
+ status == 'skip'
25
+ end
26
+
27
+ def to_s
28
+ out = "#{task_name}##{index} (#{context_name}) = #{status}"
29
+ if extras['start_time'] && extras['end_time']
30
+ out << "\nRan in #{extras['end_time'] - extras['start_time']}"
31
+ end
32
+ if extras['exception']
33
+ e = extras['exception']
34
+ out << "\n#{e['message']} (#{e['class']}): #{e['backtrace'].join("\n ")}"
35
+ end
36
+ out
37
+ end
38
+ end
39
+
40
+ def initialize(task, test_path_prefix, index, skip, test_blk)
41
+ @task, @test_path_prefix, @index, @skip, @test_blk = task, test_path_prefix, index, skip, test_blk
42
+ end
43
+
44
+ def result
45
+ if File.exist?(test_cache_path)
46
+ result = JSON.parse(File.read(test_cache_path))
47
+ Result.new(@task.context.name, @task.name, @index, result['status'], result['extras'])
48
+ else
49
+ Result.new(@task.context.name, @task.name, @index, "missing", {})
50
+ end
51
+ end
52
+
53
+ def run_test!(fail_fast = false)
54
+ test_name = "#{@task.name} ##{@index + 1}"
55
+ logger.test(test_name) do
56
+ if has_cached_result?
57
+ logger.info "Test already has a cached result"
58
+ else
59
+ clear_cached_result!
60
+ if @skip
61
+ logger.skip_test test_name
62
+ record_test_result "skip"
63
+ else
64
+ status = "error"
65
+ extra = {}
66
+ @task.reset!
67
+ extra[:start_time] = Time.new.to_f
68
+ begin
69
+ @task.context.with_callbacks do
70
+ @task.instance_eval(&@test_blk)
71
+ end
72
+ rescue => e
73
+ extra.merge!(exception: {backtrace: e.backtrace, message: e.message, class: e.class.to_s})
74
+ status = "fail"
75
+ logger.fail_test(test_name)
76
+ else
77
+ status = "pass"
78
+ logger.pass_test(test_name)
79
+ end
80
+ extra[:end_time] = Time.new.to_f
81
+ record_test_result status, extra
82
+ if status == 'fail'
83
+ puts
84
+ puts result
85
+ raise FailedException if fail_fast
86
+ end
87
+ end
88
+ end
89
+ end
90
+ result
91
+ end
92
+
93
+ def has_cached_result?
94
+ File.exist?(test_cache_path)
95
+ end
96
+
97
+ def test_cache_path
98
+ File.join(@test_path_prefix, "#{@index}.json")
99
+ end
100
+
101
+ def record_test_result(status, extras = nil)
102
+ FileUtils.mkdir_p(File.dirname(test_cache_path))
103
+ File.open(test_cache_path, "w") do |f|
104
+ f << {status: status, extras: extras}.to_json
105
+ end
106
+ end
107
+
108
+ def clear_cached_result!
109
+ FileUtils.rm_rf(test_cache_path)
110
+ end
111
+
112
+ def test_cache_path
113
+ raise unless @task.context
114
+ @test_cache_path ||= begin
115
+ File.join(@test_path_prefix, "#{@index}.json")
116
+ end
117
+ end
118
+
119
+ def logger
120
+ @task.home.logger
121
+ end
122
+ end
123
+ end
124
+ end
@@ -0,0 +1,34 @@
1
+ <a name="<%=task.name%>"></a>
2
+ <div class="task" id="<%=task.name%>">
3
+ <div class="search-result" onclick="this.nextElementSibling.style.display = 'block'; this.style.display='none'">
4
+ <div class="search-result-title" id="<%=task.name%>-search-result-title"><%=task.name%></div>
5
+ <div class="search-result-description" id="<%=task.name%>-search-result-description"><%=task.desc%></div>
6
+ </div>
7
+ <div class="task-info">
8
+ <a href="#" onclick="this.parentElement.previousElementSibling.style.display = 'block'; this.parentElement.style.display='none'; return false">[-] Collapse</a>
9
+ <div class="task-title">
10
+ <%=task.name %>
11
+ </div>
12
+ <% if task.platforms.empty? %>
13
+ <div class="task-platforms">Not tested on any platforms</div>
14
+ <% else %>
15
+ <div class="task-platforms">Tested on <% task.platforms.each do |platform| %>
16
+ <span class="platform <%=platform.status%>"><%=platform.name%></span>
17
+ <% end %></div>
18
+ <% end %>
19
+ <div class="task-description"> <%=task.desc %></div>
20
+ <div class="task-arguments">
21
+ <strong>Arguments:</strong>
22
+ <dl>
23
+ <% task.arguments.definitions.each do |argument| %>
24
+ <dt><span class="argument-name"><%= argument.name %></span> <span class="argument-type">(<%=argument.type%>)</span></dt>
25
+ <dd><%= argument.desc %></dd>
26
+ <% end %>
27
+ </dl>
28
+ </div>
29
+ <a href="#" id="<%=task.name%>-source-link" class="source-link" onclick="toggleSource('<%=task.name%>'); event.stopPropagation(); return false;">[+] Show Source</a>
30
+ <div class="source">
31
+ <pre><code class="xml"><%= task.source %></code></pre>
32
+ </div>
33
+ </div>
34
+ </div>
@@ -0,0 +1,13 @@
1
+ ##### Crew config file #####
2
+
3
+ before do
4
+ crew_boot
5
+ end
6
+
7
+ context "local" do
8
+ adapter "Local"
9
+ end
10
+
11
+ # context "vagrant" do
12
+ # adapter "Vagrant"
13
+ # end
@@ -0,0 +1,9 @@
1
+ ## For local use, enable this
2
+ # adapter "Local"
3
+
4
+ ## For fusion use, enable this
5
+ # adapter "Fusion",
6
+ # user: "ella",
7
+ # password: "woof",
8
+ # path: File.expand_path("Documents/Virtual\ Machines.localized/osx_109.vmwarevm/osx_109.vmx", ENV['HOME']),
9
+ # paranoid: false
@@ -0,0 +1,1313 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <style>
5
+ /*! normalize.css v1.1.3 | MIT License | git.io/normalize */
6
+
7
+ /* ==========================================================================
8
+ HTML5 display definitions
9
+ ========================================================================== */
10
+
11
+ /**
12
+ * Correct `block` display not defined in IE 6/7/8/9 and Firefox 3.
13
+ */
14
+
15
+ article,
16
+ aside,
17
+ details,
18
+ figcaption,
19
+ figure,
20
+ footer,
21
+ header,
22
+ hgroup,
23
+ main,
24
+ nav,
25
+ section,
26
+ summary {
27
+ display: block;
28
+ }
29
+
30
+ /**
31
+ * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3.
32
+ */
33
+
34
+ audio,
35
+ canvas,
36
+ video {
37
+ display: inline-block;
38
+ *display: inline;
39
+ *zoom: 1;
40
+ }
41
+
42
+ /**
43
+ * Prevent modern browsers from displaying `audio` without controls.
44
+ * Remove excess height in iOS 5 devices.
45
+ */
46
+
47
+ audio:not([controls]) {
48
+ display: none;
49
+ height: 0;
50
+ }
51
+
52
+ /**
53
+ * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4.
54
+ * Known issue: no IE 6 support.
55
+ */
56
+
57
+ [hidden] {
58
+ display: none;
59
+ }
60
+
61
+ /* ==========================================================================
62
+ Base
63
+ ========================================================================== */
64
+
65
+ /**
66
+ * 1. Correct text resizing oddly in IE 6/7 when body `font-size` is set using
67
+ * `em` units.
68
+ * 2. Prevent iOS text size adjust after orientation change, without disabling
69
+ * user zoom.
70
+ */
71
+
72
+ html {
73
+ font-size: 100%; /* 1 */
74
+ -ms-text-size-adjust: 100%; /* 2 */
75
+ -webkit-text-size-adjust: 100%; /* 2 */
76
+ }
77
+
78
+ /**
79
+ * Address `font-family` inconsistency between `textarea` and other form
80
+ * elements.
81
+ */
82
+
83
+ html,
84
+ button,
85
+ input,
86
+ select,
87
+ textarea {
88
+ font-family: sans-serif;
89
+ }
90
+
91
+ /**
92
+ * Address margins handled incorrectly in IE 6/7.
93
+ */
94
+
95
+ body {
96
+ margin: 0;
97
+ }
98
+
99
+ /* ==========================================================================
100
+ Links
101
+ ========================================================================== */
102
+
103
+ /**
104
+ * Address `outline` inconsistency between Chrome and other browsers.
105
+ */
106
+
107
+ a:focus {
108
+ outline: thin dotted;
109
+ }
110
+
111
+ /**
112
+ * Improve readability when focused and also mouse hovered in all browsers.
113
+ */
114
+
115
+ a:active,
116
+ a:hover {
117
+ outline: 0;
118
+ }
119
+
120
+ /* ==========================================================================
121
+ Typography
122
+ ========================================================================== */
123
+
124
+ /**
125
+ * Address font sizes and margins set differently in IE 6/7.
126
+ * Address font sizes within `section` and `article` in Firefox 4+, Safari 5,
127
+ * and Chrome.
128
+ */
129
+
130
+ h1 {
131
+ font-size: 2em;
132
+ margin: 0.67em 0;
133
+ }
134
+
135
+ h2 {
136
+ font-size: 1.5em;
137
+ margin: 0.83em 0;
138
+ }
139
+
140
+ h3 {
141
+ font-size: 1.17em;
142
+ margin: 1em 0;
143
+ }
144
+
145
+ h4 {
146
+ font-size: 1em;
147
+ margin: 1.33em 0;
148
+ }
149
+
150
+ h5 {
151
+ font-size: 0.83em;
152
+ margin: 1.67em 0;
153
+ }
154
+
155
+ h6 {
156
+ font-size: 0.67em;
157
+ margin: 2.33em 0;
158
+ }
159
+
160
+ /**
161
+ * Address styling not present in IE 7/8/9, Safari 5, and Chrome.
162
+ */
163
+
164
+ abbr[title] {
165
+ border-bottom: 1px dotted;
166
+ }
167
+
168
+ /**
169
+ * Address style set to `bolder` in Firefox 3+, Safari 4/5, and Chrome.
170
+ */
171
+
172
+ b,
173
+ strong {
174
+ font-weight: bold;
175
+ }
176
+
177
+ blockquote {
178
+ margin: 1em 40px;
179
+ }
180
+
181
+ /**
182
+ * Address styling not present in Safari 5 and Chrome.
183
+ */
184
+
185
+ dfn {
186
+ font-style: italic;
187
+ }
188
+
189
+ /**
190
+ * Address differences between Firefox and other browsers.
191
+ * Known issue: no IE 6/7 normalization.
192
+ */
193
+
194
+ hr {
195
+ -moz-box-sizing: content-box;
196
+ box-sizing: content-box;
197
+ height: 0;
198
+ }
199
+
200
+ /**
201
+ * Address styling not present in IE 6/7/8/9.
202
+ */
203
+
204
+ mark {
205
+ background: #ff0;
206
+ color: #000;
207
+ }
208
+
209
+ /**
210
+ * Address margins set differently in IE 6/7.
211
+ */
212
+
213
+ p,
214
+ pre {
215
+ margin: 1em 0;
216
+ }
217
+
218
+ /**
219
+ * Correct font family set oddly in IE 6, Safari 4/5, and Chrome.
220
+ */
221
+
222
+ code,
223
+ kbd,
224
+ pre,
225
+ samp {
226
+ font-family: monospace, serif;
227
+ _font-family: 'courier new', monospace;
228
+ font-size: 1em;
229
+ }
230
+
231
+ /**
232
+ * Improve readability of pre-formatted text in all browsers.
233
+ */
234
+
235
+ pre {
236
+ white-space: pre;
237
+ white-space: pre-wrap;
238
+ word-wrap: break-word;
239
+ }
240
+
241
+ /**
242
+ * Address CSS quotes not supported in IE 6/7.
243
+ */
244
+
245
+ q {
246
+ quotes: none;
247
+ }
248
+
249
+ /**
250
+ * Address `quotes` property not supported in Safari 4.
251
+ */
252
+
253
+ q:before,
254
+ q:after {
255
+ content: '';
256
+ content: none;
257
+ }
258
+
259
+ /**
260
+ * Address inconsistent and variable font size in all browsers.
261
+ */
262
+
263
+ small {
264
+ font-size: 80%;
265
+ }
266
+
267
+ /**
268
+ * Prevent `sub` and `sup` affecting `line-height` in all browsers.
269
+ */
270
+
271
+ sub,
272
+ sup {
273
+ font-size: 75%;
274
+ line-height: 0;
275
+ position: relative;
276
+ vertical-align: baseline;
277
+ }
278
+
279
+ sup {
280
+ top: -0.5em;
281
+ }
282
+
283
+ sub {
284
+ bottom: -0.25em;
285
+ }
286
+
287
+ /* ==========================================================================
288
+ Lists
289
+ ========================================================================== */
290
+
291
+ /**
292
+ * Address margins set differently in IE 6/7.
293
+ */
294
+
295
+ dl,
296
+ menu,
297
+ ol,
298
+ ul {
299
+ margin: 1em 0;
300
+ }
301
+
302
+ dd {
303
+ margin: 0 0 0 40px;
304
+ }
305
+
306
+ /**
307
+ * Address paddings set differently in IE 6/7.
308
+ */
309
+
310
+ menu,
311
+ ol,
312
+ ul {
313
+ padding: 0 0 0 40px;
314
+ }
315
+
316
+ /**
317
+ * Correct list images handled incorrectly in IE 7.
318
+ */
319
+
320
+ nav ul,
321
+ nav ol {
322
+ list-style: none;
323
+ list-style-image: none;
324
+ }
325
+
326
+ /* ==========================================================================
327
+ Embedded content
328
+ ========================================================================== */
329
+
330
+ /**
331
+ * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3.
332
+ * 2. Improve image quality when scaled in IE 7.
333
+ */
334
+
335
+ img {
336
+ border: 0; /* 1 */
337
+ -ms-interpolation-mode: bicubic; /* 2 */
338
+ }
339
+
340
+ /**
341
+ * Correct overflow displayed oddly in IE 9.
342
+ */
343
+
344
+ svg:not(:root) {
345
+ overflow: hidden;
346
+ }
347
+
348
+ /* ==========================================================================
349
+ Figures
350
+ ========================================================================== */
351
+
352
+ /**
353
+ * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11.
354
+ */
355
+
356
+ figure {
357
+ margin: 0;
358
+ }
359
+
360
+ /* ==========================================================================
361
+ Forms
362
+ ========================================================================== */
363
+
364
+ /**
365
+ * Correct margin displayed oddly in IE 6/7.
366
+ */
367
+
368
+ form {
369
+ margin: 0;
370
+ }
371
+
372
+ /**
373
+ * Define consistent border, margin, and padding.
374
+ */
375
+
376
+ fieldset {
377
+ border: 1px solid #c0c0c0;
378
+ margin: 0 2px;
379
+ padding: 0.35em 0.625em 0.75em;
380
+ }
381
+
382
+ /**
383
+ * 1. Correct color not being inherited in IE 6/7/8/9.
384
+ * 2. Correct text not wrapping in Firefox 3.
385
+ * 3. Correct alignment displayed oddly in IE 6/7.
386
+ */
387
+
388
+ legend {
389
+ border: 0; /* 1 */
390
+ padding: 0;
391
+ white-space: normal; /* 2 */
392
+ *margin-left: -7px; /* 3 */
393
+ }
394
+
395
+ /**
396
+ * 1. Correct font size not being inherited in all browsers.
397
+ * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5,
398
+ * and Chrome.
399
+ * 3. Improve appearance and consistency in all browsers.
400
+ */
401
+
402
+ button,
403
+ input,
404
+ select,
405
+ textarea {
406
+ font-size: 100%; /* 1 */
407
+ margin: 0; /* 2 */
408
+ vertical-align: baseline; /* 3 */
409
+ *vertical-align: middle; /* 3 */
410
+ }
411
+
412
+ /**
413
+ * Address Firefox 3+ setting `line-height` on `input` using `!important` in
414
+ * the UA stylesheet.
415
+ */
416
+
417
+ button,
418
+ input {
419
+ line-height: normal;
420
+ }
421
+
422
+ /**
423
+ * Address inconsistent `text-transform` inheritance for `button` and `select`.
424
+ * All other form control elements do not inherit `text-transform` values.
425
+ * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+.
426
+ * Correct `select` style inheritance in Firefox 4+ and Opera.
427
+ */
428
+
429
+ button,
430
+ select {
431
+ text-transform: none;
432
+ }
433
+
434
+ /**
435
+ * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
436
+ * and `video` controls.
437
+ * 2. Correct inability to style clickable `input` types in iOS.
438
+ * 3. Improve usability and consistency of cursor style between image-type
439
+ * `input` and others.
440
+ * 4. Remove inner spacing in IE 7 without affecting normal text inputs.
441
+ * Known issue: inner spacing remains in IE 6.
442
+ */
443
+
444
+ button,
445
+ html input[type="button"], /* 1 */
446
+ input[type="reset"],
447
+ input[type="submit"] {
448
+ -webkit-appearance: button; /* 2 */
449
+ cursor: pointer; /* 3 */
450
+ *overflow: visible; /* 4 */
451
+ }
452
+
453
+ /**
454
+ * Re-set default cursor for disabled elements.
455
+ */
456
+
457
+ button[disabled],
458
+ html input[disabled] {
459
+ cursor: default;
460
+ }
461
+
462
+ /**
463
+ * 1. Address box sizing set to content-box in IE 8/9.
464
+ * 2. Remove excess padding in IE 8/9.
465
+ * 3. Remove excess padding in IE 7.
466
+ * Known issue: excess padding remains in IE 6.
467
+ */
468
+
469
+ input[type="checkbox"],
470
+ input[type="radio"] {
471
+ box-sizing: border-box; /* 1 */
472
+ padding: 0; /* 2 */
473
+ *height: 13px; /* 3 */
474
+ *width: 13px; /* 3 */
475
+ }
476
+
477
+ /**
478
+ * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
479
+ * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
480
+ * (include `-moz` to future-proof).
481
+ */
482
+
483
+ input[type="search"] {
484
+ -webkit-appearance: textfield; /* 1 */
485
+ -moz-box-sizing: content-box;
486
+ -webkit-box-sizing: content-box; /* 2 */
487
+ box-sizing: content-box;
488
+ }
489
+
490
+ /**
491
+ * Remove inner padding and search cancel button in Safari 5 and Chrome
492
+ * on OS X.
493
+ */
494
+
495
+ input[type="search"]::-webkit-search-cancel-button,
496
+ input[type="search"]::-webkit-search-decoration {
497
+ -webkit-appearance: none;
498
+ }
499
+
500
+ /**
501
+ * Remove inner padding and border in Firefox 3+.
502
+ */
503
+
504
+ button::-moz-focus-inner,
505
+ input::-moz-focus-inner {
506
+ border: 0;
507
+ padding: 0;
508
+ }
509
+
510
+ /**
511
+ * 1. Remove default vertical scrollbar in IE 6/7/8/9.
512
+ * 2. Improve readability and alignment in all browsers.
513
+ */
514
+
515
+ textarea {
516
+ overflow: auto; /* 1 */
517
+ vertical-align: top; /* 2 */
518
+ }
519
+
520
+ /* ==========================================================================
521
+ Tables
522
+ ========================================================================== */
523
+
524
+ /**
525
+ * Remove most spacing between table cells.
526
+ */
527
+
528
+ table {
529
+ border-collapse: collapse;
530
+ border-spacing: 0;
531
+ }
532
+
533
+ /*! HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/ */
534
+
535
+ /*
536
+ * What follows is the result of much research on cross-browser styling.
537
+ * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
538
+ * Kroc Camen, and the H5BP dev community and team.
539
+ */
540
+
541
+ /* ==========================================================================
542
+ Base styles: opinionated defaults
543
+ ========================================================================== */
544
+
545
+ html,
546
+ button,
547
+ input,
548
+ select,
549
+ textarea {
550
+ color: #222;
551
+ }
552
+
553
+ html {
554
+ font-size: 1em;
555
+ line-height: 1.4;
556
+ }
557
+
558
+ /*
559
+ * Remove text-shadow in selection highlight: h5bp.com/i
560
+ * These selection rule sets have to be separate.
561
+ * Customize the background color to match your design.
562
+ */
563
+
564
+ ::-moz-selection {
565
+ background: #b3d4fc;
566
+ text-shadow: none;
567
+ }
568
+
569
+ ::selection {
570
+ background: #b3d4fc;
571
+ text-shadow: none;
572
+ }
573
+
574
+ /*
575
+ * A better looking default horizontal rule
576
+ */
577
+
578
+ hr {
579
+ display: block;
580
+ height: 1px;
581
+ border: 0;
582
+ border-top: 1px solid #ccc;
583
+ margin: 1em 0;
584
+ padding: 0;
585
+ }
586
+
587
+ /*
588
+ * Remove the gap between images, videos, audio and canvas and the bottom of
589
+ * their containers: h5bp.com/i/440
590
+ */
591
+
592
+ audio,
593
+ canvas,
594
+ img,
595
+ video {
596
+ vertical-align: middle;
597
+ }
598
+
599
+ /*
600
+ * Remove default fieldset styles.
601
+ */
602
+
603
+ fieldset {
604
+ border: 0;
605
+ margin: 0;
606
+ padding: 0;
607
+ }
608
+
609
+ /*
610
+ * Allow only vertical resizing of textareas.
611
+ */
612
+
613
+ textarea {
614
+ resize: vertical;
615
+ }
616
+
617
+ /* ==========================================================================
618
+ Browse Happy prompt
619
+ ========================================================================== */
620
+
621
+ .browsehappy {
622
+ margin: 0.2em 0;
623
+ background: #ccc;
624
+ color: #000;
625
+ padding: 0.2em 0;
626
+ }
627
+
628
+ /* ==========================================================================
629
+ Author's custom styles
630
+ ========================================================================== */
631
+
632
+
633
+
634
+
635
+
636
+
637
+
638
+
639
+
640
+
641
+
642
+
643
+
644
+
645
+
646
+
647
+
648
+ /* ==========================================================================
649
+ Helper classes
650
+ ========================================================================== */
651
+
652
+ /*
653
+ * Image replacement
654
+ */
655
+
656
+ .ir {
657
+ background-color: transparent;
658
+ border: 0;
659
+ overflow: hidden;
660
+ /* IE 6/7 fallback */
661
+ *text-indent: -9999px;
662
+ }
663
+
664
+ .ir:before {
665
+ content: "";
666
+ display: block;
667
+ width: 0;
668
+ height: 150%;
669
+ }
670
+
671
+ /*
672
+ * Hide from both screenreaders and browsers: h5bp.com/u
673
+ */
674
+
675
+ .hidden {
676
+ display: none !important;
677
+ visibility: hidden;
678
+ }
679
+
680
+ /*
681
+ * Hide only visually, but have it available for screenreaders: h5bp.com/v
682
+ */
683
+
684
+ .visuallyhidden {
685
+ border: 0;
686
+ clip: rect(0 0 0 0);
687
+ height: 1px;
688
+ margin: -1px;
689
+ overflow: hidden;
690
+ padding: 0;
691
+ position: absolute;
692
+ width: 1px;
693
+ }
694
+
695
+ /*
696
+ * Extends the .visuallyhidden class to allow the element to be focusable
697
+ * when navigated to via the keyboard: h5bp.com/p
698
+ */
699
+
700
+ .visuallyhidden.focusable:active,
701
+ .visuallyhidden.focusable:focus {
702
+ clip: auto;
703
+ height: auto;
704
+ margin: 0;
705
+ overflow: visible;
706
+ position: static;
707
+ width: auto;
708
+ }
709
+
710
+ /*
711
+ * Hide visually and from screenreaders, but maintain layout
712
+ */
713
+
714
+ .invisible {
715
+ visibility: hidden;
716
+ }
717
+
718
+ /*
719
+ * Clearfix: contain floats
720
+ *
721
+ * For modern browsers
722
+ * 1. The space content is one way to avoid an Opera bug when the
723
+ * `contenteditable` attribute is included anywhere else in the document.
724
+ * Otherwise it causes space to appear at the top and bottom of elements
725
+ * that receive the `clearfix` class.
726
+ * 2. The use of `table` rather than `block` is only necessary if using
727
+ * `:before` to contain the top-margins of child elements.
728
+ */
729
+
730
+ .clearfix:before,
731
+ .clearfix:after {
732
+ content: " "; /* 1 */
733
+ display: table; /* 2 */
734
+ }
735
+
736
+ .clearfix:after {
737
+ clear: both;
738
+ }
739
+
740
+ /*
741
+ * For IE 6/7 only
742
+ * Include this rule to trigger hasLayout and contain floats.
743
+ */
744
+
745
+ .clearfix {
746
+ *zoom: 1;
747
+ }
748
+
749
+ /* ==========================================================================
750
+ EXAMPLE Media Queries for Responsive Design.
751
+ These examples override the primary ('mobile first') styles.
752
+ Modify as content requires.
753
+ ========================================================================== */
754
+
755
+ @media only screen and (min-width: 35em) {
756
+ /* Style adjustments for viewports that meet the condition */
757
+ }
758
+
759
+ @media print,
760
+ (-o-min-device-pixel-ratio: 5/4),
761
+ (-webkit-min-device-pixel-ratio: 1.25),
762
+ (min-resolution: 120dpi) {
763
+ /* Style adjustments for high resolution devices */
764
+ }
765
+
766
+ /* ==========================================================================
767
+ Print styles.
768
+ Inlined to avoid required HTTP connection: h5bp.com/r
769
+ ========================================================================== */
770
+
771
+ @media print {
772
+ * {
773
+ background: transparent !important;
774
+ color: #000 !important; /* Black prints faster: h5bp.com/s */
775
+ box-shadow: none !important;
776
+ text-shadow: none !important;
777
+ }
778
+
779
+ a,
780
+ a:visited {
781
+ text-decoration: underline;
782
+ }
783
+
784
+ a[href]:after {
785
+ content: " (" attr(href) ")";
786
+ }
787
+
788
+ abbr[title]:after {
789
+ content: " (" attr(title) ")";
790
+ }
791
+
792
+ /*
793
+ * Don't show links for images, or javascript/internal links
794
+ */
795
+
796
+ .ir a:after,
797
+ a[href^="javascript:"]:after,
798
+ a[href^="#"]:after {
799
+ content: "";
800
+ }
801
+
802
+ pre,
803
+ blockquote {
804
+ border: 1px solid #999;
805
+ page-break-inside: avoid;
806
+ }
807
+
808
+ thead {
809
+ display: table-header-group; /* h5bp.com/t */
810
+ }
811
+
812
+ tr,
813
+ img {
814
+ page-break-inside: avoid;
815
+ }
816
+
817
+ img {
818
+ max-width: 100% !important;
819
+ }
820
+
821
+ @page {
822
+ margin: 0.5cm;
823
+ }
824
+
825
+ p,
826
+ h2,
827
+ h3 {
828
+ orphans: 3;
829
+ widows: 3;
830
+ }
831
+
832
+ h2,
833
+ h3 {
834
+ page-break-after: avoid;
835
+ }
836
+ }
837
+
838
+ </style>
839
+ <!-- end of boilerplate -->
840
+ <style>
841
+
842
+ body {
843
+ margin-left: 2em;
844
+ margin-right: 2em;
845
+ }
846
+
847
+ a {
848
+ text-decoration: none;
849
+ }
850
+ a:hover {
851
+ color: dodgerblue;
852
+ }
853
+
854
+ a:visited {
855
+ color: blue;
856
+ }
857
+
858
+ .task {
859
+ }
860
+
861
+ .task-info {
862
+ padding: 1em;
863
+ margin-top: 0;
864
+ }
865
+
866
+ .task h2 {
867
+ border-bottom: 1px gray solid;
868
+ padding: .5em;
869
+ margin: 0;
870
+ font-size: 24pt;
871
+ background-color: #ddf;
872
+ position: relative;
873
+ }
874
+ .task h2 .task-header-links {
875
+ position: absolute;
876
+ top: .5em;
877
+ right: .5em;
878
+ }
879
+ .task h2 .task-header-links a {
880
+ font-weight: normal;
881
+ font-size: 12pt;
882
+ }
883
+
884
+ .task h3 {
885
+ margin-bottom: 0;
886
+ }
887
+
888
+ .task-info .source {
889
+ background-color: #ddd;
890
+ padding: 1em;
891
+ display: none;
892
+ }
893
+
894
+ .task-info dl {
895
+ margin-top: 0;
896
+ margin-left: 2em;
897
+ }
898
+
899
+ .task-info dl dt .argument-name {
900
+ color: darkslategray;
901
+ }
902
+
903
+ .task-info dl dt .argument-type {
904
+ font-style: italic;
905
+ }
906
+
907
+ div.legend p {
908
+ float:left;
909
+ margin-right:20px;
910
+ }
911
+
912
+ div.legend {
913
+ clear: both;
914
+ margin-bottom: 1em;
915
+ }
916
+
917
+ div.legend a{
918
+ padding-right: 1em;
919
+ }
920
+
921
+ #task-search-area {
922
+ margin-bottom: 1em;
923
+ }
924
+
925
+ input.searchbox {
926
+ text-indent: 0.5em;
927
+ }
928
+
929
+ #task-search-results {
930
+ position: relative;
931
+ }
932
+
933
+ div.search-result {
934
+ -webkit-box-sizing: border-box;
935
+ -moz-box-sizing: border-box;
936
+ box-sizing: border-box;
937
+ width: 100%;
938
+ padding: 0.5em;
939
+ }
940
+
941
+ div.search-result.even {
942
+ background-color: aliceblue;
943
+ }
944
+
945
+ div.search-result.odd {
946
+ background-color: ghostwhite;
947
+ }
948
+
949
+ div.search-result:hover {
950
+ background-color: #ddf;
951
+ cursor: pointer;
952
+ }
953
+
954
+ div.search-result-title {
955
+ font-weight: bold;
956
+ }
957
+
958
+ span.highlight-search-term {
959
+ color: tomato;
960
+ }
961
+
962
+ div.search-result-description {
963
+ width: 100%;
964
+ }
965
+
966
+ div.task-info {
967
+ display:none;
968
+ background-color: whitesmoke;
969
+ }
970
+
971
+ div.task-info:hover {
972
+ cursor: pointer;
973
+ }
974
+
975
+ div.task-title {
976
+ font-weight: bold;
977
+ }
978
+
979
+ #full-tasks {
980
+ display: none;
981
+ }
982
+
983
+ div.task-platforms .platform {
984
+ line-height: 14pt;
985
+ font-size: 12pt;
986
+ padding: 1px;
987
+ }
988
+
989
+ div.task-platforms .platform.pass {
990
+ background-color: green;
991
+ }
992
+
993
+ div.task-platforms .platform.partial {
994
+ background-color: yellow;
995
+ }
996
+
997
+ div.task-platforms .platform.fail {
998
+ background-color: red;
999
+ }
1000
+
1001
+ div.task-platforms .platform.untested {
1002
+ background-color: gray;
1003
+ }
1004
+
1005
+ /*
1006
+
1007
+ github.com style (c) Vasily Polovnyov <vast@whiteants.net>
1008
+
1009
+ */
1010
+
1011
+ .task div.source {
1012
+ border-radius: 15px;
1013
+ -moz-border-radius: 15px;
1014
+ margin-top: 1em;
1015
+ margin-bottom: 1em;
1016
+ }
1017
+
1018
+ pre code {
1019
+ display: block; padding: 0.5em;
1020
+ color: #333;
1021
+ }
1022
+
1023
+ pre .comment,
1024
+ pre .template_comment,
1025
+ pre .diff .header,
1026
+ pre .javadoc {
1027
+ color: #998;
1028
+ font-style: italic
1029
+ }
1030
+
1031
+ pre .keyword,
1032
+ pre .css .rule .keyword,
1033
+ pre .winutils,
1034
+ pre .javascript .title,
1035
+ pre .nginx .title,
1036
+ pre .subst,
1037
+ pre .request,
1038
+ pre .status {
1039
+ color: #333;
1040
+ font-weight: bold
1041
+ }
1042
+
1043
+ pre .number,
1044
+ pre .hexcolor,
1045
+ pre .ruby .constant {
1046
+ color: #099;
1047
+ }
1048
+
1049
+ pre .string,
1050
+ pre .tag .value,
1051
+ pre .phpdoc,
1052
+ pre .tex .formula {
1053
+ color: #d14
1054
+ }
1055
+
1056
+ pre .title,
1057
+ pre .id {
1058
+ color: #900;
1059
+ font-weight: bold
1060
+ }
1061
+
1062
+ pre .javascript .title,
1063
+ pre .lisp .title,
1064
+ pre .clojure .title,
1065
+ pre .subst {
1066
+ font-weight: normal
1067
+ }
1068
+
1069
+ pre .class .title,
1070
+ pre .haskell .type,
1071
+ pre .vhdl .literal,
1072
+ pre .tex .command {
1073
+ color: #458;
1074
+ font-weight: bold
1075
+ }
1076
+
1077
+ pre .tag,
1078
+ pre .tag .title,
1079
+ pre .rules .property,
1080
+ pre .django .tag .keyword {
1081
+ color: #000080;
1082
+ font-weight: normal
1083
+ }
1084
+
1085
+ pre .attribute,
1086
+ pre .variable,
1087
+ pre .lisp .body {
1088
+ color: #008080
1089
+ }
1090
+
1091
+ pre .regexp {
1092
+ color: #009926
1093
+ }
1094
+
1095
+ pre .class {
1096
+ color: #458;
1097
+ font-weight: bold
1098
+ }
1099
+
1100
+ pre .symbol,
1101
+ pre .ruby .symbol .string,
1102
+ pre .lisp .keyword,
1103
+ pre .tex .special,
1104
+ pre .prompt {
1105
+ color: #990073
1106
+ }
1107
+
1108
+ pre .built_in,
1109
+ pre .lisp .title,
1110
+ pre .clojure .built_in {
1111
+ color: #0086b3
1112
+ }
1113
+
1114
+ pre .preprocessor,
1115
+ pre .pi,
1116
+ pre .doctype,
1117
+ pre .shebang,
1118
+ pre .cdata {
1119
+ color: #999;
1120
+ font-weight: bold
1121
+ }
1122
+
1123
+ pre .deletion {
1124
+ background: #fdd
1125
+ }
1126
+
1127
+ pre .addition {
1128
+ background: #dfd
1129
+ }
1130
+
1131
+ pre .diff .change {
1132
+ background: #0086b3
1133
+ }
1134
+
1135
+ pre .chunk {
1136
+ color: #aaa
1137
+ }
1138
+
1139
+ </style>
1140
+ <script type="text/javascript">
1141
+ var hljs=new function(){function l(o){return o.replace(/&/gm,"&amp;").replace(/</gm,"&lt;").replace(/>/gm,"&gt;")}function b(p){for(var o=p.firstChild;o;o=o.nextSibling){if(o.nodeName=="CODE"){return o}if(!(o.nodeType==3&&o.nodeValue.match(/\s+/))){break}}}function h(p,o){return Array.prototype.map.call(p.childNodes,function(q){if(q.nodeType==3){return o?q.nodeValue.replace(/\n/g,""):q.nodeValue}if(q.nodeName=="BR"){return"\n"}return h(q,o)}).join("")}function a(q){var p=(q.className+" "+q.parentNode.className).split(/\s+/);p=p.map(function(r){return r.replace(/^language-/,"")});for(var o=0;o<p.length;o++){if(e[p[o]]||p[o]=="no-highlight"){return p[o]}}}function c(q){var o=[];(function p(r,s){for(var t=r.firstChild;t;t=t.nextSibling){if(t.nodeType==3){s+=t.nodeValue.length}else{if(t.nodeName=="BR"){s+=1}else{if(t.nodeType==1){o.push({event:"start",offset:s,node:t});s=p(t,s);o.push({event:"stop",offset:s,node:t})}}}}return s})(q,0);return o}function j(x,v,w){var p=0;var y="";var r=[];function t(){if(x.length&&v.length){if(x[0].offset!=v[0].offset){return(x[0].offset<v[0].offset)?x:v}else{return v[0].event=="start"?x:v}}else{return x.length?x:v}}function s(A){function z(B){return" "+B.nodeName+'="'+l(B.value)+'"'}return"<"+A.nodeName+Array.prototype.map.call(A.attributes,z).join("")+">"}while(x.length||v.length){var u=t().splice(0,1)[0];y+=l(w.substr(p,u.offset-p));p=u.offset;if(u.event=="start"){y+=s(u.node);r.push(u.node)}else{if(u.event=="stop"){var o,q=r.length;do{q--;o=r[q];y+=("</"+o.nodeName.toLowerCase()+">")}while(o!=u.node);r.splice(q,1);while(q<r.length){y+=s(r[q]);q++}}}}return y+l(w.substr(p))}function f(q){function o(s,r){return RegExp(s,"m"+(q.cI?"i":"")+(r?"g":""))}function p(y,w){if(y.compiled){return}y.compiled=true;var s=[];if(y.k){var r={};function z(A,t){t.split(" ").forEach(function(B){var C=B.split("|");r[C[0]]=[A,C[1]?Number(C[1]):1];s.push(C[0])})}y.lR=o(y.l||hljs.IR,true);if(typeof y.k=="string"){z("keyword",y.k)}else{for(var x in y.k){if(!y.k.hasOwnProperty(x)){continue}z(x,y.k[x])}}y.k=r}if(w){if(y.bWK){y.b="\\b("+s.join("|")+")\\s"}y.bR=o(y.b?y.b:"\\B|\\b");if(!y.e&&!y.eW){y.e="\\B|\\b"}if(y.e){y.eR=o(y.e)}y.tE=y.e||"";if(y.eW&&w.tE){y.tE+=(y.e?"|":"")+w.tE}}if(y.i){y.iR=o(y.i)}if(y.r===undefined){y.r=1}if(!y.c){y.c=[]}for(var v=0;v<y.c.length;v++){if(y.c[v]=="self"){y.c[v]=y}p(y.c[v],y)}if(y.starts){p(y.starts,w)}var u=[];for(var v=0;v<y.c.length;v++){u.push(y.c[v].b)}if(y.tE){u.push(y.tE)}if(y.i){u.push(y.i)}y.t=u.length?o(u.join("|"),true):{exec:function(t){return null}}}p(q)}function d(D,E){function o(r,M){for(var L=0;L<M.c.length;L++){var K=M.c[L].bR.exec(r);if(K&&K.index==0){return M.c[L]}}}function s(K,r){if(K.e&&K.eR.test(r)){return K}if(K.eW){return s(K.parent,r)}}function t(r,K){return K.i&&K.iR.test(r)}function y(L,r){var K=F.cI?r[0].toLowerCase():r[0];return L.k.hasOwnProperty(K)&&L.k[K]}function G(){var K=l(w);if(!A.k){return K}var r="";var N=0;A.lR.lastIndex=0;var L=A.lR.exec(K);while(L){r+=K.substr(N,L.index-N);var M=y(A,L);if(M){v+=M[1];r+='<span class="'+M[0]+'">'+L[0]+"</span>"}else{r+=L[0]}N=A.lR.lastIndex;L=A.lR.exec(K)}return r+K.substr(N)}function z(){if(A.sL&&!e[A.sL]){return l(w)}var r=A.sL?d(A.sL,w):g(w);if(A.r>0){v+=r.keyword_count;B+=r.r}return'<span class="'+r.language+'">'+r.value+"</span>"}function J(){return A.sL!==undefined?z():G()}function I(L,r){var K=L.cN?'<span class="'+L.cN+'">':"";if(L.rB){x+=K;w=""}else{if(L.eB){x+=l(r)+K;w=""}else{x+=K;w=r}}A=Object.create(L,{parent:{value:A}});B+=L.r}function C(K,r){w+=K;if(r===undefined){x+=J();return 0}var L=o(r,A);if(L){x+=J();I(L,r);return L.rB?0:r.length}var M=s(A,r);if(M){if(!(M.rE||M.eE)){w+=r}x+=J();do{if(A.cN){x+="</span>"}A=A.parent}while(A!=M.parent);if(M.eE){x+=l(r)}w="";if(M.starts){I(M.starts,"")}return M.rE?0:r.length}if(t(r,A)){throw"Illegal"}w+=r;return r.length||1}var F=e[D];f(F);var A=F;var w="";var B=0;var v=0;var x="";try{var u,q,p=0;while(true){A.t.lastIndex=p;u=A.t.exec(E);if(!u){break}q=C(E.substr(p,u.index-p),u[0]);p=u.index+q}C(E.substr(p));return{r:B,keyword_count:v,value:x,language:D}}catch(H){if(H=="Illegal"){return{r:0,keyword_count:0,value:l(E)}}else{throw H}}}function g(s){var o={keyword_count:0,r:0,value:l(s)};var q=o;for(var p in e){if(!e.hasOwnProperty(p)){continue}var r=d(p,s);r.language=p;if(r.keyword_count+r.r>q.keyword_count+q.r){q=r}if(r.keyword_count+r.r>o.keyword_count+o.r){q=o;o=r}}if(q.language){o.second_best=q}return o}function i(q,p,o){if(p){q=q.replace(/^((<[^>]+>|\t)+)/gm,function(r,v,u,t){return v.replace(/\t/g,p)})}if(o){q=q.replace(/\n/g,"<br>")}return q}function m(r,u,p){var v=h(r,p);var t=a(r);if(t=="no-highlight"){return}var w=t?d(t,v):g(v);t=w.language;var o=c(r);if(o.length){var q=document.createElement("pre");q.innerHTML=w.value;w.value=j(o,c(q),v)}w.value=i(w.value,u,p);var s=r.className;if(!s.match("(\\s|^)(language-)?"+t+"(\\s|$)")){s=s?(s+" "+t):t}r.innerHTML=w.value;r.className=s;r.result={language:t,kw:w.keyword_count,re:w.r};if(w.second_best){r.second_best={language:w.second_best.language,kw:w.second_best.keyword_count,re:w.second_best.r}}}function n(){if(n.called){return}n.called=true;Array.prototype.map.call(document.getElementsByTagName("pre"),b).filter(Boolean).forEach(function(o){m(o,hljs.tabReplace)})}function k(){window.addEventListener("DOMContentLoaded",n,false);window.addEventListener("load",n,false)}var e={};this.LANGUAGES=e;this.highlight=d;this.highlightAuto=g;this.fixMarkup=i;this.highlightBlock=m;this.initHighlighting=n;this.initHighlightingOnLoad=k;this.IR="[a-zA-Z][a-zA-Z0-9_]*";this.UIR="[a-zA-Z_][a-zA-Z0-9_]*";this.NR="\\b\\d+(\\.\\d+)?";this.CNR="(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)";this.BNR="\\b(0b[01]+)";this.RSR="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|\\.|-|-=|/|/=|:|;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~";this.BE={b:"\\\\[\\s\\S]",r:0};this.ASM={cN:"string",b:"'",e:"'",i:"\\n",c:[this.BE],r:0};this.QSM={cN:"string",b:'"',e:'"',i:"\\n",c:[this.BE],r:0};this.CLCM={cN:"comment",b:"//",e:"$"};this.CBLCLM={cN:"comment",b:"/\\*",e:"\\*/"};this.HCM={cN:"comment",b:"#",e:"$"};this.NM={cN:"number",b:this.NR,r:0};this.CNM={cN:"number",b:this.CNR,r:0};this.BNM={cN:"number",b:this.BNR,r:0};this.inherit=function(q,r){var o={};for(var p in q){o[p]=q[p]}if(r){for(var p in r){o[p]=r[p]}}return o}}();hljs.LANGUAGES.ruby=function(e){var a="[a-zA-Z_][a-zA-Z0-9_]*(\\!|\\?)?";var j="[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?";var g={keyword:"and false then defined module in return redo if BEGIN retry end for true self when next until do begin unless END rescue nil else break undef not super class case require yield alias while ensure elsif or include"};var c={cN:"yardoctag",b:"@[A-Za-z]+"};var k=[{cN:"comment",b:"#",e:"$",c:[c]},{cN:"comment",b:"^\\=begin",e:"^\\=end",c:[c],r:10},{cN:"comment",b:"^__END__",e:"\\n$"}];var d={cN:"subst",b:"#\\{",e:"}",l:a,k:g};var i=[e.BE,d];var b=[{cN:"string",b:"'",e:"'",c:i,r:0},{cN:"string",b:'"',e:'"',c:i,r:0},{cN:"string",b:"%[qw]?\\(",e:"\\)",c:i},{cN:"string",b:"%[qw]?\\[",e:"\\]",c:i},{cN:"string",b:"%[qw]?{",e:"}",c:i},{cN:"string",b:"%[qw]?<",e:">",c:i,r:10},{cN:"string",b:"%[qw]?/",e:"/",c:i,r:10},{cN:"string",b:"%[qw]?%",e:"%",c:i,r:10},{cN:"string",b:"%[qw]?-",e:"-",c:i,r:10},{cN:"string",b:"%[qw]?\\|",e:"\\|",c:i,r:10}];var h={cN:"function",bWK:true,e:" |$|;",k:"def",c:[{cN:"title",b:j,l:a,k:g},{cN:"params",b:"\\(",e:"\\)",l:a,k:g}].concat(k)};var f=k.concat(b.concat([{cN:"class",bWK:true,e:"$|;",k:"class module",c:[{cN:"title",b:"[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?",r:0},{cN:"inheritance",b:"<\\s*",c:[{cN:"parent",b:"("+e.IR+"::)?"+e.IR}]}].concat(k)},h,{cN:"constant",b:"(::)?(\\b[A-Z]\\w*(::)?)+",r:0},{cN:"symbol",b:":",c:b.concat([{b:j}]),r:0},{cN:"symbol",b:a+":",r:0},{cN:"number",b:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",r:0},{cN:"number",b:"\\?\\w"},{cN:"variable",b:"(\\$\\W)|((\\$|\\@\\@?)(\\w+))"},{b:"("+e.RSR+")\\s*",c:k.concat([{cN:"regexp",b:"/",e:"/[a-z]*",i:"\\n",c:[e.BE,d]}]),r:0}]));d.c=f;h.c[1].c=f;return{l:a,k:g,c:f}}(hljs);
1142
+ </script>
1143
+ </head>
1144
+ <body>
1145
+ <h1><a name="top">Crew - Tasks</a></h1>
1146
+
1147
+ <h2>Sources</h2>
1148
+ <% home.sources.each do |source| %>
1149
+ <a href="#source_<%=source.hash%>"><%=source%></a>
1150
+ <% end %>
1151
+
1152
+ <h2>All tasks</h2>
1153
+ <div class="legend" id="all-tasks">
1154
+ <% home.each_task do |task| %>
1155
+ <a href="#<%=task.name%>"><%=task.name%></a>
1156
+ <% end %>
1157
+ </div>
1158
+
1159
+ <div id="task-search-area">
1160
+ <input type="text" onkeyup="searchTasks(this.value)" placeholder="Search" class="searchbox">
1161
+ <div id="task-search-results"></div>
1162
+ </div>
1163
+
1164
+ <div id="full-tasks">
1165
+ <% home.each_task do |task| %>
1166
+ <%= render_task(task) %>
1167
+ <% end %>
1168
+ </div>
1169
+
1170
+ <script>
1171
+ var list = document.getElementsByTagName('code');
1172
+ for (var i = 0; i != list.length; i++) {
1173
+ var e = list[i];
1174
+ hljs.highlightBlock(e);
1175
+ }
1176
+
1177
+ function Trie() {
1178
+ this.value = [];
1179
+ this.dictionary = new Object();
1180
+ this.insert = function(key, value) {
1181
+ if (key.length == 0) {
1182
+ this.value.push(value);
1183
+ } else if (key.length > 0) {
1184
+ var c = key.charAt(0);
1185
+ if (typeof(this.dictionary[c]) == 'undefined') {
1186
+ this.dictionary[c] = new Trie();
1187
+ }
1188
+ this.dictionary[c].insert(key.slice(1), value);
1189
+ }
1190
+ }
1191
+ this.searchTree = function(key) {
1192
+ if (key.length == 0) {
1193
+ return this;
1194
+ }
1195
+ if (!this.dictionary.hasOwnProperty(key.charAt(0))) {
1196
+ return new Trie();
1197
+ }
1198
+ return this.dictionary[key.charAt(0)].searchTree(key.slice(1));
1199
+ }
1200
+ this.values = function() {
1201
+ var values = [];
1202
+ if (this.value.length > 0) {
1203
+ values = values.concat(this.value);
1204
+ }
1205
+ for (var key in this.dictionary) {
1206
+ if (this.dictionary.hasOwnProperty(key)) {
1207
+ values = values.concat(this.dictionary[key].values());
1208
+ }
1209
+ }
1210
+ return values;
1211
+ }
1212
+ }
1213
+ function Task(name, description, html) {
1214
+ this.name = name;
1215
+ // text-overflow = ellipsis
1216
+ this.description = description;
1217
+ this.html = html;
1218
+ }
1219
+ function jumpTo(taskName) {
1220
+ toggleSource(taskName, 'open');
1221
+ window.location = "#"+taskName;
1222
+ }
1223
+ function toggleSource(taskName, openclose) {
1224
+ var taskSourceLink = document.getElementById(taskName+"-source-link");
1225
+
1226
+ if (openclose == 'close' || taskSourceLink.nextElementSibling.style.display == 'block' && typeof(openclose) == 'undefined') {
1227
+ taskSourceLink.nextElementSibling.style.display = 'none';
1228
+ taskSourceLink.innerHTML = '[+] Show Source'
1229
+ } else if (openclose == 'open' || typeof(openclose) == 'undefined'){
1230
+ taskSourceLink.nextElementSibling.style.display = 'block';
1231
+ taskSourceLink.innerHTML = '[-] Hide Source';
1232
+ };
1233
+ }
1234
+ function searchTasks(key) {
1235
+ document.getElementById('task-search-results').innerHTML = "";
1236
+ document.getElementById('task-search-results').style.display = 'none';
1237
+ var titleResults = [];
1238
+ var descriptionResults = [];
1239
+ titleResults = titleResults.concat(taskNameTrie.searchTree(key).values());
1240
+ var moreResults = taskNameSplitTrie.searchTree(key).values();
1241
+ // dedupe
1242
+ for (var i=0; i<moreResults.length; i++) {
1243
+ if (titleResults.indexOf(moreResults[i]) == -1) {
1244
+ titleResults.push(moreResults[i]);
1245
+ }
1246
+ }
1247
+ if (titleResults.length > 0) {
1248
+ document.getElementById('task-search-results').style.display = 'block';
1249
+ }
1250
+ for (var i=0; i<titleResults.length; i++) {
1251
+ var name = titleResults[i].name;
1252
+ var nameKeySplit = name.split(key);
1253
+ name = nameKeySplit.join("<span class='highlight-search-term'>"+key+"</span>");
1254
+ document.getElementById('task-search-results').innerHTML = document.getElementById('task-search-results').innerHTML + titleResults[i].html;
1255
+ var result = document.getElementById(titleResults[i].name).getElementsByClassName("search-result")[0];
1256
+ result.style.display='block';
1257
+ if (i % 2 == 0) {
1258
+ result.className = "search-result even"
1259
+ } else {
1260
+ result.className = "search-result odd"
1261
+ }
1262
+ document.getElementById(titleResults[i].name).getElementsByClassName("task-info")[0].style.display='none';
1263
+ document.getElementById(titleResults[i].name+"-search-result-title").innerHTML=name;
1264
+ }
1265
+ // slow; replace later
1266
+ var pattern = new RegExp(key, "i");
1267
+ for (var i=0; i<tasks.length; i++) {
1268
+ if (pattern.test(tasks[i].description)) {
1269
+ // dedupe
1270
+ if (titleResults.indexOf(tasks[i]) == -1) {
1271
+ descriptionResults.push(tasks[i]);
1272
+ }
1273
+ }
1274
+ }
1275
+ if (descriptionResults.length > 0) {
1276
+ document.getElementById('task-search-results').style.display = 'block';
1277
+ }
1278
+ for (var i=0; i<descriptionResults.length; i++) {
1279
+ var description = descriptionResults[i].description;
1280
+ var descriptionKeySplit = description.split(key);
1281
+ description = descriptionKeySplit.join("<span class='highlight-search-term'>"+key+"</span>");
1282
+ var titleCaseDescriptionSplit = description.split(key.charAt(0).toUpperCase() + key.substr(1));
1283
+ description = titleCaseDescriptionSplit.join("<span class='highlight-search-term'>"+key.charAt(0).toUpperCase() + key.substr(1)+"</span>");
1284
+ document.getElementById('task-search-results').innerHTML = document.getElementById('task-search-results').innerHTML + descriptionResults[i].html;
1285
+ var result = document.getElementById(descriptionResults[i].name).getElementsByClassName("search-result")[0];
1286
+ result.style.display='block';
1287
+ if ((titleResults.length + i) % 2 == 0) {
1288
+ result.className = "search-result even"
1289
+ } else {
1290
+ result.className = "search-result odd"
1291
+ }
1292
+ document.getElementById(descriptionResults[i].name).getElementsByClassName("task-info")[0].style.display='none';
1293
+ document.getElementById(descriptionResults[i].name+"-search-result-description").innerHTML = description;
1294
+ }
1295
+ }
1296
+ var taskNameTrie = new Trie();
1297
+ var taskNameSplitTrie = new Trie();
1298
+ var tasks = [];
1299
+ window.onload = function() {
1300
+ <% home.each_task do |task| %>
1301
+ var task = new Task("<%= task.name %>", "<%= task.desc %>", <%= render_task(task).to_json %>);
1302
+ tasks.push(task);
1303
+ taskNameTrie.insert(task.name.toLowerCase(), task);
1304
+ var taskNameSplit = task.name.split('_');
1305
+ for (var i = 1; i< taskNameSplit.length; i++) {
1306
+ taskNameSplitTrie.insert(taskNameSplit[i].toLowerCase(), task);
1307
+ }
1308
+ <% end %>
1309
+ searchTasks('');
1310
+ }
1311
+ </script>
1312
+ </body>
1313
+ </html>