repository-manager 0.1.7 → 0.1.15

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1929) hide show
  1. checksums.yaml +13 -5
  2. data/.rspec +1 -1
  3. data/README.md +459 -459
  4. data/app/models/repository_manager/repo_file.rb +33 -33
  5. data/app/models/repository_manager/repo_folder.rb +151 -150
  6. data/app/models/repository_manager/repo_item.rb +91 -91
  7. data/app/models/repository_manager/sharing.rb +69 -61
  8. data/app/models/repository_manager/sharings_member.rb +7 -7
  9. data/config/locales/en/repository_manager.en.yml +18 -18
  10. data/config/locales/fr/repository_manager.fr.yml +18 -18
  11. data/db/migrate/20131018214212_create_repository_manager.rb +34 -33
  12. data/lib/generators/repository_manager/install_generator.rb +32 -32
  13. data/lib/generators/repository_manager/templates/initializer.rb +12 -12
  14. data/lib/repository-manager.rb +33 -33
  15. data/lib/repository_manager/exceptions.rb +9 -9
  16. data/lib/repository_manager/has_repository.rb +560 -552
  17. data/lib/repository_manager/version.rb +2 -2
  18. data/repository-manager.gemspec +30 -30
  19. data/spec/dummy/Gemfile +11 -11
  20. data/spec/dummy/db/migrate/20131016193722_create_users.rb +10 -10
  21. data/spec/dummy/db/migrate/20131016193834_create_groups.rb +9 -9
  22. data/spec/dummy/db/migrate/20131016194207_create_groups_users.rb +4 -4
  23. data/spec/dummy/db/migrate/20131018214212_create_repository_manager.rb +34 -33
  24. data/spec/dummy/db/schema.rb +70 -68
  25. data/spec/dummy/public/uploads/repo_file/file/1275/textfile.txt +1 -0
  26. data/spec/dummy/public/uploads/repo_file/file/1276/textfile.txt +1 -0
  27. data/spec/dummy/public/uploads/repo_file/file/1285/textfile.txt +1 -0
  28. data/spec/dummy/public/uploads/repo_file/file/1287/textfile.txt +1 -0
  29. data/spec/dummy/public/uploads/repo_file/file/1291/textfile.txt +1 -0
  30. data/spec/dummy/public/uploads/repo_file/file/1294/textfile.txt +1 -0
  31. data/spec/dummy/public/uploads/repo_file/file/1296/textfile.txt +1 -0
  32. data/spec/dummy/public/uploads/repo_file/file/1297/textfile.txt +1 -0
  33. data/spec/dummy/public/uploads/repo_file/file/1299/textfile.txt +1 -0
  34. data/spec/dummy/public/uploads/repo_file/file/1305/textfile.txt +1 -0
  35. data/spec/dummy/public/uploads/repo_file/file/1307/textfile.txt +1 -0
  36. data/spec/dummy/public/uploads/repo_file/file/1309/textfile.txt +1 -0
  37. data/spec/dummy/public/uploads/repo_file/file/1311/textfile.txt +1 -0
  38. data/spec/dummy/public/uploads/repo_file/file/1313/textfile.txt +1 -0
  39. data/spec/dummy/public/uploads/repo_file/file/1315/textfile.txt +1 -0
  40. data/spec/dummy/public/uploads/repo_file/file/1317/textfile.txt +1 -0
  41. data/spec/dummy/public/uploads/repo_file/file/1319/textfile.txt +1 -0
  42. data/spec/dummy/public/uploads/repo_file/file/1321/textfile.txt +1 -0
  43. data/spec/dummy/public/uploads/repo_file/file/1324/textfile.txt +1 -0
  44. data/spec/dummy/public/uploads/repo_file/file/1325/textfile.txt +1 -0
  45. data/spec/dummy/public/uploads/repo_file/file/1327/textfile.txt +1 -0
  46. data/spec/dummy/public/uploads/repo_file/file/1331/textfile.txt +1 -0
  47. data/spec/dummy/public/uploads/repo_file/file/1332/textfile.txt +1 -0
  48. data/spec/dummy/public/uploads/repo_file/file/1333/textfile.txt +1 -0
  49. data/spec/dummy/public/uploads/repo_file/file/1334/textfile.txt +1 -0
  50. data/spec/dummy/public/uploads/repo_file/file/1335/textfile.txt +1 -0
  51. data/spec/dummy/public/uploads/repo_file/file/1336/textfile.txt +1 -0
  52. data/spec/dummy/public/uploads/repo_file/file/1337/textfile.txt +1 -0
  53. data/spec/dummy/public/uploads/repo_file/file/1338/textfile.txt +1 -0
  54. data/spec/dummy/public/uploads/repo_file/file/1339/textfile.txt +1 -0
  55. data/spec/dummy/public/uploads/repo_file/file/1340/textfile.txt +1 -0
  56. data/spec/dummy/public/uploads/repo_file/file/1349/textfile.txt +1 -0
  57. data/spec/dummy/public/uploads/repo_file/file/1353/textfile.txt +1 -0
  58. data/spec/dummy/public/uploads/repo_file/file/1356/textfile.txt +1 -0
  59. data/spec/dummy/public/uploads/repo_file/file/1358/textfile.txt +1 -0
  60. data/spec/dummy/public/uploads/repo_file/file/1359/textfile.txt +1 -0
  61. data/spec/dummy/public/uploads/repo_file/file/1361/textfile.txt +1 -0
  62. data/spec/dummy/public/uploads/repo_file/file/1365/textfile.txt +1 -0
  63. data/spec/dummy/public/uploads/repo_file/file/1367/textfile.txt +1 -0
  64. data/spec/dummy/public/uploads/repo_file/file/1369/textfile.txt +1 -0
  65. data/spec/dummy/public/uploads/repo_file/file/1371/textfile.txt +1 -0
  66. data/spec/dummy/public/uploads/repo_file/file/1373/textfile.txt +1 -0
  67. data/spec/dummy/public/uploads/repo_file/file/1375/textfile.txt +1 -0
  68. data/spec/dummy/public/uploads/repo_file/file/1377/textfile.txt +1 -0
  69. data/spec/dummy/public/uploads/repo_file/file/1379/textfile.txt +1 -0
  70. data/spec/dummy/public/uploads/repo_file/file/1381/textfile.txt +1 -0
  71. data/spec/dummy/public/uploads/repo_file/file/1383/textfile.txt +1 -0
  72. data/spec/dummy/public/uploads/repo_file/file/1386/textfile.txt +1 -0
  73. data/spec/dummy/public/uploads/repo_file/file/1388/textfile.txt +1 -0
  74. data/spec/dummy/public/uploads/repo_file/file/1389/textfile.txt +1 -0
  75. data/spec/dummy/public/uploads/repo_file/file/1390/textfile.txt +1 -0
  76. data/spec/dummy/public/uploads/repo_file/file/1391/textfile.txt +1 -0
  77. data/spec/dummy/public/uploads/repo_file/file/1392/textfile.txt +1 -0
  78. data/spec/dummy/public/uploads/repo_file/file/1393/textfile.txt +1 -0
  79. data/spec/dummy/public/uploads/repo_file/file/1394/textfile.txt +1 -0
  80. data/spec/dummy/public/uploads/repo_file/file/1395/textfile.txt +1 -0
  81. data/spec/dummy/public/uploads/repo_file/file/1396/textfile.txt +1 -0
  82. data/spec/dummy/public/uploads/repo_file/file/1397/textfile.txt +1 -0
  83. data/spec/dummy/public/uploads/repo_file/file/1406/textfile.txt +1 -0
  84. data/spec/dummy/public/uploads/repo_file/file/1408/textfile.txt +1 -0
  85. data/spec/dummy/public/uploads/repo_file/file/1412/textfile.txt +1 -0
  86. data/spec/dummy/public/uploads/repo_file/file/1415/textfile.txt +1 -0
  87. data/spec/dummy/public/uploads/repo_file/file/1417/textfile.txt +1 -0
  88. data/spec/dummy/public/uploads/repo_file/file/1418/textfile.txt +1 -0
  89. data/spec/dummy/public/uploads/repo_file/file/1420/textfile.txt +1 -0
  90. data/spec/dummy/public/uploads/repo_file/file/1426/textfile.txt +1 -0
  91. data/spec/dummy/public/uploads/repo_file/file/1428/textfile.txt +1 -0
  92. data/spec/dummy/public/uploads/repo_file/file/1430/textfile.txt +1 -0
  93. data/spec/dummy/public/uploads/repo_file/file/1432/textfile.txt +1 -0
  94. data/spec/dummy/public/uploads/repo_file/file/1434/textfile.txt +1 -0
  95. data/spec/dummy/public/uploads/repo_file/file/1436/textfile.txt +1 -0
  96. data/spec/dummy/public/uploads/repo_file/file/1438/textfile.txt +1 -0
  97. data/spec/dummy/public/uploads/repo_file/file/1440/textfile.txt +1 -0
  98. data/spec/dummy/public/uploads/repo_file/file/1442/textfile.txt +1 -0
  99. data/spec/dummy/public/uploads/repo_file/file/1445/textfile.txt +1 -0
  100. data/spec/dummy/public/uploads/repo_file/file/1446/textfile.txt +1 -0
  101. data/spec/dummy/public/uploads/repo_file/file/1448/textfile.txt +1 -0
  102. data/spec/dummy/public/uploads/repo_file/file/1451/textfile.txt +1 -0
  103. data/spec/dummy/public/uploads/repo_file/file/1452/textfile.txt +1 -0
  104. data/spec/dummy/public/uploads/repo_file/file/1453/textfile.txt +1 -0
  105. data/spec/dummy/public/uploads/repo_file/file/1454/textfile.txt +1 -0
  106. data/spec/dummy/public/uploads/repo_file/file/1455/textfile.txt +1 -0
  107. data/spec/dummy/public/uploads/repo_file/file/1456/textfile.txt +1 -0
  108. data/spec/dummy/public/uploads/repo_file/file/1457/textfile.txt +1 -0
  109. data/spec/dummy/public/uploads/repo_file/file/1458/textfile.txt +1 -0
  110. data/spec/dummy/public/uploads/repo_file/file/1459/textfile.txt +1 -0
  111. data/spec/dummy/public/uploads/repo_file/file/1460/textfile.txt +1 -0
  112. data/spec/dummy/public/uploads/repo_file/file/1469/textfile.txt +1 -0
  113. data/spec/dummy/public/uploads/repo_file/file/1471/textfile.txt +1 -0
  114. data/spec/dummy/public/uploads/repo_file/file/1475/textfile.txt +1 -0
  115. data/spec/dummy/public/uploads/repo_file/file/1478/textfile.txt +1 -0
  116. data/spec/dummy/public/uploads/repo_file/file/1480/textfile.txt +1 -0
  117. data/spec/dummy/public/uploads/repo_file/file/1481/textfile.txt +1 -0
  118. data/spec/dummy/public/uploads/repo_file/file/1483/textfile.txt +1 -0
  119. data/spec/dummy/public/uploads/repo_file/file/1489/textfile.txt +1 -0
  120. data/spec/dummy/public/uploads/repo_file/file/1491/textfile.txt +1 -0
  121. data/spec/dummy/public/uploads/repo_file/file/1493/textfile.txt +1 -0
  122. data/spec/dummy/public/uploads/repo_file/file/1495/textfile.txt +1 -0
  123. data/spec/dummy/public/uploads/repo_file/file/1497/textfile.txt +1 -0
  124. data/spec/dummy/public/uploads/repo_file/file/1499/textfile.txt +1 -0
  125. data/spec/dummy/public/uploads/repo_file/file/1501/textfile.txt +1 -0
  126. data/spec/dummy/public/uploads/repo_file/file/1503/textfile.txt +1 -0
  127. data/spec/dummy/public/uploads/repo_file/file/1505/textfile.txt +1 -0
  128. data/spec/dummy/public/uploads/repo_file/file/1508/textfile.txt +1 -0
  129. data/spec/dummy/public/uploads/repo_file/file/1509/textfile.txt +1 -0
  130. data/spec/dummy/public/uploads/repo_file/file/1511/textfile.txt +1 -0
  131. data/spec/dummy/public/uploads/repo_file/file/1515/textfile.txt +1 -0
  132. data/spec/dummy/public/uploads/repo_file/file/1516/textfile.txt +1 -0
  133. data/spec/dummy/public/uploads/repo_file/file/1517/textfile.txt +1 -0
  134. data/spec/dummy/public/uploads/repo_file/file/1518/textfile.txt +1 -0
  135. data/spec/dummy/public/uploads/repo_file/file/1519/textfile.txt +1 -0
  136. data/spec/dummy/public/uploads/repo_file/file/1520/textfile.txt +1 -0
  137. data/spec/dummy/public/uploads/repo_file/file/1521/textfile.txt +1 -0
  138. data/spec/dummy/public/uploads/repo_file/file/1522/textfile.txt +1 -0
  139. data/spec/dummy/public/uploads/repo_file/file/1523/textfile.txt +1 -0
  140. data/spec/dummy/public/uploads/repo_file/file/1524/textfile.txt +1 -0
  141. data/spec/dummy/public/uploads/repo_file/file/1533/textfile.txt +1 -0
  142. data/spec/dummy/public/uploads/repo_file/file/1535/textfile.txt +1 -0
  143. data/spec/dummy/public/uploads/repo_file/file/1539/textfile.txt +1 -0
  144. data/spec/dummy/public/uploads/repo_file/file/1542/textfile.txt +1 -0
  145. data/spec/dummy/public/uploads/repo_file/file/1544/textfile.txt +1 -0
  146. data/spec/dummy/public/uploads/repo_file/file/1545/textfile.txt +1 -0
  147. data/spec/dummy/public/uploads/repo_file/file/1547/textfile.txt +1 -0
  148. data/spec/dummy/public/uploads/repo_file/file/1553/textfile.txt +1 -0
  149. data/spec/dummy/public/uploads/repo_file/file/1555/textfile.txt +1 -0
  150. data/spec/dummy/public/uploads/repo_file/file/1557/textfile.txt +1 -0
  151. data/spec/dummy/public/uploads/repo_file/file/1559/textfile.txt +1 -0
  152. data/spec/dummy/public/uploads/repo_file/file/1561/textfile.txt +1 -0
  153. data/spec/dummy/public/uploads/repo_file/file/1563/textfile.txt +1 -0
  154. data/spec/dummy/public/uploads/repo_file/file/1565/textfile.txt +1 -0
  155. data/spec/dummy/public/uploads/repo_file/file/1567/textfile.txt +1 -0
  156. data/spec/dummy/public/uploads/repo_file/file/1569/textfile.txt +1 -0
  157. data/spec/dummy/public/uploads/repo_file/file/1572/textfile.txt +1 -0
  158. data/spec/dummy/public/uploads/repo_file/file/1573/textfile.txt +1 -0
  159. data/spec/dummy/public/uploads/repo_file/file/1575/textfile.txt +1 -0
  160. data/spec/dummy/public/uploads/repo_file/file/1579/textfile.txt +1 -0
  161. data/spec/dummy/public/uploads/repo_file/file/1580/textfile.txt +1 -0
  162. data/spec/dummy/public/uploads/repo_file/file/1581/textfile.txt +1 -0
  163. data/spec/dummy/public/uploads/repo_file/file/1582/textfile.txt +1 -0
  164. data/spec/dummy/public/uploads/repo_file/file/1583/textfile.txt +1 -0
  165. data/spec/dummy/public/uploads/repo_file/file/1584/textfile.txt +1 -0
  166. data/spec/dummy/public/uploads/repo_file/file/1585/textfile.txt +1 -0
  167. data/spec/dummy/public/uploads/repo_file/file/1586/textfile.txt +1 -0
  168. data/spec/dummy/public/uploads/repo_file/file/1587/textfile.txt +1 -0
  169. data/spec/dummy/public/uploads/repo_file/file/1588/textfile.txt +1 -0
  170. data/spec/dummy/public/uploads/repo_file/file/1597/textfile.txt +1 -0
  171. data/spec/dummy/public/uploads/repo_file/file/1599/textfile.txt +1 -0
  172. data/spec/dummy/public/uploads/repo_file/file/1603/textfile.txt +1 -0
  173. data/spec/dummy/public/uploads/repo_file/file/1606/textfile.txt +1 -0
  174. data/spec/dummy/public/uploads/repo_file/file/1608/textfile.txt +1 -0
  175. data/spec/dummy/public/uploads/repo_file/file/1609/textfile.txt +1 -0
  176. data/spec/dummy/public/uploads/repo_file/file/1611/textfile.txt +1 -0
  177. data/spec/dummy/public/uploads/repo_file/file/1617/textfile.txt +1 -0
  178. data/spec/dummy/public/uploads/repo_file/file/1619/textfile.txt +1 -0
  179. data/spec/dummy/public/uploads/repo_file/file/1621/textfile.txt +1 -0
  180. data/spec/dummy/public/uploads/repo_file/file/1623/textfile.txt +1 -0
  181. data/spec/dummy/public/uploads/repo_file/file/1625/textfile.txt +1 -0
  182. data/spec/dummy/public/uploads/repo_file/file/1627/textfile.txt +1 -0
  183. data/spec/dummy/public/uploads/repo_file/file/1629/textfile.txt +1 -0
  184. data/spec/dummy/public/uploads/repo_file/file/1631/textfile.txt +1 -0
  185. data/spec/dummy/public/uploads/repo_file/file/1633/textfile.txt +1 -0
  186. data/spec/dummy/public/uploads/repo_file/file/1636/textfile.txt +1 -0
  187. data/spec/dummy/public/uploads/repo_file/file/1637/textfile.txt +1 -0
  188. data/spec/dummy/public/uploads/repo_file/file/1639/textfile.txt +1 -0
  189. data/spec/dummy/public/uploads/repo_file/file/1643/textfile.txt +1 -0
  190. data/spec/dummy/public/uploads/repo_file/file/1644/textfile.txt +1 -0
  191. data/spec/dummy/public/uploads/repo_file/file/1645/textfile.txt +1 -0
  192. data/spec/dummy/public/uploads/repo_file/file/1646/textfile.txt +1 -0
  193. data/spec/dummy/public/uploads/repo_file/file/1647/textfile.txt +1 -0
  194. data/spec/dummy/public/uploads/repo_file/file/1648/textfile.txt +1 -0
  195. data/spec/dummy/public/uploads/repo_file/file/1649/textfile.txt +1 -0
  196. data/spec/dummy/public/uploads/repo_file/file/1650/textfile.txt +1 -0
  197. data/spec/dummy/public/uploads/repo_file/file/1651/textfile.txt +1 -0
  198. data/spec/dummy/public/uploads/repo_file/file/1652/textfile.txt +1 -0
  199. data/spec/dummy/public/uploads/repo_file/file/1661/textfile.txt +1 -0
  200. data/spec/dummy/public/uploads/repo_file/file/1663/textfile.txt +1 -0
  201. data/spec/dummy/public/uploads/repo_file/file/1667/textfile.txt +1 -0
  202. data/spec/dummy/public/uploads/repo_file/file/1670/textfile.txt +1 -0
  203. data/spec/dummy/public/uploads/repo_file/file/1672/textfile.txt +1 -0
  204. data/spec/dummy/public/uploads/repo_file/file/1673/textfile.txt +1 -0
  205. data/spec/dummy/public/uploads/repo_file/file/1675/textfile.txt +1 -0
  206. data/spec/dummy/public/uploads/repo_file/file/1681/textfile.txt +1 -0
  207. data/spec/dummy/public/uploads/repo_file/file/1683/textfile.txt +1 -0
  208. data/spec/dummy/public/uploads/repo_file/file/1685/textfile.txt +1 -0
  209. data/spec/dummy/public/uploads/repo_file/file/1687/textfile.txt +1 -0
  210. data/spec/dummy/public/uploads/repo_file/file/1689/textfile.txt +1 -0
  211. data/spec/dummy/public/uploads/repo_file/file/1691/textfile.txt +1 -0
  212. data/spec/dummy/public/uploads/repo_file/file/1693/textfile.txt +1 -0
  213. data/spec/dummy/public/uploads/repo_file/file/1695/textfile.txt +1 -0
  214. data/spec/dummy/public/uploads/repo_file/file/1697/textfile.txt +1 -0
  215. data/spec/dummy/public/uploads/repo_file/file/1700/textfile.txt +1 -0
  216. data/spec/dummy/public/uploads/repo_file/file/1701/textfile.txt +1 -0
  217. data/spec/dummy/public/uploads/repo_file/file/1703/textfile.txt +1 -0
  218. data/spec/dummy/public/uploads/repo_file/file/1707/textfile.txt +1 -0
  219. data/spec/dummy/public/uploads/repo_file/file/1708/textfile.txt +1 -0
  220. data/spec/dummy/public/uploads/repo_file/file/1709/textfile.txt +1 -0
  221. data/spec/dummy/public/uploads/repo_file/file/1710/textfile.txt +1 -0
  222. data/spec/dummy/public/uploads/repo_file/file/1711/textfile.txt +1 -0
  223. data/spec/dummy/public/uploads/repo_file/file/1712/textfile.txt +1 -0
  224. data/spec/dummy/public/uploads/repo_file/file/1713/textfile.txt +1 -0
  225. data/spec/dummy/public/uploads/repo_file/file/1714/textfile.txt +1 -0
  226. data/spec/dummy/public/uploads/repo_file/file/1715/textfile.txt +1 -0
  227. data/spec/dummy/public/uploads/repo_file/file/1716/textfile.txt +1 -0
  228. data/spec/dummy/public/uploads/repo_file/file/1725/textfile.txt +1 -0
  229. data/spec/dummy/public/uploads/repo_file/file/1727/textfile.txt +1 -0
  230. data/spec/dummy/public/uploads/repo_file/file/1731/textfile.txt +1 -0
  231. data/spec/dummy/public/uploads/repo_file/file/1734/textfile.txt +1 -0
  232. data/spec/dummy/public/uploads/repo_file/file/1736/textfile.txt +1 -0
  233. data/spec/dummy/public/uploads/repo_file/file/1737/textfile.txt +1 -0
  234. data/spec/dummy/public/uploads/repo_file/file/1739/textfile.txt +1 -0
  235. data/spec/dummy/public/uploads/repo_file/file/1745/textfile.txt +1 -0
  236. data/spec/dummy/public/uploads/repo_file/file/1747/textfile.txt +1 -0
  237. data/spec/dummy/public/uploads/repo_file/file/1749/textfile.txt +1 -0
  238. data/spec/dummy/public/uploads/repo_file/file/1751/textfile.txt +1 -0
  239. data/spec/dummy/public/uploads/repo_file/file/1753/textfile.txt +1 -0
  240. data/spec/dummy/public/uploads/repo_file/file/1755/textfile.txt +1 -0
  241. data/spec/dummy/public/uploads/repo_file/file/1757/textfile.txt +1 -0
  242. data/spec/dummy/public/uploads/repo_file/file/1759/textfile.txt +1 -0
  243. data/spec/dummy/public/uploads/repo_file/file/1761/textfile.txt +1 -0
  244. data/spec/dummy/public/uploads/repo_file/file/1764/textfile.txt +1 -0
  245. data/spec/dummy/public/uploads/repo_file/file/1765/textfile.txt +1 -0
  246. data/spec/dummy/public/uploads/repo_file/file/1767/textfile.txt +1 -0
  247. data/spec/dummy/public/uploads/repo_file/file/1771/textfile.txt +1 -0
  248. data/spec/dummy/public/uploads/repo_file/file/1772/textfile.txt +1 -0
  249. data/spec/dummy/public/uploads/repo_file/file/1773/textfile.txt +1 -0
  250. data/spec/dummy/public/uploads/repo_file/file/1774/textfile.txt +1 -0
  251. data/spec/dummy/public/uploads/repo_file/file/1775/textfile.txt +1 -0
  252. data/spec/dummy/public/uploads/repo_file/file/1776/textfile.txt +1 -0
  253. data/spec/dummy/public/uploads/repo_file/file/1777/textfile.txt +1 -0
  254. data/spec/dummy/public/uploads/repo_file/file/1778/textfile.txt +1 -0
  255. data/spec/dummy/public/uploads/repo_file/file/1779/textfile.txt +1 -0
  256. data/spec/dummy/public/uploads/repo_file/file/1780/textfile.txt +1 -0
  257. data/spec/dummy/public/uploads/repo_file/file/1789/textfile.txt +1 -0
  258. data/spec/dummy/public/uploads/repo_file/file/1791/textfile.txt +1 -0
  259. data/spec/dummy/public/uploads/repo_file/file/1795/textfile.txt +1 -0
  260. data/spec/dummy/public/uploads/repo_file/file/1798/textfile.txt +1 -0
  261. data/spec/dummy/public/uploads/repo_file/file/1800/textfile.txt +1 -0
  262. data/spec/dummy/public/uploads/repo_file/file/1801/textfile.txt +1 -0
  263. data/spec/dummy/public/uploads/repo_file/file/1803/textfile.txt +1 -0
  264. data/spec/dummy/public/uploads/repo_file/file/1809/textfile.txt +1 -0
  265. data/spec/dummy/public/uploads/repo_file/file/1811/textfile.txt +1 -0
  266. data/spec/dummy/public/uploads/repo_file/file/1813/textfile.txt +1 -0
  267. data/spec/dummy/public/uploads/repo_file/file/1815/textfile.txt +1 -0
  268. data/spec/dummy/public/uploads/repo_file/file/1817/textfile.txt +1 -0
  269. data/spec/dummy/public/uploads/repo_file/file/1819/textfile.txt +1 -0
  270. data/spec/dummy/public/uploads/repo_file/file/1821/textfile.txt +1 -0
  271. data/spec/dummy/public/uploads/repo_file/file/1823/textfile.txt +1 -0
  272. data/spec/dummy/public/uploads/repo_file/file/1825/textfile.txt +1 -0
  273. data/spec/dummy/public/uploads/repo_file/file/1828/textfile.txt +1 -0
  274. data/spec/dummy/public/uploads/repo_file/file/1829/textfile.txt +1 -0
  275. data/spec/dummy/public/uploads/repo_file/file/1831/textfile.txt +1 -0
  276. data/spec/dummy/public/uploads/repo_file/file/1835/textfile.txt +1 -0
  277. data/spec/dummy/public/uploads/repo_file/file/1836/textfile.txt +1 -0
  278. data/spec/dummy/public/uploads/repo_file/file/1837/textfile.txt +1 -0
  279. data/spec/dummy/public/uploads/repo_file/file/1838/textfile.txt +1 -0
  280. data/spec/dummy/public/uploads/repo_file/file/1839/textfile.txt +1 -0
  281. data/spec/dummy/public/uploads/repo_file/file/1840/textfile.txt +1 -0
  282. data/spec/dummy/public/uploads/repo_file/file/1841/textfile.txt +1 -0
  283. data/spec/dummy/public/uploads/repo_file/file/1842/textfile.txt +1 -0
  284. data/spec/dummy/public/uploads/repo_file/file/1843/textfile.txt +1 -0
  285. data/spec/dummy/public/uploads/repo_file/file/1844/textfile.txt +1 -0
  286. data/spec/dummy/public/uploads/repo_file/file/1853/textfile.txt +1 -0
  287. data/spec/dummy/public/uploads/repo_file/file/1855/textfile.txt +1 -0
  288. data/spec/dummy/public/uploads/repo_file/file/1859/textfile.txt +1 -0
  289. data/spec/dummy/public/uploads/repo_file/file/1862/textfile.txt +1 -0
  290. data/spec/dummy/public/uploads/repo_file/file/1864/textfile.txt +1 -0
  291. data/spec/dummy/public/uploads/repo_file/file/1865/textfile.txt +1 -0
  292. data/spec/dummy/public/uploads/repo_file/file/1867/textfile.txt +1 -0
  293. data/spec/dummy/public/uploads/repo_file/file/1873/textfile.txt +1 -0
  294. data/spec/dummy/public/uploads/repo_file/file/1875/textfile.txt +1 -0
  295. data/spec/dummy/public/uploads/repo_file/file/1877/textfile.txt +1 -0
  296. data/spec/dummy/public/uploads/repo_file/file/1879/textfile.txt +1 -0
  297. data/spec/dummy/public/uploads/repo_file/file/1881/textfile.txt +1 -0
  298. data/spec/dummy/public/uploads/repo_file/file/1883/textfile.txt +1 -0
  299. data/spec/dummy/public/uploads/repo_file/file/1885/textfile.txt +1 -0
  300. data/spec/dummy/public/uploads/repo_file/file/1887/textfile.txt +1 -0
  301. data/spec/dummy/public/uploads/repo_file/file/1889/textfile.txt +1 -0
  302. data/spec/dummy/public/uploads/repo_file/file/1892/textfile.txt +1 -0
  303. data/spec/dummy/public/uploads/repo_file/file/1893/textfile.txt +1 -0
  304. data/spec/dummy/public/uploads/repo_file/file/1895/textfile.txt +1 -0
  305. data/spec/dummy/public/uploads/repo_file/file/1899/textfile.txt +1 -0
  306. data/spec/dummy/public/uploads/repo_file/file/1900/textfile.txt +1 -0
  307. data/spec/dummy/public/uploads/repo_file/file/1901/textfile.txt +1 -0
  308. data/spec/dummy/public/uploads/repo_file/file/1902/textfile.txt +1 -0
  309. data/spec/dummy/public/uploads/repo_file/file/1903/textfile.txt +1 -0
  310. data/spec/dummy/public/uploads/repo_file/file/1904/textfile.txt +1 -0
  311. data/spec/dummy/public/uploads/repo_file/file/1905/textfile.txt +1 -0
  312. data/spec/dummy/public/uploads/repo_file/file/1906/textfile.txt +1 -0
  313. data/spec/dummy/public/uploads/repo_file/file/1907/textfile.txt +1 -0
  314. data/spec/dummy/public/uploads/repo_file/file/1908/textfile.txt +1 -0
  315. data/spec/dummy/public/uploads/repo_file/file/1917/textfile.txt +1 -0
  316. data/spec/dummy/public/uploads/repo_file/file/1919/textfile.txt +1 -0
  317. data/spec/dummy/public/uploads/repo_file/file/1923/textfile.txt +1 -0
  318. data/spec/dummy/public/uploads/repo_file/file/1926/textfile.txt +1 -0
  319. data/spec/dummy/public/uploads/repo_file/file/1928/textfile.txt +1 -0
  320. data/spec/dummy/public/uploads/repo_file/file/1929/textfile.txt +1 -0
  321. data/spec/dummy/public/uploads/repo_file/file/1931/textfile.txt +1 -0
  322. data/spec/dummy/public/uploads/repo_file/file/1937/textfile.txt +1 -0
  323. data/spec/dummy/public/uploads/repo_file/file/1939/textfile.txt +1 -0
  324. data/spec/dummy/public/uploads/repo_file/file/1941/textfile.txt +1 -0
  325. data/spec/dummy/public/uploads/repo_file/file/1943/textfile.txt +1 -0
  326. data/spec/dummy/public/uploads/repo_file/file/1945/textfile.txt +1 -0
  327. data/spec/dummy/public/uploads/repo_file/file/1947/textfile.txt +1 -0
  328. data/spec/dummy/public/uploads/repo_file/file/1949/textfile.txt +1 -0
  329. data/spec/dummy/public/uploads/repo_file/file/1951/textfile.txt +1 -0
  330. data/spec/dummy/public/uploads/repo_file/file/1953/textfile.txt +1 -0
  331. data/spec/dummy/public/uploads/repo_file/file/1956/textfile.txt +1 -0
  332. data/spec/dummy/public/uploads/repo_file/file/1957/textfile.txt +1 -0
  333. data/spec/dummy/public/uploads/repo_file/file/1959/textfile.txt +1 -0
  334. data/spec/dummy/public/uploads/repo_file/file/1963/textfile.txt +1 -0
  335. data/spec/dummy/public/uploads/repo_file/file/1964/textfile.txt +1 -0
  336. data/spec/dummy/public/uploads/repo_file/file/1965/textfile.txt +1 -0
  337. data/spec/dummy/public/uploads/repo_file/file/1966/textfile.txt +1 -0
  338. data/spec/dummy/public/uploads/repo_file/file/1967/textfile.txt +1 -0
  339. data/spec/dummy/public/uploads/repo_file/file/1968/textfile.txt +1 -0
  340. data/spec/dummy/public/uploads/repo_file/file/1969/textfile.txt +1 -0
  341. data/spec/dummy/public/uploads/repo_file/file/1970/textfile.txt +1 -0
  342. data/spec/dummy/public/uploads/repo_file/file/1971/textfile.txt +1 -0
  343. data/spec/dummy/public/uploads/repo_file/file/1972/textfile.txt +1 -0
  344. data/spec/dummy/public/uploads/repo_file/file/1981/textfile.txt +1 -0
  345. data/spec/dummy/public/uploads/repo_file/file/1983/textfile.txt +1 -0
  346. data/spec/dummy/public/uploads/repo_file/file/1987/textfile.txt +1 -0
  347. data/spec/dummy/public/uploads/repo_file/file/1990/textfile.txt +1 -0
  348. data/spec/dummy/public/uploads/repo_file/file/1992/textfile.txt +1 -0
  349. data/spec/dummy/public/uploads/repo_file/file/1993/textfile.txt +1 -0
  350. data/spec/dummy/public/uploads/repo_file/file/1995/textfile.txt +1 -0
  351. data/spec/dummy/public/uploads/repo_file/file/2001/textfile.txt +1 -0
  352. data/spec/dummy/public/uploads/repo_file/file/2003/textfile.txt +1 -0
  353. data/spec/dummy/public/uploads/repo_file/file/2005/textfile.txt +1 -0
  354. data/spec/dummy/public/uploads/repo_file/file/2007/textfile.txt +1 -0
  355. data/spec/dummy/public/uploads/repo_file/file/2009/textfile.txt +1 -0
  356. data/spec/dummy/public/uploads/repo_file/file/2011/textfile.txt +1 -0
  357. data/spec/dummy/public/uploads/repo_file/file/2013/textfile.txt +1 -0
  358. data/spec/dummy/public/uploads/repo_file/file/2015/textfile.txt +1 -0
  359. data/spec/dummy/public/uploads/repo_file/file/2017/textfile.txt +1 -0
  360. data/spec/dummy/public/uploads/repo_file/file/2020/textfile.txt +1 -0
  361. data/spec/dummy/public/uploads/repo_file/file/2021/textfile.txt +1 -0
  362. data/spec/dummy/public/uploads/repo_file/file/2023/textfile.txt +1 -0
  363. data/spec/dummy/public/uploads/repo_file/file/2027/textfile.txt +1 -0
  364. data/spec/dummy/public/uploads/repo_file/file/2028/textfile.txt +1 -0
  365. data/spec/dummy/public/uploads/repo_file/file/2029/textfile.txt +1 -0
  366. data/spec/dummy/public/uploads/repo_file/file/2030/textfile.txt +1 -0
  367. data/spec/dummy/public/uploads/repo_file/file/2031/textfile.txt +1 -0
  368. data/spec/dummy/public/uploads/repo_file/file/2032/textfile.txt +1 -0
  369. data/spec/dummy/public/uploads/repo_file/file/2033/textfile.txt +1 -0
  370. data/spec/dummy/public/uploads/repo_file/file/2034/textfile.txt +1 -0
  371. data/spec/dummy/public/uploads/repo_file/file/2035/textfile.txt +1 -0
  372. data/spec/dummy/public/uploads/repo_file/file/2036/textfile.txt +1 -0
  373. data/spec/dummy/public/uploads/repo_file/file/2045/textfile.txt +1 -0
  374. data/spec/dummy/public/uploads/repo_file/file/2047/textfile.txt +1 -0
  375. data/spec/dummy/public/uploads/repo_file/file/2051/textfile.txt +1 -0
  376. data/spec/dummy/public/uploads/repo_file/file/2054/textfile.txt +1 -0
  377. data/spec/dummy/public/uploads/repo_file/file/2056/textfile.txt +1 -0
  378. data/spec/dummy/public/uploads/repo_file/file/2057/textfile.txt +1 -0
  379. data/spec/dummy/public/uploads/repo_file/file/2059/textfile.txt +1 -0
  380. data/spec/dummy/public/uploads/repo_file/file/2065/textfile.txt +1 -0
  381. data/spec/dummy/public/uploads/repo_file/file/2067/textfile.txt +1 -0
  382. data/spec/dummy/public/uploads/repo_file/file/2069/textfile.txt +1 -0
  383. data/spec/dummy/public/uploads/repo_file/file/2071/textfile.txt +1 -0
  384. data/spec/dummy/public/uploads/repo_file/file/2073/textfile.txt +1 -0
  385. data/spec/dummy/public/uploads/repo_file/file/2075/textfile.txt +1 -0
  386. data/spec/dummy/public/uploads/repo_file/file/2077/textfile.txt +1 -0
  387. data/spec/dummy/public/uploads/repo_file/file/2079/textfile.txt +1 -0
  388. data/spec/dummy/public/uploads/repo_file/file/2081/textfile.txt +1 -0
  389. data/spec/dummy/public/uploads/repo_file/file/2084/textfile.txt +1 -0
  390. data/spec/dummy/public/uploads/repo_file/file/2085/textfile.txt +1 -0
  391. data/spec/dummy/public/uploads/repo_file/file/2087/textfile.txt +1 -0
  392. data/spec/dummy/public/uploads/repo_file/file/2091/textfile.txt +1 -0
  393. data/spec/dummy/public/uploads/repo_file/file/2092/textfile.txt +1 -0
  394. data/spec/dummy/public/uploads/repo_file/file/2093/textfile.txt +1 -0
  395. data/spec/dummy/public/uploads/repo_file/file/2094/textfile.txt +1 -0
  396. data/spec/dummy/public/uploads/repo_file/file/2095/textfile.txt +1 -0
  397. data/spec/dummy/public/uploads/repo_file/file/2096/textfile.txt +1 -0
  398. data/spec/dummy/public/uploads/repo_file/file/2097/textfile.txt +1 -0
  399. data/spec/dummy/public/uploads/repo_file/file/2098/textfile.txt +1 -0
  400. data/spec/dummy/public/uploads/repo_file/file/2099/textfile.txt +1 -0
  401. data/spec/dummy/public/uploads/repo_file/file/2100/textfile.txt +1 -0
  402. data/spec/dummy/public/uploads/repo_file/file/2109/textfile.txt +1 -0
  403. data/spec/dummy/public/uploads/repo_file/file/2111/textfile.txt +1 -0
  404. data/spec/dummy/public/uploads/repo_file/file/2115/textfile.txt +1 -0
  405. data/spec/dummy/public/uploads/repo_file/file/2118/textfile.txt +1 -0
  406. data/spec/dummy/public/uploads/repo_file/file/2120/textfile.txt +1 -0
  407. data/spec/dummy/public/uploads/repo_file/file/2121/textfile.txt +1 -0
  408. data/spec/dummy/public/uploads/repo_file/file/2123/textfile.txt +1 -0
  409. data/spec/dummy/public/uploads/repo_file/file/2129/textfile.txt +1 -0
  410. data/spec/dummy/public/uploads/repo_file/file/2131/textfile.txt +1 -0
  411. data/spec/dummy/public/uploads/repo_file/file/2133/textfile.txt +1 -0
  412. data/spec/dummy/public/uploads/repo_file/file/2135/textfile.txt +1 -0
  413. data/spec/dummy/public/uploads/repo_file/file/2137/textfile.txt +1 -0
  414. data/spec/dummy/public/uploads/repo_file/file/2139/textfile.txt +1 -0
  415. data/spec/dummy/public/uploads/repo_file/file/2141/textfile.txt +1 -0
  416. data/spec/dummy/public/uploads/repo_file/file/2143/textfile.txt +1 -0
  417. data/spec/dummy/public/uploads/repo_file/file/2145/textfile.txt +1 -0
  418. data/spec/dummy/public/uploads/repo_file/file/2148/textfile.txt +1 -0
  419. data/spec/dummy/public/uploads/repo_file/file/2149/textfile.txt +1 -0
  420. data/spec/dummy/public/uploads/repo_file/file/2151/textfile.txt +1 -0
  421. data/spec/dummy/public/uploads/repo_file/file/2155/textfile.txt +1 -0
  422. data/spec/dummy/public/uploads/repo_file/file/2156/textfile.txt +1 -0
  423. data/spec/dummy/public/uploads/repo_file/file/2157/textfile.txt +1 -0
  424. data/spec/dummy/public/uploads/repo_file/file/2158/textfile.txt +1 -0
  425. data/spec/dummy/public/uploads/repo_file/file/2159/textfile.txt +1 -0
  426. data/spec/dummy/public/uploads/repo_file/file/2160/textfile.txt +1 -0
  427. data/spec/dummy/public/uploads/repo_file/file/2161/textfile.txt +1 -0
  428. data/spec/dummy/public/uploads/repo_file/file/2162/textfile.txt +1 -0
  429. data/spec/dummy/public/uploads/repo_file/file/2163/textfile.txt +1 -0
  430. data/spec/dummy/public/uploads/repo_file/file/2164/textfile.txt +1 -0
  431. data/spec/dummy/public/uploads/repo_file/file/2173/textfile.txt +1 -0
  432. data/spec/dummy/public/uploads/repo_file/file/2175/textfile.txt +1 -0
  433. data/spec/dummy/public/uploads/repo_file/file/2179/textfile.txt +1 -0
  434. data/spec/dummy/public/uploads/repo_file/file/2182/textfile.txt +1 -0
  435. data/spec/dummy/public/uploads/repo_file/file/2184/textfile.txt +1 -0
  436. data/spec/dummy/public/uploads/repo_file/file/2185/textfile.txt +1 -0
  437. data/spec/dummy/public/uploads/repo_file/file/2187/textfile.txt +1 -0
  438. data/spec/dummy/public/uploads/repo_file/file/2193/textfile.txt +1 -0
  439. data/spec/dummy/public/uploads/repo_file/file/2195/textfile.txt +1 -0
  440. data/spec/dummy/public/uploads/repo_file/file/2197/textfile.txt +1 -0
  441. data/spec/dummy/public/uploads/repo_file/file/2199/textfile.txt +1 -0
  442. data/spec/dummy/public/uploads/repo_file/file/2201/textfile.txt +1 -0
  443. data/spec/dummy/public/uploads/repo_file/file/2203/textfile.txt +1 -0
  444. data/spec/dummy/public/uploads/repo_file/file/2205/textfile.txt +1 -0
  445. data/spec/dummy/public/uploads/repo_file/file/2207/textfile.txt +1 -0
  446. data/spec/dummy/public/uploads/repo_file/file/2209/textfile.txt +1 -0
  447. data/spec/dummy/public/uploads/repo_file/file/2212/textfile.txt +1 -0
  448. data/spec/dummy/public/uploads/repo_file/file/2213/textfile.txt +1 -0
  449. data/spec/dummy/public/uploads/repo_file/file/2215/textfile.txt +1 -0
  450. data/spec/dummy/public/uploads/repo_file/file/2219/textfile.txt +1 -0
  451. data/spec/dummy/public/uploads/repo_file/file/2220/textfile.txt +1 -0
  452. data/spec/dummy/public/uploads/repo_file/file/2221/textfile.txt +1 -0
  453. data/spec/dummy/public/uploads/repo_file/file/2222/textfile.txt +1 -0
  454. data/spec/dummy/public/uploads/repo_file/file/2223/textfile.txt +1 -0
  455. data/spec/dummy/public/uploads/repo_file/file/2224/textfile.txt +1 -0
  456. data/spec/dummy/public/uploads/repo_file/file/2225/textfile.txt +1 -0
  457. data/spec/dummy/public/uploads/repo_file/file/2226/textfile.txt +1 -0
  458. data/spec/dummy/public/uploads/repo_file/file/2227/textfile.txt +1 -0
  459. data/spec/dummy/public/uploads/repo_file/file/2228/textfile.txt +1 -0
  460. data/spec/dummy/public/uploads/repo_file/file/2237/textfile.txt +1 -0
  461. data/spec/dummy/public/uploads/repo_file/file/2239/textfile.txt +1 -0
  462. data/spec/dummy/public/uploads/repo_file/file/2243/textfile.txt +1 -0
  463. data/spec/dummy/public/uploads/repo_file/file/2246/textfile.txt +1 -0
  464. data/spec/dummy/public/uploads/repo_file/file/2248/textfile.txt +1 -0
  465. data/spec/dummy/public/uploads/repo_file/file/2249/textfile.txt +1 -0
  466. data/spec/dummy/public/uploads/repo_file/file/2251/textfile.txt +1 -0
  467. data/spec/dummy/public/uploads/repo_file/file/2257/textfile.txt +1 -0
  468. data/spec/dummy/public/uploads/repo_file/file/2259/textfile.txt +1 -0
  469. data/spec/dummy/public/uploads/repo_file/file/2261/textfile.txt +1 -0
  470. data/spec/dummy/public/uploads/repo_file/file/2263/textfile.txt +1 -0
  471. data/spec/dummy/public/uploads/repo_file/file/2265/textfile.txt +1 -0
  472. data/spec/dummy/public/uploads/repo_file/file/2267/textfile.txt +1 -0
  473. data/spec/dummy/public/uploads/repo_file/file/2269/textfile.txt +1 -0
  474. data/spec/dummy/public/uploads/repo_file/file/2271/textfile.txt +1 -0
  475. data/spec/dummy/public/uploads/repo_file/file/2273/textfile.txt +1 -0
  476. data/spec/dummy/public/uploads/repo_file/file/2276/textfile.txt +1 -0
  477. data/spec/dummy/public/uploads/repo_file/file/2277/textfile.txt +1 -0
  478. data/spec/dummy/public/uploads/repo_file/file/2279/textfile.txt +1 -0
  479. data/spec/dummy/public/uploads/repo_file/file/2283/textfile.txt +1 -0
  480. data/spec/dummy/public/uploads/repo_file/file/2284/textfile.txt +1 -0
  481. data/spec/dummy/public/uploads/repo_file/file/2285/textfile.txt +1 -0
  482. data/spec/dummy/public/uploads/repo_file/file/2286/textfile.txt +1 -0
  483. data/spec/dummy/public/uploads/repo_file/file/2287/textfile.txt +1 -0
  484. data/spec/dummy/public/uploads/repo_file/file/2288/textfile.txt +1 -0
  485. data/spec/dummy/public/uploads/repo_file/file/2289/textfile.txt +1 -0
  486. data/spec/dummy/public/uploads/repo_file/file/2290/textfile.txt +1 -0
  487. data/spec/dummy/public/uploads/repo_file/file/2291/textfile.txt +1 -0
  488. data/spec/dummy/public/uploads/repo_file/file/2292/textfile.txt +1 -0
  489. data/spec/dummy/public/uploads/repo_file/file/2301/textfile.txt +1 -0
  490. data/spec/dummy/public/uploads/repo_file/file/2303/textfile.txt +1 -0
  491. data/spec/dummy/public/uploads/repo_file/file/2307/textfile.txt +1 -0
  492. data/spec/dummy/public/uploads/repo_file/file/2310/textfile.txt +1 -0
  493. data/spec/dummy/public/uploads/repo_file/file/2312/textfile.txt +1 -0
  494. data/spec/dummy/public/uploads/repo_file/file/2313/textfile.txt +1 -0
  495. data/spec/dummy/public/uploads/repo_file/file/2315/textfile.txt +1 -0
  496. data/spec/dummy/public/uploads/repo_file/file/2321/textfile.txt +1 -0
  497. data/spec/dummy/public/uploads/repo_file/file/2323/textfile.txt +1 -0
  498. data/spec/dummy/public/uploads/repo_file/file/2325/textfile.txt +1 -0
  499. data/spec/dummy/public/uploads/repo_file/file/2327/textfile.txt +1 -0
  500. data/spec/dummy/public/uploads/repo_file/file/2329/textfile.txt +1 -0
  501. data/spec/dummy/public/uploads/repo_file/file/2331/textfile.txt +1 -0
  502. data/spec/dummy/public/uploads/repo_file/file/2333/textfile.txt +1 -0
  503. data/spec/dummy/public/uploads/repo_file/file/2335/textfile.txt +1 -0
  504. data/spec/dummy/public/uploads/repo_file/file/2337/textfile.txt +1 -0
  505. data/spec/dummy/public/uploads/repo_file/file/2340/textfile.txt +1 -0
  506. data/spec/dummy/public/uploads/repo_file/file/2341/textfile.txt +1 -0
  507. data/spec/dummy/public/uploads/repo_file/file/2343/textfile.txt +1 -0
  508. data/spec/dummy/public/uploads/repo_file/file/2347/textfile.txt +1 -0
  509. data/spec/dummy/public/uploads/repo_file/file/2348/textfile.txt +1 -0
  510. data/spec/dummy/public/uploads/repo_file/file/2349/textfile.txt +1 -0
  511. data/spec/dummy/public/uploads/repo_file/file/2350/textfile.txt +1 -0
  512. data/spec/dummy/public/uploads/repo_file/file/2351/textfile.txt +1 -0
  513. data/spec/dummy/public/uploads/repo_file/file/2352/textfile.txt +1 -0
  514. data/spec/dummy/public/uploads/repo_file/file/2353/textfile.txt +1 -0
  515. data/spec/dummy/public/uploads/repo_file/file/2354/textfile.txt +1 -0
  516. data/spec/dummy/public/uploads/repo_file/file/2355/textfile.txt +1 -0
  517. data/spec/dummy/public/uploads/repo_file/file/2356/textfile.txt +1 -0
  518. data/spec/dummy/public/uploads/repo_file/file/2365/textfile.txt +1 -0
  519. data/spec/dummy/public/uploads/repo_file/file/2367/textfile.txt +1 -0
  520. data/spec/dummy/public/uploads/repo_file/file/2371/textfile.txt +1 -0
  521. data/spec/dummy/public/uploads/repo_file/file/2374/textfile.txt +1 -0
  522. data/spec/dummy/public/uploads/repo_file/file/2376/textfile.txt +1 -0
  523. data/spec/dummy/public/uploads/repo_file/file/2377/textfile.txt +1 -0
  524. data/spec/dummy/public/uploads/repo_file/file/2379/textfile.txt +1 -0
  525. data/spec/dummy/public/uploads/repo_file/file/2385/textfile.txt +1 -0
  526. data/spec/dummy/public/uploads/repo_file/file/2387/textfile.txt +1 -0
  527. data/spec/dummy/public/uploads/repo_file/file/2389/textfile.txt +1 -0
  528. data/spec/dummy/public/uploads/repo_file/file/2391/textfile.txt +1 -0
  529. data/spec/dummy/public/uploads/repo_file/file/2393/textfile.txt +1 -0
  530. data/spec/dummy/public/uploads/repo_file/file/2395/textfile.txt +1 -0
  531. data/spec/dummy/public/uploads/repo_file/file/2397/textfile.txt +1 -0
  532. data/spec/dummy/public/uploads/repo_file/file/2399/textfile.txt +1 -0
  533. data/spec/dummy/public/uploads/repo_file/file/2401/textfile.txt +1 -0
  534. data/spec/dummy/public/uploads/repo_file/file/2404/textfile.txt +1 -0
  535. data/spec/dummy/public/uploads/repo_file/file/2405/textfile.txt +1 -0
  536. data/spec/dummy/public/uploads/repo_file/file/2407/textfile.txt +1 -0
  537. data/spec/dummy/public/uploads/repo_file/file/2411/textfile.txt +1 -0
  538. data/spec/dummy/public/uploads/repo_file/file/2412/textfile.txt +1 -0
  539. data/spec/dummy/public/uploads/repo_file/file/2413/textfile.txt +1 -0
  540. data/spec/dummy/public/uploads/repo_file/file/2414/textfile.txt +1 -0
  541. data/spec/dummy/public/uploads/repo_file/file/2415/textfile.txt +1 -0
  542. data/spec/dummy/public/uploads/repo_file/file/2416/textfile.txt +1 -0
  543. data/spec/dummy/public/uploads/repo_file/file/2417/textfile.txt +1 -0
  544. data/spec/dummy/public/uploads/repo_file/file/2418/textfile.txt +1 -0
  545. data/spec/dummy/public/uploads/repo_file/file/2419/textfile.txt +1 -0
  546. data/spec/dummy/public/uploads/repo_file/file/2420/textfile.txt +1 -0
  547. data/spec/dummy/public/uploads/repo_file/file/2429/textfile.txt +1 -0
  548. data/spec/dummy/public/uploads/repo_file/file/2431/textfile.txt +1 -0
  549. data/spec/dummy/public/uploads/repo_file/file/2435/textfile.txt +1 -0
  550. data/spec/dummy/public/uploads/repo_file/file/2438/textfile.txt +1 -0
  551. data/spec/dummy/public/uploads/repo_file/file/2440/textfile.txt +1 -0
  552. data/spec/dummy/public/uploads/repo_file/file/2441/textfile.txt +1 -0
  553. data/spec/dummy/public/uploads/repo_file/file/2443/textfile.txt +1 -0
  554. data/spec/dummy/public/uploads/repo_file/file/2449/textfile.txt +1 -0
  555. data/spec/dummy/public/uploads/repo_file/file/2451/textfile.txt +1 -0
  556. data/spec/dummy/public/uploads/repo_file/file/2453/textfile.txt +1 -0
  557. data/spec/dummy/public/uploads/repo_file/file/2455/textfile.txt +1 -0
  558. data/spec/dummy/public/uploads/repo_file/file/2457/textfile.txt +1 -0
  559. data/spec/dummy/public/uploads/repo_file/file/2459/textfile.txt +1 -0
  560. data/spec/dummy/public/uploads/repo_file/file/2461/textfile.txt +1 -0
  561. data/spec/dummy/public/uploads/repo_file/file/2463/textfile.txt +1 -0
  562. data/spec/dummy/public/uploads/repo_file/file/2465/textfile.txt +1 -0
  563. data/spec/dummy/public/uploads/repo_file/file/2468/textfile.txt +1 -0
  564. data/spec/dummy/public/uploads/repo_file/file/2469/textfile.txt +1 -0
  565. data/spec/dummy/public/uploads/repo_file/file/2471/textfile.txt +1 -0
  566. data/spec/dummy/public/uploads/repo_file/file/2475/textfile.txt +1 -0
  567. data/spec/dummy/public/uploads/repo_file/file/2476/textfile.txt +1 -0
  568. data/spec/dummy/public/uploads/repo_file/file/2477/textfile.txt +1 -0
  569. data/spec/dummy/public/uploads/repo_file/file/2478/textfile.txt +1 -0
  570. data/spec/dummy/public/uploads/repo_file/file/2479/textfile.txt +1 -0
  571. data/spec/dummy/public/uploads/repo_file/file/2480/textfile.txt +1 -0
  572. data/spec/dummy/public/uploads/repo_file/file/2481/textfile.txt +1 -0
  573. data/spec/dummy/public/uploads/repo_file/file/2482/textfile.txt +1 -0
  574. data/spec/dummy/public/uploads/repo_file/file/2483/textfile.txt +1 -0
  575. data/spec/dummy/public/uploads/repo_file/file/2484/textfile.txt +1 -0
  576. data/spec/dummy/public/uploads/repo_file/file/2493/textfile.txt +1 -0
  577. data/spec/dummy/public/uploads/repo_file/file/2495/textfile.txt +1 -0
  578. data/spec/dummy/public/uploads/repo_file/file/2499/textfile.txt +1 -0
  579. data/spec/dummy/public/uploads/repo_file/file/2502/textfile.txt +1 -0
  580. data/spec/dummy/public/uploads/repo_file/file/2504/textfile.txt +1 -0
  581. data/spec/dummy/public/uploads/repo_file/file/2505/textfile.txt +1 -0
  582. data/spec/dummy/public/uploads/repo_file/file/2507/textfile.txt +1 -0
  583. data/spec/dummy/public/uploads/repo_file/file/2513/textfile.txt +1 -0
  584. data/spec/dummy/public/uploads/repo_file/file/2515/textfile.txt +1 -0
  585. data/spec/dummy/public/uploads/repo_file/file/2517/textfile.txt +1 -0
  586. data/spec/dummy/public/uploads/repo_file/file/2519/textfile.txt +1 -0
  587. data/spec/dummy/public/uploads/repo_file/file/2521/textfile.txt +1 -0
  588. data/spec/dummy/public/uploads/repo_file/file/2523/textfile.txt +1 -0
  589. data/spec/dummy/public/uploads/repo_file/file/2525/textfile.txt +1 -0
  590. data/spec/dummy/public/uploads/repo_file/file/2527/textfile.txt +1 -0
  591. data/spec/dummy/public/uploads/repo_file/file/2529/textfile.txt +1 -0
  592. data/spec/dummy/public/uploads/repo_file/file/2532/textfile.txt +1 -0
  593. data/spec/dummy/public/uploads/repo_file/file/2533/textfile.txt +1 -0
  594. data/spec/dummy/public/uploads/repo_file/file/2535/textfile.txt +1 -0
  595. data/spec/dummy/public/uploads/repo_file/file/2539/textfile.txt +1 -0
  596. data/spec/dummy/public/uploads/repo_file/file/2540/textfile.txt +1 -0
  597. data/spec/dummy/public/uploads/repo_file/file/2541/textfile.txt +1 -0
  598. data/spec/dummy/public/uploads/repo_file/file/2542/textfile.txt +1 -0
  599. data/spec/dummy/public/uploads/repo_file/file/2543/textfile.txt +1 -0
  600. data/spec/dummy/public/uploads/repo_file/file/2544/textfile.txt +1 -0
  601. data/spec/dummy/public/uploads/repo_file/file/2545/textfile.txt +1 -0
  602. data/spec/dummy/public/uploads/repo_file/file/2546/textfile.txt +1 -0
  603. data/spec/dummy/public/uploads/repo_file/file/2547/textfile.txt +1 -0
  604. data/spec/dummy/public/uploads/repo_file/file/2548/textfile.txt +1 -0
  605. data/spec/dummy/public/uploads/repo_file/file/2557/textfile.txt +1 -0
  606. data/spec/dummy/public/uploads/repo_file/file/2559/textfile.txt +1 -0
  607. data/spec/dummy/public/uploads/repo_file/file/2563/textfile.txt +1 -0
  608. data/spec/dummy/public/uploads/repo_file/file/2566/textfile.txt +1 -0
  609. data/spec/dummy/public/uploads/repo_file/file/2568/textfile.txt +1 -0
  610. data/spec/dummy/public/uploads/repo_file/file/2569/textfile.txt +1 -0
  611. data/spec/dummy/public/uploads/repo_file/file/2571/textfile.txt +1 -0
  612. data/spec/dummy/public/uploads/repo_file/file/2577/textfile.txt +1 -0
  613. data/spec/dummy/public/uploads/repo_file/file/2579/textfile.txt +1 -0
  614. data/spec/dummy/public/uploads/repo_file/file/2581/textfile.txt +1 -0
  615. data/spec/dummy/public/uploads/repo_file/file/2583/textfile.txt +1 -0
  616. data/spec/dummy/public/uploads/repo_file/file/2585/textfile.txt +1 -0
  617. data/spec/dummy/public/uploads/repo_file/file/2587/textfile.txt +1 -0
  618. data/spec/dummy/public/uploads/repo_file/file/2589/textfile.txt +1 -0
  619. data/spec/dummy/public/uploads/repo_file/file/2591/textfile.txt +1 -0
  620. data/spec/dummy/public/uploads/repo_file/file/2593/textfile.txt +1 -0
  621. data/spec/dummy/public/uploads/repo_file/file/2596/textfile.txt +1 -0
  622. data/spec/dummy/public/uploads/repo_file/file/2597/textfile.txt +1 -0
  623. data/spec/dummy/public/uploads/repo_file/file/2599/textfile.txt +1 -0
  624. data/spec/dummy/public/uploads/repo_file/file/2605/textfile.txt +1 -0
  625. data/spec/dummy/public/uploads/repo_file/file/2609/textfile.txt +1 -0
  626. data/spec/dummy/public/uploads/repo_file/file/2610/textfile.txt +1 -0
  627. data/spec/dummy/public/uploads/repo_file/file/2611/textfile.txt +1 -0
  628. data/spec/dummy/public/uploads/repo_file/file/2612/textfile.txt +1 -0
  629. data/spec/dummy/public/uploads/repo_file/file/2613/textfile.txt +1 -0
  630. data/spec/dummy/public/uploads/repo_file/file/2614/textfile.txt +1 -0
  631. data/spec/dummy/public/uploads/repo_file/file/2615/textfile.txt +1 -0
  632. data/spec/dummy/public/uploads/repo_file/file/2616/textfile.txt +1 -0
  633. data/spec/dummy/public/uploads/repo_file/file/2617/textfile.txt +1 -0
  634. data/spec/dummy/public/uploads/repo_file/file/2618/textfile.txt +1 -0
  635. data/spec/dummy/public/uploads/repo_file/file/2627/textfile.txt +1 -0
  636. data/spec/dummy/public/uploads/repo_file/file/2629/textfile.txt +1 -0
  637. data/spec/dummy/public/uploads/repo_file/file/2633/textfile.txt +1 -0
  638. data/spec/dummy/public/uploads/repo_file/file/2636/textfile.txt +1 -0
  639. data/spec/dummy/public/uploads/repo_file/file/2638/textfile.txt +1 -0
  640. data/spec/dummy/public/uploads/repo_file/file/2639/textfile.txt +1 -0
  641. data/spec/dummy/public/uploads/repo_file/file/2641/textfile.txt +1 -0
  642. data/spec/dummy/public/uploads/repo_file/file/2647/textfile.txt +1 -0
  643. data/spec/dummy/public/uploads/repo_file/file/2649/textfile.txt +1 -0
  644. data/spec/dummy/public/uploads/repo_file/file/2651/textfile.txt +1 -0
  645. data/spec/dummy/public/uploads/repo_file/file/2653/textfile.txt +1 -0
  646. data/spec/dummy/public/uploads/repo_file/file/2655/textfile.txt +1 -0
  647. data/spec/dummy/public/uploads/repo_file/file/2657/textfile.txt +1 -0
  648. data/spec/dummy/public/uploads/repo_file/file/2659/textfile.txt +1 -0
  649. data/spec/dummy/public/uploads/repo_file/file/2661/textfile.txt +1 -0
  650. data/spec/dummy/public/uploads/repo_file/file/2663/textfile.txt +1 -0
  651. data/spec/dummy/public/uploads/repo_file/file/2666/textfile.txt +1 -0
  652. data/spec/dummy/public/uploads/repo_file/file/2667/textfile.txt +1 -0
  653. data/spec/dummy/public/uploads/repo_file/file/2669/textfile.txt +1 -0
  654. data/spec/dummy/public/uploads/repo_file/file/2675/textfile.txt +1 -0
  655. data/spec/dummy/public/uploads/repo_file/file/2679/textfile.txt +1 -0
  656. data/spec/dummy/public/uploads/repo_file/file/2680/textfile.txt +1 -0
  657. data/spec/dummy/public/uploads/repo_file/file/2681/textfile.txt +1 -0
  658. data/spec/dummy/public/uploads/repo_file/file/2682/textfile.txt +1 -0
  659. data/spec/dummy/public/uploads/repo_file/file/2683/textfile.txt +1 -0
  660. data/spec/dummy/public/uploads/repo_file/file/2684/textfile.txt +1 -0
  661. data/spec/dummy/public/uploads/repo_file/file/2685/textfile.txt +1 -0
  662. data/spec/dummy/public/uploads/repo_file/file/2686/textfile.txt +1 -0
  663. data/spec/dummy/public/uploads/repo_file/file/2687/textfile.txt +1 -0
  664. data/spec/dummy/public/uploads/repo_file/file/2688/textfile.txt +1 -0
  665. data/spec/dummy/public/uploads/repo_file/file/2697/textfile.txt +1 -0
  666. data/spec/dummy/public/uploads/repo_file/file/2699/textfile.txt +1 -0
  667. data/spec/dummy/public/uploads/repo_file/file/2703/textfile.txt +1 -0
  668. data/spec/dummy/public/uploads/repo_file/file/2706/textfile.txt +1 -0
  669. data/spec/dummy/public/uploads/repo_file/file/2708/textfile.txt +1 -0
  670. data/spec/dummy/public/uploads/repo_file/file/2709/textfile.txt +1 -0
  671. data/spec/dummy/public/uploads/repo_file/file/2711/textfile.txt +1 -0
  672. data/spec/dummy/public/uploads/repo_file/file/2717/textfile.txt +1 -0
  673. data/spec/dummy/public/uploads/repo_file/file/2719/textfile.txt +1 -0
  674. data/spec/dummy/public/uploads/repo_file/file/2721/textfile.txt +1 -0
  675. data/spec/dummy/public/uploads/repo_file/file/2723/textfile.txt +1 -0
  676. data/spec/dummy/public/uploads/repo_file/file/2725/textfile.txt +1 -0
  677. data/spec/dummy/public/uploads/repo_file/file/2727/textfile.txt +1 -0
  678. data/spec/dummy/public/uploads/repo_file/file/2729/textfile.txt +1 -0
  679. data/spec/dummy/public/uploads/repo_file/file/2731/textfile.txt +1 -0
  680. data/spec/dummy/public/uploads/repo_file/file/2733/textfile.txt +1 -0
  681. data/spec/dummy/public/uploads/repo_file/file/2736/textfile.txt +1 -0
  682. data/spec/dummy/public/uploads/repo_file/file/2737/textfile.txt +1 -0
  683. data/spec/dummy/public/uploads/repo_file/file/2739/textfile.txt +1 -0
  684. data/spec/dummy/public/uploads/repo_file/file/2745/textfile.txt +1 -0
  685. data/spec/dummy/public/uploads/repo_file/file/2749/textfile.txt +1 -0
  686. data/spec/dummy/public/uploads/repo_file/file/2750/textfile.txt +1 -0
  687. data/spec/dummy/public/uploads/repo_file/file/2751/textfile.txt +1 -0
  688. data/spec/dummy/public/uploads/repo_file/file/2752/textfile.txt +1 -0
  689. data/spec/dummy/public/uploads/repo_file/file/2753/textfile.txt +1 -0
  690. data/spec/dummy/public/uploads/repo_file/file/2754/textfile.txt +1 -0
  691. data/spec/dummy/public/uploads/repo_file/file/2755/textfile.txt +1 -0
  692. data/spec/dummy/public/uploads/repo_file/file/2756/textfile.txt +1 -0
  693. data/spec/dummy/public/uploads/repo_file/file/2757/textfile.txt +1 -0
  694. data/spec/dummy/public/uploads/repo_file/file/2758/textfile.txt +1 -0
  695. data/spec/dummy/public/uploads/repo_file/file/2767/textfile.txt +1 -0
  696. data/spec/dummy/public/uploads/repo_file/file/2769/textfile.txt +1 -0
  697. data/spec/dummy/public/uploads/repo_file/file/2773/textfile.txt +1 -0
  698. data/spec/dummy/public/uploads/repo_file/file/2776/textfile.txt +1 -0
  699. data/spec/dummy/public/uploads/repo_file/file/2778/textfile.txt +1 -0
  700. data/spec/dummy/public/uploads/repo_file/file/2779/textfile.txt +1 -0
  701. data/spec/dummy/public/uploads/repo_file/file/2781/textfile.txt +1 -0
  702. data/spec/dummy/public/uploads/repo_file/file/2787/textfile.txt +1 -0
  703. data/spec/dummy/public/uploads/repo_file/file/2789/textfile.txt +1 -0
  704. data/spec/dummy/public/uploads/repo_file/file/2791/textfile.txt +1 -0
  705. data/spec/dummy/public/uploads/repo_file/file/2793/textfile.txt +1 -0
  706. data/spec/dummy/public/uploads/repo_file/file/2795/textfile.txt +1 -0
  707. data/spec/dummy/public/uploads/repo_file/file/2797/textfile.txt +1 -0
  708. data/spec/dummy/public/uploads/repo_file/file/2799/textfile.txt +1 -0
  709. data/spec/dummy/public/uploads/repo_file/file/2801/textfile.txt +1 -0
  710. data/spec/dummy/public/uploads/repo_file/file/2803/textfile.txt +1 -0
  711. data/spec/dummy/public/uploads/repo_file/file/2806/textfile.txt +1 -0
  712. data/spec/dummy/public/uploads/repo_file/file/2807/textfile.txt +1 -0
  713. data/spec/dummy/public/uploads/repo_file/file/2809/textfile.txt +1 -0
  714. data/spec/dummy/public/uploads/repo_file/file/2815/textfile.txt +1 -0
  715. data/spec/dummy/public/uploads/repo_file/file/2819/textfile.txt +1 -0
  716. data/spec/dummy/public/uploads/repo_file/file/2820/textfile.txt +1 -0
  717. data/spec/dummy/public/uploads/repo_file/file/2821/textfile.txt +1 -0
  718. data/spec/dummy/public/uploads/repo_file/file/2822/textfile.txt +1 -0
  719. data/spec/dummy/public/uploads/repo_file/file/2823/textfile.txt +1 -0
  720. data/spec/dummy/public/uploads/repo_file/file/2824/textfile.txt +1 -0
  721. data/spec/dummy/public/uploads/repo_file/file/2825/textfile.txt +1 -0
  722. data/spec/dummy/public/uploads/repo_file/file/2826/textfile.txt +1 -0
  723. data/spec/dummy/public/uploads/repo_file/file/2827/textfile.txt +1 -0
  724. data/spec/dummy/public/uploads/repo_file/file/2828/textfile.txt +1 -0
  725. data/spec/dummy/public/uploads/repo_file/file/2837/textfile.txt +1 -0
  726. data/spec/dummy/public/uploads/repo_file/file/2839/textfile.txt +1 -0
  727. data/spec/dummy/public/uploads/repo_file/file/2843/textfile.txt +1 -0
  728. data/spec/dummy/public/uploads/repo_file/file/2846/textfile.txt +1 -0
  729. data/spec/dummy/public/uploads/repo_file/file/2848/textfile.txt +1 -0
  730. data/spec/dummy/public/uploads/repo_file/file/2849/textfile.txt +1 -0
  731. data/spec/dummy/public/uploads/repo_file/file/2851/textfile.txt +1 -0
  732. data/spec/dummy/public/uploads/repo_file/file/2857/textfile.txt +1 -0
  733. data/spec/dummy/public/uploads/repo_file/file/2859/textfile.txt +1 -0
  734. data/spec/dummy/public/uploads/repo_file/file/2861/textfile.txt +1 -0
  735. data/spec/dummy/public/uploads/repo_file/file/2863/textfile.txt +1 -0
  736. data/spec/dummy/public/uploads/repo_file/file/2865/textfile.txt +1 -0
  737. data/spec/dummy/public/uploads/repo_file/file/2867/textfile.txt +1 -0
  738. data/spec/dummy/public/uploads/repo_file/file/2869/textfile.txt +1 -0
  739. data/spec/dummy/public/uploads/repo_file/file/2871/textfile.txt +1 -0
  740. data/spec/dummy/public/uploads/repo_file/file/2873/textfile.txt +1 -0
  741. data/spec/dummy/public/uploads/repo_file/file/2876/textfile.txt +1 -0
  742. data/spec/dummy/public/uploads/repo_file/file/2877/textfile.txt +1 -0
  743. data/spec/dummy/public/uploads/repo_file/file/2879/textfile.txt +1 -0
  744. data/spec/dummy/public/uploads/repo_file/file/2885/textfile.txt +1 -0
  745. data/spec/dummy/public/uploads/repo_file/file/2889/textfile.txt +1 -0
  746. data/spec/dummy/public/uploads/repo_file/file/2890/textfile.txt +1 -0
  747. data/spec/dummy/public/uploads/repo_file/file/2891/textfile.txt +1 -0
  748. data/spec/dummy/public/uploads/repo_file/file/2892/textfile.txt +1 -0
  749. data/spec/dummy/public/uploads/repo_file/file/2893/textfile.txt +1 -0
  750. data/spec/dummy/public/uploads/repo_file/file/2894/textfile.txt +1 -0
  751. data/spec/dummy/public/uploads/repo_file/file/2895/textfile.txt +1 -0
  752. data/spec/dummy/public/uploads/repo_file/file/2896/textfile.txt +1 -0
  753. data/spec/dummy/public/uploads/repo_file/file/2897/textfile.txt +1 -0
  754. data/spec/dummy/public/uploads/repo_file/file/2898/textfile.txt +1 -0
  755. data/spec/dummy/public/uploads/repo_file/file/2907/textfile.txt +1 -0
  756. data/spec/dummy/public/uploads/repo_file/file/2909/textfile.txt +1 -0
  757. data/spec/dummy/public/uploads/repo_file/file/2913/textfile.txt +1 -0
  758. data/spec/dummy/public/uploads/repo_file/file/2916/textfile.txt +1 -0
  759. data/spec/dummy/public/uploads/repo_file/file/2918/textfile.txt +1 -0
  760. data/spec/dummy/public/uploads/repo_file/file/2919/textfile.txt +1 -0
  761. data/spec/dummy/public/uploads/repo_file/file/2921/textfile.txt +1 -0
  762. data/spec/dummy/public/uploads/repo_file/file/2927/textfile.txt +1 -0
  763. data/spec/dummy/public/uploads/repo_file/file/2929/textfile.txt +1 -0
  764. data/spec/dummy/public/uploads/repo_file/file/2931/textfile.txt +1 -0
  765. data/spec/dummy/public/uploads/repo_file/file/2933/textfile.txt +1 -0
  766. data/spec/dummy/public/uploads/repo_file/file/2935/textfile.txt +1 -0
  767. data/spec/dummy/public/uploads/repo_file/file/2937/textfile.txt +1 -0
  768. data/spec/dummy/public/uploads/repo_file/file/2939/textfile.txt +1 -0
  769. data/spec/dummy/public/uploads/repo_file/file/2941/textfile.txt +1 -0
  770. data/spec/dummy/public/uploads/repo_file/file/2943/textfile.txt +1 -0
  771. data/spec/dummy/public/uploads/repo_file/file/2946/textfile.txt +1 -0
  772. data/spec/dummy/public/uploads/repo_file/file/2947/textfile.txt +1 -0
  773. data/spec/dummy/public/uploads/repo_file/file/2949/textfile.txt +1 -0
  774. data/spec/dummy/public/uploads/repo_file/file/2955/textfile.txt +1 -0
  775. data/spec/dummy/public/uploads/repo_file/file/2959/textfile.txt +1 -0
  776. data/spec/dummy/public/uploads/repo_file/file/2960/textfile.txt +1 -0
  777. data/spec/dummy/public/uploads/repo_file/file/2961/textfile.txt +1 -0
  778. data/spec/dummy/public/uploads/repo_file/file/2962/textfile.txt +1 -0
  779. data/spec/dummy/public/uploads/repo_file/file/2963/textfile.txt +1 -0
  780. data/spec/dummy/public/uploads/repo_file/file/2964/textfile.txt +1 -0
  781. data/spec/dummy/public/uploads/repo_file/file/2965/textfile.txt +1 -0
  782. data/spec/dummy/public/uploads/repo_file/file/2966/textfile.txt +1 -0
  783. data/spec/dummy/public/uploads/repo_file/file/2967/textfile.txt +1 -0
  784. data/spec/dummy/public/uploads/repo_file/file/2968/textfile.txt +1 -0
  785. data/spec/dummy/public/uploads/repo_file/file/2977/textfile.txt +1 -0
  786. data/spec/dummy/public/uploads/repo_file/file/2979/textfile.txt +1 -0
  787. data/spec/dummy/public/uploads/repo_file/file/2983/textfile.txt +1 -0
  788. data/spec/dummy/public/uploads/repo_file/file/2986/textfile.txt +1 -0
  789. data/spec/dummy/public/uploads/repo_file/file/2988/textfile.txt +1 -0
  790. data/spec/dummy/public/uploads/repo_file/file/2989/textfile.txt +1 -0
  791. data/spec/dummy/public/uploads/repo_file/file/2991/textfile.txt +1 -0
  792. data/spec/dummy/public/uploads/repo_file/file/2997/textfile.txt +1 -0
  793. data/spec/dummy/public/uploads/repo_file/file/2999/textfile.txt +1 -0
  794. data/spec/dummy/public/uploads/repo_file/file/3001/textfile.txt +1 -0
  795. data/spec/dummy/public/uploads/repo_file/file/3003/textfile.txt +1 -0
  796. data/spec/dummy/public/uploads/repo_file/file/3005/textfile.txt +1 -0
  797. data/spec/dummy/public/uploads/repo_file/file/3007/textfile.txt +1 -0
  798. data/spec/dummy/public/uploads/repo_file/file/3009/textfile.txt +1 -0
  799. data/spec/dummy/public/uploads/repo_file/file/3011/textfile.txt +1 -0
  800. data/spec/dummy/public/uploads/repo_file/file/3013/textfile.txt +1 -0
  801. data/spec/dummy/public/uploads/repo_file/file/3016/textfile.txt +1 -0
  802. data/spec/dummy/public/uploads/repo_file/file/3017/textfile.txt +1 -0
  803. data/spec/dummy/public/uploads/repo_file/file/3019/textfile.txt +1 -0
  804. data/spec/dummy/public/uploads/repo_file/file/3025/textfile.txt +1 -0
  805. data/spec/dummy/public/uploads/repo_file/file/3029/textfile.txt +1 -0
  806. data/spec/dummy/public/uploads/repo_file/file/3030/textfile.txt +1 -0
  807. data/spec/dummy/public/uploads/repo_file/file/3031/textfile.txt +1 -0
  808. data/spec/dummy/public/uploads/repo_file/file/3032/textfile.txt +1 -0
  809. data/spec/dummy/public/uploads/repo_file/file/3033/textfile.txt +1 -0
  810. data/spec/dummy/public/uploads/repo_file/file/3034/textfile.txt +1 -0
  811. data/spec/dummy/public/uploads/repo_file/file/3035/textfile.txt +1 -0
  812. data/spec/dummy/public/uploads/repo_file/file/3036/textfile.txt +1 -0
  813. data/spec/dummy/public/uploads/repo_file/file/3037/textfile.txt +1 -0
  814. data/spec/dummy/public/uploads/repo_file/file/3038/textfile.txt +1 -0
  815. data/spec/dummy/public/uploads/repo_file/file/3047/textfile.txt +1 -0
  816. data/spec/dummy/public/uploads/repo_file/file/3049/textfile.txt +1 -0
  817. data/spec/dummy/public/uploads/repo_file/file/3053/textfile.txt +1 -0
  818. data/spec/dummy/public/uploads/repo_file/file/3056/textfile.txt +1 -0
  819. data/spec/dummy/public/uploads/repo_file/file/3058/textfile.txt +1 -0
  820. data/spec/dummy/public/uploads/repo_file/file/3059/textfile.txt +1 -0
  821. data/spec/dummy/public/uploads/repo_file/file/3061/textfile.txt +1 -0
  822. data/spec/dummy/public/uploads/repo_file/file/3067/textfile.txt +1 -0
  823. data/spec/dummy/public/uploads/repo_file/file/3069/textfile.txt +1 -0
  824. data/spec/dummy/public/uploads/repo_file/file/3071/textfile.txt +1 -0
  825. data/spec/dummy/public/uploads/repo_file/file/3073/textfile.txt +1 -0
  826. data/spec/dummy/public/uploads/repo_file/file/3075/textfile.txt +1 -0
  827. data/spec/dummy/public/uploads/repo_file/file/3077/textfile.txt +1 -0
  828. data/spec/dummy/public/uploads/repo_file/file/3079/textfile.txt +1 -0
  829. data/spec/dummy/public/uploads/repo_file/file/3081/textfile.txt +1 -0
  830. data/spec/dummy/public/uploads/repo_file/file/3083/textfile.txt +1 -0
  831. data/spec/dummy/public/uploads/repo_file/file/3086/textfile.txt +1 -0
  832. data/spec/dummy/public/uploads/repo_file/file/3087/textfile.txt +1 -0
  833. data/spec/dummy/public/uploads/repo_file/file/3089/textfile.txt +1 -0
  834. data/spec/dummy/public/uploads/repo_file/file/3095/textfile.txt +1 -0
  835. data/spec/dummy/public/uploads/repo_file/file/3099/textfile.txt +1 -0
  836. data/spec/dummy/public/uploads/repo_file/file/3100/textfile.txt +1 -0
  837. data/spec/dummy/public/uploads/repo_file/file/3101/textfile.txt +1 -0
  838. data/spec/dummy/public/uploads/repo_file/file/3102/textfile.txt +1 -0
  839. data/spec/dummy/public/uploads/repo_file/file/3103/textfile.txt +1 -0
  840. data/spec/dummy/public/uploads/repo_file/file/3104/textfile.txt +1 -0
  841. data/spec/dummy/public/uploads/repo_file/file/3105/textfile.txt +1 -0
  842. data/spec/dummy/public/uploads/repo_file/file/3106/textfile.txt +1 -0
  843. data/spec/dummy/public/uploads/repo_file/file/3107/textfile.txt +1 -0
  844. data/spec/dummy/public/uploads/repo_file/file/3108/textfile.txt +1 -0
  845. data/spec/dummy/public/uploads/repo_file/file/3117/textfile.txt +1 -0
  846. data/spec/dummy/public/uploads/repo_file/file/3119/textfile.txt +1 -0
  847. data/spec/dummy/public/uploads/repo_file/file/3123/textfile.txt +1 -0
  848. data/spec/dummy/public/uploads/repo_file/file/3126/textfile.txt +1 -0
  849. data/spec/dummy/public/uploads/repo_file/file/3128/textfile.txt +1 -0
  850. data/spec/dummy/public/uploads/repo_file/file/3129/textfile.txt +1 -0
  851. data/spec/dummy/public/uploads/repo_file/file/3131/textfile.txt +1 -0
  852. data/spec/dummy/public/uploads/repo_file/file/3137/textfile.txt +1 -0
  853. data/spec/dummy/public/uploads/repo_file/file/3139/textfile.txt +1 -0
  854. data/spec/dummy/public/uploads/repo_file/file/3141/textfile.txt +1 -0
  855. data/spec/dummy/public/uploads/repo_file/file/3143/textfile.txt +1 -0
  856. data/spec/dummy/public/uploads/repo_file/file/3145/textfile.txt +1 -0
  857. data/spec/dummy/public/uploads/repo_file/file/3147/textfile.txt +1 -0
  858. data/spec/dummy/public/uploads/repo_file/file/3149/textfile.txt +1 -0
  859. data/spec/dummy/public/uploads/repo_file/file/3151/textfile.txt +1 -0
  860. data/spec/dummy/public/uploads/repo_file/file/3153/textfile.txt +1 -0
  861. data/spec/dummy/public/uploads/repo_file/file/3156/textfile.txt +1 -0
  862. data/spec/dummy/public/uploads/repo_file/file/3157/textfile.txt +1 -0
  863. data/spec/dummy/public/uploads/repo_file/file/3159/textfile.txt +1 -0
  864. data/spec/dummy/public/uploads/repo_file/file/3165/textfile.txt +1 -0
  865. data/spec/dummy/public/uploads/repo_file/file/3169/textfile.txt +1 -0
  866. data/spec/dummy/public/uploads/repo_file/file/3170/textfile.txt +1 -0
  867. data/spec/dummy/public/uploads/repo_file/file/3171/textfile.txt +1 -0
  868. data/spec/dummy/public/uploads/repo_file/file/3172/textfile.txt +1 -0
  869. data/spec/dummy/public/uploads/repo_file/file/3173/textfile.txt +1 -0
  870. data/spec/dummy/public/uploads/repo_file/file/3174/textfile.txt +1 -0
  871. data/spec/dummy/public/uploads/repo_file/file/3175/textfile.txt +1 -0
  872. data/spec/dummy/public/uploads/repo_file/file/3176/textfile.txt +1 -0
  873. data/spec/dummy/public/uploads/repo_file/file/3177/textfile.txt +1 -0
  874. data/spec/dummy/public/uploads/repo_file/file/3178/textfile.txt +1 -0
  875. data/spec/dummy/public/uploads/repo_file/file/3187/textfile.txt +1 -0
  876. data/spec/dummy/public/uploads/repo_file/file/3189/textfile.txt +1 -0
  877. data/spec/dummy/public/uploads/repo_file/file/3193/textfile.txt +1 -0
  878. data/spec/dummy/public/uploads/repo_file/file/3196/textfile.txt +1 -0
  879. data/spec/dummy/public/uploads/repo_file/file/3198/textfile.txt +1 -0
  880. data/spec/dummy/public/uploads/repo_file/file/3199/textfile.txt +1 -0
  881. data/spec/dummy/public/uploads/repo_file/file/3201/textfile.txt +1 -0
  882. data/spec/dummy/public/uploads/repo_file/file/3207/textfile.txt +1 -0
  883. data/spec/dummy/public/uploads/repo_file/file/3209/textfile.txt +1 -0
  884. data/spec/dummy/public/uploads/repo_file/file/3211/textfile.txt +1 -0
  885. data/spec/dummy/public/uploads/repo_file/file/3213/textfile.txt +1 -0
  886. data/spec/dummy/public/uploads/repo_file/file/3215/textfile.txt +1 -0
  887. data/spec/dummy/public/uploads/repo_file/file/3217/textfile.txt +1 -0
  888. data/spec/dummy/public/uploads/repo_file/file/3219/textfile.txt +1 -0
  889. data/spec/dummy/public/uploads/repo_file/file/3221/textfile.txt +1 -0
  890. data/spec/dummy/public/uploads/repo_file/file/3223/textfile.txt +1 -0
  891. data/spec/dummy/public/uploads/repo_file/file/3226/textfile.txt +1 -0
  892. data/spec/dummy/public/uploads/repo_file/file/3227/textfile.txt +1 -0
  893. data/spec/dummy/public/uploads/repo_file/file/3229/textfile.txt +1 -0
  894. data/spec/dummy/public/uploads/repo_file/file/3235/textfile.txt +1 -0
  895. data/spec/dummy/public/uploads/repo_file/file/3239/textfile.txt +1 -0
  896. data/spec/dummy/public/uploads/repo_file/file/3240/textfile.txt +1 -0
  897. data/spec/dummy/public/uploads/repo_file/file/3241/textfile.txt +1 -0
  898. data/spec/dummy/public/uploads/repo_file/file/3242/textfile.txt +1 -0
  899. data/spec/dummy/public/uploads/repo_file/file/3243/textfile.txt +1 -0
  900. data/spec/dummy/public/uploads/repo_file/file/3244/textfile.txt +1 -0
  901. data/spec/dummy/public/uploads/repo_file/file/3245/textfile.txt +1 -0
  902. data/spec/dummy/public/uploads/repo_file/file/3246/textfile.txt +1 -0
  903. data/spec/dummy/public/uploads/repo_file/file/3247/textfile.txt +1 -0
  904. data/spec/dummy/public/uploads/repo_file/file/3248/textfile.txt +1 -0
  905. data/spec/dummy/public/uploads/repo_file/file/3257/textfile.txt +1 -0
  906. data/spec/dummy/public/uploads/repo_file/file/3259/textfile.txt +1 -0
  907. data/spec/dummy/public/uploads/repo_file/file/3263/textfile.txt +1 -0
  908. data/spec/dummy/public/uploads/repo_file/file/3266/textfile.txt +1 -0
  909. data/spec/dummy/public/uploads/repo_file/file/3268/textfile.txt +1 -0
  910. data/spec/dummy/public/uploads/repo_file/file/3269/textfile.txt +1 -0
  911. data/spec/dummy/public/uploads/repo_file/file/3271/textfile.txt +1 -0
  912. data/spec/dummy/public/uploads/repo_file/file/3277/textfile.txt +1 -0
  913. data/spec/dummy/public/uploads/repo_file/file/3279/textfile.txt +1 -0
  914. data/spec/dummy/public/uploads/repo_file/file/3281/textfile.txt +1 -0
  915. data/spec/dummy/public/uploads/repo_file/file/3283/textfile.txt +1 -0
  916. data/spec/dummy/public/uploads/repo_file/file/3285/textfile.txt +1 -0
  917. data/spec/dummy/public/uploads/repo_file/file/3287/textfile.txt +1 -0
  918. data/spec/dummy/public/uploads/repo_file/file/3289/textfile.txt +1 -0
  919. data/spec/dummy/public/uploads/repo_file/file/3291/textfile.txt +1 -0
  920. data/spec/dummy/public/uploads/repo_file/file/3293/textfile.txt +1 -0
  921. data/spec/dummy/public/uploads/repo_file/file/3296/textfile.txt +1 -0
  922. data/spec/dummy/public/uploads/repo_file/file/3297/textfile.txt +1 -0
  923. data/spec/dummy/public/uploads/repo_file/file/3299/textfile.txt +1 -0
  924. data/spec/dummy/public/uploads/repo_file/file/3305/textfile.txt +1 -0
  925. data/spec/dummy/public/uploads/repo_file/file/3309/textfile.txt +1 -0
  926. data/spec/dummy/public/uploads/repo_file/file/3310/textfile.txt +1 -0
  927. data/spec/dummy/public/uploads/repo_file/file/3311/textfile.txt +1 -0
  928. data/spec/dummy/public/uploads/repo_file/file/3312/textfile.txt +1 -0
  929. data/spec/dummy/public/uploads/repo_file/file/3313/textfile.txt +1 -0
  930. data/spec/dummy/public/uploads/repo_file/file/3314/textfile.txt +1 -0
  931. data/spec/dummy/public/uploads/repo_file/file/3315/textfile.txt +1 -0
  932. data/spec/dummy/public/uploads/repo_file/file/3316/textfile.txt +1 -0
  933. data/spec/dummy/public/uploads/repo_file/file/3317/textfile.txt +1 -0
  934. data/spec/dummy/public/uploads/repo_file/file/3318/textfile.txt +1 -0
  935. data/spec/dummy/public/uploads/repo_file/file/3327/textfile.txt +1 -0
  936. data/spec/dummy/public/uploads/repo_file/file/3329/textfile.txt +1 -0
  937. data/spec/dummy/public/uploads/repo_file/file/3333/textfile.txt +1 -0
  938. data/spec/dummy/public/uploads/repo_file/file/3336/textfile.txt +1 -0
  939. data/spec/dummy/public/uploads/repo_file/file/3338/textfile.txt +1 -0
  940. data/spec/dummy/public/uploads/repo_file/file/3339/textfile.txt +1 -0
  941. data/spec/dummy/public/uploads/repo_file/file/3341/textfile.txt +1 -0
  942. data/spec/dummy/public/uploads/repo_file/file/3347/textfile.txt +1 -0
  943. data/spec/dummy/public/uploads/repo_file/file/3349/textfile.txt +1 -0
  944. data/spec/dummy/public/uploads/repo_file/file/3351/textfile.txt +1 -0
  945. data/spec/dummy/public/uploads/repo_file/file/3353/textfile.txt +1 -0
  946. data/spec/dummy/public/uploads/repo_file/file/3355/textfile.txt +1 -0
  947. data/spec/dummy/public/uploads/repo_file/file/3357/textfile.txt +1 -0
  948. data/spec/dummy/public/uploads/repo_file/file/3359/textfile.txt +1 -0
  949. data/spec/dummy/public/uploads/repo_file/file/3361/textfile.txt +1 -0
  950. data/spec/dummy/public/uploads/repo_file/file/3363/textfile.txt +1 -0
  951. data/spec/dummy/public/uploads/repo_file/file/3366/textfile.txt +1 -0
  952. data/spec/dummy/public/uploads/repo_file/file/3367/textfile.txt +1 -0
  953. data/spec/dummy/public/uploads/repo_file/file/3369/textfile.txt +1 -0
  954. data/spec/dummy/public/uploads/repo_file/file/3375/textfile.txt +1 -0
  955. data/spec/dummy/public/uploads/repo_file/file/3379/textfile.txt +1 -0
  956. data/spec/dummy/public/uploads/repo_file/file/3380/textfile.txt +1 -0
  957. data/spec/dummy/public/uploads/repo_file/file/3381/textfile.txt +1 -0
  958. data/spec/dummy/public/uploads/repo_file/file/3382/textfile.txt +1 -0
  959. data/spec/dummy/public/uploads/repo_file/file/3383/textfile.txt +1 -0
  960. data/spec/dummy/public/uploads/repo_file/file/3384/textfile.txt +1 -0
  961. data/spec/dummy/public/uploads/repo_file/file/3385/textfile.txt +1 -0
  962. data/spec/dummy/public/uploads/repo_file/file/3386/textfile.txt +1 -0
  963. data/spec/dummy/public/uploads/repo_file/file/3387/textfile.txt +1 -0
  964. data/spec/dummy/public/uploads/repo_file/file/3388/textfile.txt +1 -0
  965. data/spec/dummy/public/uploads/repo_file/file/3397/textfile.txt +1 -0
  966. data/spec/dummy/public/uploads/repo_file/file/3399/textfile.txt +1 -0
  967. data/spec/dummy/public/uploads/repo_file/file/3403/textfile.txt +1 -0
  968. data/spec/dummy/public/uploads/repo_file/file/3406/textfile.txt +1 -0
  969. data/spec/dummy/public/uploads/repo_file/file/3408/textfile.txt +1 -0
  970. data/spec/dummy/public/uploads/repo_file/file/3409/textfile.txt +1 -0
  971. data/spec/dummy/public/uploads/repo_file/file/3411/textfile.txt +1 -0
  972. data/spec/dummy/public/uploads/repo_file/file/3417/textfile.txt +1 -0
  973. data/spec/dummy/public/uploads/repo_file/file/3419/textfile.txt +1 -0
  974. data/spec/dummy/public/uploads/repo_file/file/3421/textfile.txt +1 -0
  975. data/spec/dummy/public/uploads/repo_file/file/3423/textfile.txt +1 -0
  976. data/spec/dummy/public/uploads/repo_file/file/3425/textfile.txt +1 -0
  977. data/spec/dummy/public/uploads/repo_file/file/3427/textfile.txt +1 -0
  978. data/spec/dummy/public/uploads/repo_file/file/3429/textfile.txt +1 -0
  979. data/spec/dummy/public/uploads/repo_file/file/3431/textfile.txt +1 -0
  980. data/spec/dummy/public/uploads/repo_file/file/3433/textfile.txt +1 -0
  981. data/spec/dummy/public/uploads/repo_file/file/3436/textfile.txt +1 -0
  982. data/spec/dummy/public/uploads/repo_file/file/3437/textfile.txt +1 -0
  983. data/spec/dummy/public/uploads/repo_file/file/3439/textfile.txt +1 -0
  984. data/spec/dummy/public/uploads/repo_file/file/3445/textfile.txt +1 -0
  985. data/spec/dummy/public/uploads/repo_file/file/3449/textfile.txt +1 -0
  986. data/spec/dummy/public/uploads/repo_file/file/3450/textfile.txt +1 -0
  987. data/spec/dummy/public/uploads/repo_file/file/3451/textfile.txt +1 -0
  988. data/spec/dummy/public/uploads/repo_file/file/3452/textfile.txt +1 -0
  989. data/spec/dummy/public/uploads/repo_file/file/3453/textfile.txt +1 -0
  990. data/spec/dummy/public/uploads/repo_file/file/3454/textfile.txt +1 -0
  991. data/spec/dummy/public/uploads/repo_file/file/3455/textfile.txt +1 -0
  992. data/spec/dummy/public/uploads/repo_file/file/3456/textfile.txt +1 -0
  993. data/spec/dummy/public/uploads/repo_file/file/3457/textfile.txt +1 -0
  994. data/spec/dummy/public/uploads/repo_file/file/3458/textfile.txt +1 -0
  995. data/spec/dummy/public/uploads/repo_file/file/3467/textfile.txt +1 -0
  996. data/spec/dummy/public/uploads/repo_file/file/3469/textfile.txt +1 -0
  997. data/spec/dummy/public/uploads/repo_file/file/3473/textfile.txt +1 -0
  998. data/spec/dummy/public/uploads/repo_file/file/3476/textfile.txt +1 -0
  999. data/spec/dummy/public/uploads/repo_file/file/3478/textfile.txt +1 -0
  1000. data/spec/dummy/public/uploads/repo_file/file/3479/textfile.txt +1 -0
  1001. data/spec/dummy/public/uploads/repo_file/file/3481/textfile.txt +1 -0
  1002. data/spec/dummy/public/uploads/repo_file/file/3487/textfile.txt +1 -0
  1003. data/spec/dummy/public/uploads/repo_file/file/3489/textfile.txt +1 -0
  1004. data/spec/dummy/public/uploads/repo_file/file/3491/textfile.txt +1 -0
  1005. data/spec/dummy/public/uploads/repo_file/file/3493/textfile.txt +1 -0
  1006. data/spec/dummy/public/uploads/repo_file/file/3495/textfile.txt +1 -0
  1007. data/spec/dummy/public/uploads/repo_file/file/3497/textfile.txt +1 -0
  1008. data/spec/dummy/public/uploads/repo_file/file/3499/textfile.txt +1 -0
  1009. data/spec/dummy/public/uploads/repo_file/file/3501/textfile.txt +1 -0
  1010. data/spec/dummy/public/uploads/repo_file/file/3503/textfile.txt +1 -0
  1011. data/spec/dummy/public/uploads/repo_file/file/3506/textfile.txt +1 -0
  1012. data/spec/dummy/public/uploads/repo_file/file/3507/textfile.txt +1 -0
  1013. data/spec/dummy/public/uploads/repo_file/file/3509/textfile.txt +1 -0
  1014. data/spec/dummy/public/uploads/repo_file/file/3515/textfile.txt +1 -0
  1015. data/spec/dummy/public/uploads/repo_file/file/3518/textfile.txt +1 -0
  1016. data/spec/dummy/public/uploads/repo_file/file/3519/textfile.txt +1 -0
  1017. data/spec/dummy/public/uploads/repo_file/file/3520/textfile.txt +1 -0
  1018. data/spec/dummy/public/uploads/repo_file/file/3521/textfile.txt +1 -0
  1019. data/spec/dummy/public/uploads/repo_file/file/3522/textfile.txt +1 -0
  1020. data/spec/dummy/public/uploads/repo_file/file/3523/textfile.txt +1 -0
  1021. data/spec/dummy/public/uploads/repo_file/file/3524/textfile.txt +1 -0
  1022. data/spec/dummy/public/uploads/repo_file/file/3525/textfile.txt +1 -0
  1023. data/spec/dummy/public/uploads/repo_file/file/3526/textfile.txt +1 -0
  1024. data/spec/dummy/public/uploads/repo_file/file/3527/textfile.txt +1 -0
  1025. data/spec/dummy/public/uploads/repo_file/file/3536/textfile.txt +1 -0
  1026. data/spec/dummy/public/uploads/repo_file/file/3538/textfile.txt +1 -0
  1027. data/spec/dummy/public/uploads/repo_file/file/3542/textfile.txt +1 -0
  1028. data/spec/dummy/public/uploads/repo_file/file/3545/textfile.txt +1 -0
  1029. data/spec/dummy/public/uploads/repo_file/file/3547/textfile.txt +1 -0
  1030. data/spec/dummy/public/uploads/repo_file/file/3548/textfile.txt +1 -0
  1031. data/spec/dummy/public/uploads/repo_file/file/3550/textfile.txt +1 -0
  1032. data/spec/dummy/public/uploads/repo_file/file/3556/textfile.txt +1 -0
  1033. data/spec/dummy/public/uploads/repo_file/file/3558/textfile.txt +1 -0
  1034. data/spec/dummy/public/uploads/repo_file/file/3560/textfile.txt +1 -0
  1035. data/spec/dummy/public/uploads/repo_file/file/3562/textfile.txt +1 -0
  1036. data/spec/dummy/public/uploads/repo_file/file/3564/textfile.txt +1 -0
  1037. data/spec/dummy/public/uploads/repo_file/file/3566/textfile.txt +1 -0
  1038. data/spec/dummy/public/uploads/repo_file/file/3568/textfile.txt +1 -0
  1039. data/spec/dummy/public/uploads/repo_file/file/3570/textfile.txt +1 -0
  1040. data/spec/dummy/public/uploads/repo_file/file/3572/textfile.txt +1 -0
  1041. data/spec/dummy/public/uploads/repo_file/file/3575/textfile.txt +1 -0
  1042. data/spec/dummy/public/uploads/repo_file/file/3576/textfile.txt +1 -0
  1043. data/spec/dummy/public/uploads/repo_file/file/3578/textfile.txt +1 -0
  1044. data/spec/dummy/public/uploads/repo_file/file/3584/textfile.txt +1 -0
  1045. data/spec/dummy/public/uploads/repo_file/file/3587/textfile.txt +1 -0
  1046. data/spec/dummy/public/uploads/repo_file/file/3588/textfile.txt +1 -0
  1047. data/spec/dummy/public/uploads/repo_file/file/3589/textfile.txt +1 -0
  1048. data/spec/dummy/public/uploads/repo_file/file/3590/textfile.txt +1 -0
  1049. data/spec/dummy/public/uploads/repo_file/file/3591/textfile.txt +1 -0
  1050. data/spec/dummy/public/uploads/repo_file/file/3592/textfile.txt +1 -0
  1051. data/spec/dummy/public/uploads/repo_file/file/3593/textfile.txt +1 -0
  1052. data/spec/dummy/public/uploads/repo_file/file/3594/textfile.txt +1 -0
  1053. data/spec/dummy/public/uploads/repo_file/file/3595/textfile.txt +1 -0
  1054. data/spec/dummy/public/uploads/repo_file/file/3596/textfile.txt +1 -0
  1055. data/spec/dummy/public/uploads/repo_file/file/3605/textfile.txt +1 -0
  1056. data/spec/dummy/public/uploads/repo_file/file/3607/textfile.txt +1 -0
  1057. data/spec/dummy/public/uploads/repo_file/file/3611/textfile.txt +1 -0
  1058. data/spec/dummy/public/uploads/repo_file/file/3614/textfile.txt +1 -0
  1059. data/spec/dummy/public/uploads/repo_file/file/3616/textfile.txt +1 -0
  1060. data/spec/dummy/public/uploads/repo_file/file/3617/textfile.txt +1 -0
  1061. data/spec/dummy/public/uploads/repo_file/file/3619/textfile.txt +1 -0
  1062. data/spec/dummy/public/uploads/repo_file/file/3625/textfile.txt +1 -0
  1063. data/spec/dummy/public/uploads/repo_file/file/3627/textfile.txt +1 -0
  1064. data/spec/dummy/public/uploads/repo_file/file/3629/textfile.txt +1 -0
  1065. data/spec/dummy/public/uploads/repo_file/file/3631/textfile.txt +1 -0
  1066. data/spec/dummy/public/uploads/repo_file/file/3633/textfile.txt +1 -0
  1067. data/spec/dummy/public/uploads/repo_file/file/3635/textfile.txt +1 -0
  1068. data/spec/dummy/public/uploads/repo_file/file/3637/textfile.txt +1 -0
  1069. data/spec/dummy/public/uploads/repo_file/file/3639/textfile.txt +1 -0
  1070. data/spec/dummy/public/uploads/repo_file/file/3641/textfile.txt +1 -0
  1071. data/spec/dummy/public/uploads/repo_file/file/3644/textfile.txt +1 -0
  1072. data/spec/dummy/public/uploads/repo_file/file/3645/textfile.txt +1 -0
  1073. data/spec/dummy/public/uploads/repo_file/file/3647/textfile.txt +1 -0
  1074. data/spec/dummy/public/uploads/repo_file/file/3653/textfile.txt +1 -0
  1075. data/spec/dummy/public/uploads/repo_file/file/3656/textfile.txt +1 -0
  1076. data/spec/dummy/public/uploads/repo_file/file/3657/textfile.txt +1 -0
  1077. data/spec/dummy/public/uploads/repo_file/file/3658/textfile.txt +1 -0
  1078. data/spec/dummy/public/uploads/repo_file/file/3659/textfile.txt +1 -0
  1079. data/spec/dummy/public/uploads/repo_file/file/3660/textfile.txt +1 -0
  1080. data/spec/dummy/public/uploads/repo_file/file/3661/textfile.txt +1 -0
  1081. data/spec/dummy/public/uploads/repo_file/file/3662/textfile.txt +1 -0
  1082. data/spec/dummy/public/uploads/repo_file/file/3663/textfile.txt +1 -0
  1083. data/spec/dummy/public/uploads/repo_file/file/3664/textfile.txt +1 -0
  1084. data/spec/dummy/public/uploads/repo_file/file/3665/textfile.txt +1 -0
  1085. data/spec/dummy/public/uploads/repo_file/file/3674/textfile.txt +1 -0
  1086. data/spec/dummy/public/uploads/repo_file/file/3676/textfile.txt +1 -0
  1087. data/spec/dummy/public/uploads/repo_file/file/3680/textfile.txt +1 -0
  1088. data/spec/dummy/public/uploads/repo_file/file/3683/textfile.txt +1 -0
  1089. data/spec/dummy/public/uploads/repo_file/file/3685/textfile.txt +1 -0
  1090. data/spec/dummy/public/uploads/repo_file/file/3686/textfile.txt +1 -0
  1091. data/spec/dummy/public/uploads/repo_file/file/3688/textfile.txt +1 -0
  1092. data/spec/dummy/public/uploads/repo_file/file/3694/textfile.txt +1 -0
  1093. data/spec/dummy/public/uploads/repo_file/file/3696/textfile.txt +1 -0
  1094. data/spec/dummy/public/uploads/repo_file/file/3698/textfile.txt +1 -0
  1095. data/spec/dummy/public/uploads/repo_file/file/3700/textfile.txt +1 -0
  1096. data/spec/dummy/public/uploads/repo_file/file/3702/textfile.txt +1 -0
  1097. data/spec/dummy/public/uploads/repo_file/file/3704/textfile.txt +1 -0
  1098. data/spec/dummy/public/uploads/repo_file/file/3706/textfile.txt +1 -0
  1099. data/spec/dummy/public/uploads/repo_file/file/3708/textfile.txt +1 -0
  1100. data/spec/dummy/public/uploads/repo_file/file/3710/textfile.txt +1 -0
  1101. data/spec/dummy/public/uploads/repo_file/file/3713/textfile.txt +1 -0
  1102. data/spec/dummy/public/uploads/repo_file/file/3714/textfile.txt +1 -0
  1103. data/spec/dummy/public/uploads/repo_file/file/3716/textfile.txt +1 -0
  1104. data/spec/dummy/public/uploads/repo_file/file/3722/textfile.txt +1 -0
  1105. data/spec/dummy/public/uploads/repo_file/file/3725/textfile.txt +1 -0
  1106. data/spec/dummy/public/uploads/repo_file/file/3726/textfile.txt +1 -0
  1107. data/spec/dummy/public/uploads/repo_file/file/3727/textfile.txt +1 -0
  1108. data/spec/dummy/public/uploads/repo_file/file/3728/textfile.txt +1 -0
  1109. data/spec/dummy/public/uploads/repo_file/file/3729/textfile.txt +1 -0
  1110. data/spec/dummy/public/uploads/repo_file/file/3730/textfile.txt +1 -0
  1111. data/spec/dummy/public/uploads/repo_file/file/3731/textfile.txt +1 -0
  1112. data/spec/dummy/public/uploads/repo_file/file/3732/textfile.txt +1 -0
  1113. data/spec/dummy/public/uploads/repo_file/file/3733/textfile.txt +1 -0
  1114. data/spec/dummy/public/uploads/repo_file/file/3734/textfile.txt +1 -0
  1115. data/spec/dummy/public/uploads/repo_file/file/3743/textfile.txt +1 -0
  1116. data/spec/dummy/public/uploads/repo_file/file/3745/textfile.txt +1 -0
  1117. data/spec/dummy/public/uploads/repo_file/file/3749/textfile.txt +1 -0
  1118. data/spec/dummy/public/uploads/repo_file/file/3752/textfile.txt +1 -0
  1119. data/spec/dummy/public/uploads/repo_file/file/3754/textfile.txt +1 -0
  1120. data/spec/dummy/public/uploads/repo_file/file/3755/textfile.txt +1 -0
  1121. data/spec/dummy/public/uploads/repo_file/file/3757/textfile.txt +1 -0
  1122. data/spec/dummy/public/uploads/repo_file/file/3763/textfile.txt +1 -0
  1123. data/spec/dummy/public/uploads/repo_file/file/3765/textfile.txt +1 -0
  1124. data/spec/dummy/public/uploads/repo_file/file/3767/textfile.txt +1 -0
  1125. data/spec/dummy/public/uploads/repo_file/file/3769/textfile.txt +1 -0
  1126. data/spec/dummy/public/uploads/repo_file/file/3771/textfile.txt +1 -0
  1127. data/spec/dummy/public/uploads/repo_file/file/3773/textfile.txt +1 -0
  1128. data/spec/dummy/public/uploads/repo_file/file/3775/textfile.txt +1 -0
  1129. data/spec/dummy/public/uploads/repo_file/file/3777/textfile.txt +1 -0
  1130. data/spec/dummy/public/uploads/repo_file/file/3779/textfile.txt +1 -0
  1131. data/spec/dummy/public/uploads/repo_file/file/3782/textfile.txt +1 -0
  1132. data/spec/dummy/public/uploads/repo_file/file/3783/textfile.txt +1 -0
  1133. data/spec/dummy/public/uploads/repo_file/file/3785/textfile.txt +1 -0
  1134. data/spec/dummy/public/uploads/repo_file/file/3791/textfile.txt +1 -0
  1135. data/spec/dummy/public/uploads/repo_file/file/3795/textfile.txt +1 -0
  1136. data/spec/dummy/public/uploads/repo_file/file/3796/textfile.txt +1 -0
  1137. data/spec/dummy/public/uploads/repo_file/file/3797/textfile.txt +1 -0
  1138. data/spec/dummy/public/uploads/repo_file/file/3798/textfile.txt +1 -0
  1139. data/spec/dummy/public/uploads/repo_file/file/3799/textfile.txt +1 -0
  1140. data/spec/dummy/public/uploads/repo_file/file/3800/textfile.txt +1 -0
  1141. data/spec/dummy/public/uploads/repo_file/file/3801/textfile.txt +1 -0
  1142. data/spec/dummy/public/uploads/repo_file/file/3802/textfile.txt +1 -0
  1143. data/spec/dummy/public/uploads/repo_file/file/3803/textfile.txt +1 -0
  1144. data/spec/dummy/public/uploads/repo_file/file/3804/textfile.txt +1 -0
  1145. data/spec/dummy/public/uploads/repo_file/file/3813/textfile.txt +1 -0
  1146. data/spec/dummy/public/uploads/repo_file/file/3815/textfile.txt +1 -0
  1147. data/spec/dummy/public/uploads/repo_file/file/3819/textfile.txt +1 -0
  1148. data/spec/dummy/public/uploads/repo_file/file/3822/textfile.txt +1 -0
  1149. data/spec/dummy/public/uploads/repo_file/file/3824/textfile.txt +1 -0
  1150. data/spec/dummy/public/uploads/repo_file/file/3825/textfile.txt +1 -0
  1151. data/spec/dummy/public/uploads/repo_file/file/3827/textfile.txt +1 -0
  1152. data/spec/dummy/public/uploads/repo_file/file/3833/textfile.txt +1 -0
  1153. data/spec/dummy/public/uploads/repo_file/file/3835/textfile.txt +1 -0
  1154. data/spec/dummy/public/uploads/repo_file/file/3837/textfile.txt +1 -0
  1155. data/spec/dummy/public/uploads/repo_file/file/3839/textfile.txt +1 -0
  1156. data/spec/dummy/public/uploads/repo_file/file/3841/textfile.txt +1 -0
  1157. data/spec/dummy/public/uploads/repo_file/file/3843/textfile.txt +1 -0
  1158. data/spec/dummy/public/uploads/repo_file/file/3845/textfile.txt +1 -0
  1159. data/spec/dummy/public/uploads/repo_file/file/3847/textfile.txt +1 -0
  1160. data/spec/dummy/public/uploads/repo_file/file/3849/textfile.txt +1 -0
  1161. data/spec/dummy/public/uploads/repo_file/file/3852/textfile.txt +1 -0
  1162. data/spec/dummy/public/uploads/repo_file/file/3853/textfile.txt +1 -0
  1163. data/spec/dummy/public/uploads/repo_file/file/3855/textfile.txt +1 -0
  1164. data/spec/dummy/public/uploads/repo_file/file/3861/textfile.txt +1 -0
  1165. data/spec/dummy/public/uploads/repo_file/file/3865/textfile.txt +1 -0
  1166. data/spec/dummy/public/uploads/repo_file/file/3866/textfile.txt +1 -0
  1167. data/spec/dummy/public/uploads/repo_file/file/3867/textfile.txt +1 -0
  1168. data/spec/dummy/public/uploads/repo_file/file/3868/textfile.txt +1 -0
  1169. data/spec/dummy/public/uploads/repo_file/file/3869/textfile.txt +1 -0
  1170. data/spec/dummy/public/uploads/repo_file/file/3870/textfile.txt +1 -0
  1171. data/spec/dummy/public/uploads/repo_file/file/3871/textfile.txt +1 -0
  1172. data/spec/dummy/public/uploads/repo_file/file/3872/textfile.txt +1 -0
  1173. data/spec/dummy/public/uploads/repo_file/file/3873/textfile.txt +1 -0
  1174. data/spec/dummy/public/uploads/repo_file/file/3874/textfile.txt +1 -0
  1175. data/spec/dummy/public/uploads/repo_file/file/3883/textfile.txt +1 -0
  1176. data/spec/dummy/public/uploads/repo_file/file/3885/textfile.txt +1 -0
  1177. data/spec/dummy/public/uploads/repo_file/file/3889/textfile.txt +1 -0
  1178. data/spec/dummy/public/uploads/repo_file/file/3892/textfile.txt +1 -0
  1179. data/spec/dummy/public/uploads/repo_file/file/3894/textfile.txt +1 -0
  1180. data/spec/dummy/public/uploads/repo_file/file/3895/textfile.txt +1 -0
  1181. data/spec/dummy/public/uploads/repo_file/file/3897/textfile.txt +1 -0
  1182. data/spec/dummy/public/uploads/repo_file/file/3903/textfile.txt +1 -0
  1183. data/spec/dummy/public/uploads/repo_file/file/3905/textfile.txt +1 -0
  1184. data/spec/dummy/public/uploads/repo_file/file/3907/textfile.txt +1 -0
  1185. data/spec/dummy/public/uploads/repo_file/file/3909/textfile.txt +1 -0
  1186. data/spec/dummy/public/uploads/repo_file/file/3911/textfile.txt +1 -0
  1187. data/spec/dummy/public/uploads/repo_file/file/3913/textfile.txt +1 -0
  1188. data/spec/dummy/public/uploads/repo_file/file/3915/textfile.txt +1 -0
  1189. data/spec/dummy/public/uploads/repo_file/file/3917/textfile.txt +1 -0
  1190. data/spec/dummy/public/uploads/repo_file/file/3919/textfile.txt +1 -0
  1191. data/spec/dummy/public/uploads/repo_file/file/3922/textfile.txt +1 -0
  1192. data/spec/dummy/public/uploads/repo_file/file/3923/textfile.txt +1 -0
  1193. data/spec/dummy/public/uploads/repo_file/file/3925/textfile.txt +1 -0
  1194. data/spec/dummy/public/uploads/repo_file/file/3931/textfile.txt +1 -0
  1195. data/spec/dummy/public/uploads/repo_file/file/3935/textfile.txt +1 -0
  1196. data/spec/dummy/public/uploads/repo_file/file/3936/textfile.txt +1 -0
  1197. data/spec/dummy/public/uploads/repo_file/file/3937/textfile.txt +1 -0
  1198. data/spec/dummy/public/uploads/repo_file/file/3938/textfile.txt +1 -0
  1199. data/spec/dummy/public/uploads/repo_file/file/3939/textfile.txt +1 -0
  1200. data/spec/dummy/public/uploads/repo_file/file/3940/textfile.txt +1 -0
  1201. data/spec/dummy/public/uploads/repo_file/file/3941/textfile.txt +1 -0
  1202. data/spec/dummy/public/uploads/repo_file/file/3942/textfile.txt +1 -0
  1203. data/spec/dummy/public/uploads/repo_file/file/3943/textfile.txt +1 -0
  1204. data/spec/dummy/public/uploads/repo_file/file/3944/textfile.txt +1 -0
  1205. data/spec/dummy/public/uploads/repo_file/file/3953/textfile.txt +1 -0
  1206. data/spec/dummy/public/uploads/repo_file/file/3955/textfile.txt +1 -0
  1207. data/spec/dummy/public/uploads/repo_file/file/3959/textfile.txt +1 -0
  1208. data/spec/dummy/public/uploads/repo_file/file/3962/textfile.txt +1 -0
  1209. data/spec/dummy/public/uploads/repo_file/file/3964/textfile.txt +1 -0
  1210. data/spec/dummy/public/uploads/repo_file/file/3965/textfile.txt +1 -0
  1211. data/spec/dummy/public/uploads/repo_file/file/3967/textfile.txt +1 -0
  1212. data/spec/dummy/public/uploads/repo_file/file/3973/textfile.txt +1 -0
  1213. data/spec/dummy/public/uploads/repo_file/file/3975/textfile.txt +1 -0
  1214. data/spec/dummy/public/uploads/repo_file/file/3977/textfile.txt +1 -0
  1215. data/spec/dummy/public/uploads/repo_file/file/3979/textfile.txt +1 -0
  1216. data/spec/dummy/public/uploads/repo_file/file/3981/textfile.txt +1 -0
  1217. data/spec/dummy/public/uploads/repo_file/file/3983/textfile.txt +1 -0
  1218. data/spec/dummy/public/uploads/repo_file/file/3985/textfile.txt +1 -0
  1219. data/spec/dummy/public/uploads/repo_file/file/3987/textfile.txt +1 -0
  1220. data/spec/dummy/public/uploads/repo_file/file/3989/textfile.txt +1 -0
  1221. data/spec/dummy/public/uploads/repo_file/file/3992/textfile.txt +1 -0
  1222. data/spec/dummy/public/uploads/repo_file/file/3993/textfile.txt +1 -0
  1223. data/spec/dummy/public/uploads/repo_file/file/3995/textfile.txt +1 -0
  1224. data/spec/dummy/public/uploads/repo_file/file/4001/textfile.txt +1 -0
  1225. data/spec/dummy/public/uploads/repo_file/file/4005/textfile.txt +1 -0
  1226. data/spec/dummy/public/uploads/repo_file/file/4006/textfile.txt +1 -0
  1227. data/spec/dummy/public/uploads/repo_file/file/4007/textfile.txt +1 -0
  1228. data/spec/dummy/public/uploads/repo_file/file/4008/textfile.txt +1 -0
  1229. data/spec/dummy/public/uploads/repo_file/file/4009/textfile.txt +1 -0
  1230. data/spec/dummy/public/uploads/repo_file/file/4010/textfile.txt +1 -0
  1231. data/spec/dummy/public/uploads/repo_file/file/4011/textfile.txt +1 -0
  1232. data/spec/dummy/public/uploads/repo_file/file/4012/textfile.txt +1 -0
  1233. data/spec/dummy/public/uploads/repo_file/file/4013/textfile.txt +1 -0
  1234. data/spec/dummy/public/uploads/repo_file/file/4014/textfile.txt +1 -0
  1235. data/spec/dummy/public/uploads/repo_file/file/4023/textfile.txt +1 -0
  1236. data/spec/dummy/public/uploads/repo_file/file/4025/textfile.txt +1 -0
  1237. data/spec/dummy/public/uploads/repo_file/file/4029/textfile.txt +1 -0
  1238. data/spec/dummy/public/uploads/repo_file/file/4032/textfile.txt +1 -0
  1239. data/spec/dummy/public/uploads/repo_file/file/4034/textfile.txt +1 -0
  1240. data/spec/dummy/public/uploads/repo_file/file/4035/textfile.txt +1 -0
  1241. data/spec/dummy/public/uploads/repo_file/file/4037/textfile.txt +1 -0
  1242. data/spec/dummy/public/uploads/repo_file/file/4043/textfile.txt +1 -0
  1243. data/spec/dummy/public/uploads/repo_file/file/4045/textfile.txt +1 -0
  1244. data/spec/dummy/public/uploads/repo_file/file/4047/textfile.txt +1 -0
  1245. data/spec/dummy/public/uploads/repo_file/file/4049/textfile.txt +1 -0
  1246. data/spec/dummy/public/uploads/repo_file/file/4051/textfile.txt +1 -0
  1247. data/spec/dummy/public/uploads/repo_file/file/4053/textfile.txt +1 -0
  1248. data/spec/dummy/public/uploads/repo_file/file/4055/textfile.txt +1 -0
  1249. data/spec/dummy/public/uploads/repo_file/file/4057/textfile.txt +1 -0
  1250. data/spec/dummy/public/uploads/repo_file/file/4059/textfile.txt +1 -0
  1251. data/spec/dummy/public/uploads/repo_file/file/4062/textfile.txt +1 -0
  1252. data/spec/dummy/public/uploads/repo_file/file/4063/textfile.txt +1 -0
  1253. data/spec/dummy/public/uploads/repo_file/file/4065/textfile.txt +1 -0
  1254. data/spec/dummy/public/uploads/repo_file/file/4071/textfile.txt +1 -0
  1255. data/spec/dummy/public/uploads/repo_file/file/4075/textfile.txt +1 -0
  1256. data/spec/dummy/public/uploads/repo_file/file/4076/textfile.txt +1 -0
  1257. data/spec/dummy/public/uploads/repo_file/file/4077/textfile.txt +1 -0
  1258. data/spec/dummy/public/uploads/repo_file/file/4078/textfile.txt +1 -0
  1259. data/spec/dummy/public/uploads/repo_file/file/4079/textfile.txt +1 -0
  1260. data/spec/dummy/public/uploads/repo_file/file/4080/textfile.txt +1 -0
  1261. data/spec/dummy/public/uploads/repo_file/file/4081/textfile.txt +1 -0
  1262. data/spec/dummy/public/uploads/repo_file/file/4082/textfile.txt +1 -0
  1263. data/spec/dummy/public/uploads/repo_file/file/4083/textfile.txt +1 -0
  1264. data/spec/dummy/public/uploads/repo_file/file/4084/textfile.txt +1 -0
  1265. data/spec/dummy/public/uploads/repo_file/file/4093/textfile.txt +1 -0
  1266. data/spec/dummy/public/uploads/repo_file/file/4095/textfile.txt +1 -0
  1267. data/spec/dummy/public/uploads/repo_file/file/4099/textfile.txt +1 -0
  1268. data/spec/dummy/public/uploads/repo_file/file/4102/textfile.txt +1 -0
  1269. data/spec/dummy/public/uploads/repo_file/file/4104/textfile.txt +1 -0
  1270. data/spec/dummy/public/uploads/repo_file/file/4105/textfile.txt +1 -0
  1271. data/spec/dummy/public/uploads/repo_file/file/4107/textfile.txt +1 -0
  1272. data/spec/dummy/public/uploads/repo_file/file/4113/textfile.txt +1 -0
  1273. data/spec/dummy/public/uploads/repo_file/file/4115/textfile.txt +1 -0
  1274. data/spec/dummy/public/uploads/repo_file/file/4117/textfile.txt +1 -0
  1275. data/spec/dummy/public/uploads/repo_file/file/4119/textfile.txt +1 -0
  1276. data/spec/dummy/public/uploads/repo_file/file/4121/textfile.txt +1 -0
  1277. data/spec/dummy/public/uploads/repo_file/file/4123/textfile.txt +1 -0
  1278. data/spec/dummy/public/uploads/repo_file/file/4125/textfile.txt +1 -0
  1279. data/spec/dummy/public/uploads/repo_file/file/4127/textfile.txt +1 -0
  1280. data/spec/dummy/public/uploads/repo_file/file/4129/textfile.txt +1 -0
  1281. data/spec/dummy/public/uploads/repo_file/file/4132/textfile.txt +1 -0
  1282. data/spec/dummy/public/uploads/repo_file/file/4133/textfile.txt +1 -0
  1283. data/spec/dummy/public/uploads/repo_file/file/4135/textfile.txt +1 -0
  1284. data/spec/dummy/public/uploads/repo_file/file/4141/textfile.txt +1 -0
  1285. data/spec/dummy/public/uploads/repo_file/file/4145/textfile.txt +1 -0
  1286. data/spec/dummy/public/uploads/repo_file/file/4146/textfile.txt +1 -0
  1287. data/spec/dummy/public/uploads/repo_file/file/4147/textfile.txt +1 -0
  1288. data/spec/dummy/public/uploads/repo_file/file/4148/textfile.txt +1 -0
  1289. data/spec/dummy/public/uploads/repo_file/file/4149/textfile.txt +1 -0
  1290. data/spec/dummy/public/uploads/repo_file/file/4150/textfile.txt +1 -0
  1291. data/spec/dummy/public/uploads/repo_file/file/4151/textfile.txt +1 -0
  1292. data/spec/dummy/public/uploads/repo_file/file/4152/textfile.txt +1 -0
  1293. data/spec/dummy/public/uploads/repo_file/file/4153/textfile.txt +1 -0
  1294. data/spec/dummy/public/uploads/repo_file/file/4154/textfile.txt +1 -0
  1295. data/spec/dummy/public/uploads/repo_file/file/4163/textfile.txt +1 -0
  1296. data/spec/dummy/public/uploads/repo_file/file/4165/textfile.txt +1 -0
  1297. data/spec/dummy/public/uploads/repo_file/file/4169/textfile.txt +1 -0
  1298. data/spec/dummy/public/uploads/repo_file/file/4172/textfile.txt +1 -0
  1299. data/spec/dummy/public/uploads/repo_file/file/4174/textfile.txt +1 -0
  1300. data/spec/dummy/public/uploads/repo_file/file/4175/textfile.txt +1 -0
  1301. data/spec/dummy/public/uploads/repo_file/file/4177/textfile.txt +1 -0
  1302. data/spec/dummy/public/uploads/repo_file/file/4183/textfile.txt +1 -0
  1303. data/spec/dummy/public/uploads/repo_file/file/4185/textfile.txt +1 -0
  1304. data/spec/dummy/public/uploads/repo_file/file/4187/textfile.txt +1 -0
  1305. data/spec/dummy/public/uploads/repo_file/file/4189/textfile.txt +1 -0
  1306. data/spec/dummy/public/uploads/repo_file/file/4191/textfile.txt +1 -0
  1307. data/spec/dummy/public/uploads/repo_file/file/4193/textfile.txt +1 -0
  1308. data/spec/dummy/public/uploads/repo_file/file/4195/textfile.txt +1 -0
  1309. data/spec/dummy/public/uploads/repo_file/file/4197/textfile.txt +1 -0
  1310. data/spec/dummy/public/uploads/repo_file/file/4199/textfile.txt +1 -0
  1311. data/spec/dummy/public/uploads/repo_file/file/4202/textfile.txt +1 -0
  1312. data/spec/dummy/public/uploads/repo_file/file/4203/textfile.txt +1 -0
  1313. data/spec/dummy/public/uploads/repo_file/file/4205/textfile.txt +1 -0
  1314. data/spec/dummy/public/uploads/repo_file/file/4211/textfile.txt +1 -0
  1315. data/spec/dummy/public/uploads/repo_file/file/4215/textfile.txt +1 -0
  1316. data/spec/dummy/public/uploads/repo_file/file/4216/textfile.txt +1 -0
  1317. data/spec/dummy/public/uploads/repo_file/file/4217/textfile.txt +1 -0
  1318. data/spec/dummy/public/uploads/repo_file/file/4218/textfile.txt +1 -0
  1319. data/spec/dummy/public/uploads/repo_file/file/4219/textfile.txt +1 -0
  1320. data/spec/dummy/public/uploads/repo_file/file/4220/textfile.txt +1 -0
  1321. data/spec/dummy/public/uploads/repo_file/file/4221/textfile.txt +1 -0
  1322. data/spec/dummy/public/uploads/repo_file/file/4222/textfile.txt +1 -0
  1323. data/spec/dummy/public/uploads/repo_file/file/4223/textfile.txt +1 -0
  1324. data/spec/dummy/public/uploads/repo_file/file/4224/textfile.txt +1 -0
  1325. data/spec/dummy/public/uploads/repo_file/file/4233/textfile.txt +1 -0
  1326. data/spec/dummy/public/uploads/repo_file/file/4235/textfile.txt +1 -0
  1327. data/spec/dummy/public/uploads/repo_file/file/4239/textfile.txt +1 -0
  1328. data/spec/dummy/public/uploads/repo_file/file/4242/textfile.txt +1 -0
  1329. data/spec/dummy/public/uploads/repo_file/file/4244/textfile.txt +1 -0
  1330. data/spec/dummy/public/uploads/repo_file/file/4245/textfile.txt +1 -0
  1331. data/spec/dummy/public/uploads/repo_file/file/4247/textfile.txt +1 -0
  1332. data/spec/dummy/public/uploads/repo_file/file/4253/textfile.txt +1 -0
  1333. data/spec/dummy/public/uploads/repo_file/file/4255/textfile.txt +1 -0
  1334. data/spec/dummy/public/uploads/repo_file/file/4257/textfile.txt +1 -0
  1335. data/spec/dummy/public/uploads/repo_file/file/4259/textfile.txt +1 -0
  1336. data/spec/dummy/public/uploads/repo_file/file/4261/textfile.txt +1 -0
  1337. data/spec/dummy/public/uploads/repo_file/file/4263/textfile.txt +1 -0
  1338. data/spec/dummy/public/uploads/repo_file/file/4265/textfile.txt +1 -0
  1339. data/spec/dummy/public/uploads/repo_file/file/4267/textfile.txt +1 -0
  1340. data/spec/dummy/public/uploads/repo_file/file/4269/textfile.txt +1 -0
  1341. data/spec/dummy/public/uploads/repo_file/file/4272/textfile.txt +1 -0
  1342. data/spec/dummy/public/uploads/repo_file/file/4273/textfile.txt +1 -0
  1343. data/spec/dummy/public/uploads/repo_file/file/4275/textfile.txt +1 -0
  1344. data/spec/dummy/public/uploads/repo_file/file/4281/textfile.txt +1 -0
  1345. data/spec/dummy/public/uploads/repo_file/file/4285/textfile.txt +1 -0
  1346. data/spec/dummy/public/uploads/repo_file/file/4286/textfile.txt +1 -0
  1347. data/spec/dummy/public/uploads/repo_file/file/4287/textfile.txt +1 -0
  1348. data/spec/dummy/public/uploads/repo_file/file/4288/textfile.txt +1 -0
  1349. data/spec/dummy/public/uploads/repo_file/file/4289/textfile.txt +1 -0
  1350. data/spec/dummy/public/uploads/repo_file/file/4290/textfile.txt +1 -0
  1351. data/spec/dummy/public/uploads/repo_file/file/4291/textfile.txt +1 -0
  1352. data/spec/dummy/public/uploads/repo_file/file/4292/textfile.txt +1 -0
  1353. data/spec/dummy/public/uploads/repo_file/file/4293/textfile.txt +1 -0
  1354. data/spec/dummy/public/uploads/repo_file/file/4294/textfile.txt +1 -0
  1355. data/spec/dummy/public/uploads/repo_file/file/4303/textfile.txt +1 -0
  1356. data/spec/dummy/public/uploads/repo_file/file/4305/textfile.txt +1 -0
  1357. data/spec/dummy/public/uploads/repo_file/file/4309/textfile.txt +1 -0
  1358. data/spec/dummy/public/uploads/repo_file/file/4312/textfile.txt +1 -0
  1359. data/spec/dummy/public/uploads/repo_file/file/4314/textfile.txt +1 -0
  1360. data/spec/dummy/public/uploads/repo_file/file/4315/textfile.txt +1 -0
  1361. data/spec/dummy/public/uploads/repo_file/file/4317/textfile.txt +1 -0
  1362. data/spec/dummy/public/uploads/repo_file/file/4323/textfile.txt +1 -0
  1363. data/spec/dummy/public/uploads/repo_file/file/4325/textfile.txt +1 -0
  1364. data/spec/dummy/public/uploads/repo_file/file/4327/textfile.txt +1 -0
  1365. data/spec/dummy/public/uploads/repo_file/file/4329/textfile.txt +1 -0
  1366. data/spec/dummy/public/uploads/repo_file/file/4331/textfile.txt +1 -0
  1367. data/spec/dummy/public/uploads/repo_file/file/4333/textfile.txt +1 -0
  1368. data/spec/dummy/public/uploads/repo_file/file/4335/textfile.txt +1 -0
  1369. data/spec/dummy/public/uploads/repo_file/file/4337/textfile.txt +1 -0
  1370. data/spec/dummy/public/uploads/repo_file/file/4339/textfile.txt +1 -0
  1371. data/spec/dummy/public/uploads/repo_file/file/4342/textfile.txt +1 -0
  1372. data/spec/dummy/public/uploads/repo_file/file/4343/textfile.txt +1 -0
  1373. data/spec/dummy/public/uploads/repo_file/file/4345/textfile.txt +1 -0
  1374. data/spec/dummy/public/uploads/repo_file/file/4351/textfile.txt +1 -0
  1375. data/spec/dummy/public/uploads/repo_file/file/4355/textfile.txt +1 -0
  1376. data/spec/dummy/public/uploads/repo_file/file/4356/textfile.txt +1 -0
  1377. data/spec/dummy/public/uploads/repo_file/file/4357/textfile.txt +1 -0
  1378. data/spec/dummy/public/uploads/repo_file/file/4358/textfile.txt +1 -0
  1379. data/spec/dummy/public/uploads/repo_file/file/4359/textfile.txt +1 -0
  1380. data/spec/dummy/public/uploads/repo_file/file/4360/textfile.txt +1 -0
  1381. data/spec/dummy/public/uploads/repo_file/file/4361/textfile.txt +1 -0
  1382. data/spec/dummy/public/uploads/repo_file/file/4362/textfile.txt +1 -0
  1383. data/spec/dummy/public/uploads/repo_file/file/4363/textfile.txt +1 -0
  1384. data/spec/dummy/public/uploads/repo_file/file/4364/textfile.txt +1 -0
  1385. data/spec/dummy/public/uploads/repo_file/file/4373/textfile.txt +1 -0
  1386. data/spec/dummy/public/uploads/repo_file/file/4375/textfile.txt +1 -0
  1387. data/spec/dummy/public/uploads/repo_file/file/4379/textfile.txt +1 -0
  1388. data/spec/dummy/public/uploads/repo_file/file/4382/textfile.txt +1 -0
  1389. data/spec/dummy/public/uploads/repo_file/file/4384/textfile.txt +1 -0
  1390. data/spec/dummy/public/uploads/repo_file/file/4385/textfile.txt +1 -0
  1391. data/spec/dummy/public/uploads/repo_file/file/4387/textfile.txt +1 -0
  1392. data/spec/dummy/public/uploads/repo_file/file/4393/textfile.txt +1 -0
  1393. data/spec/dummy/public/uploads/repo_file/file/4395/textfile.txt +1 -0
  1394. data/spec/dummy/public/uploads/repo_file/file/4397/textfile.txt +1 -0
  1395. data/spec/dummy/public/uploads/repo_file/file/4399/textfile.txt +1 -0
  1396. data/spec/dummy/public/uploads/repo_file/file/4401/textfile.txt +1 -0
  1397. data/spec/dummy/public/uploads/repo_file/file/4403/textfile.txt +1 -0
  1398. data/spec/dummy/public/uploads/repo_file/file/4405/textfile.txt +1 -0
  1399. data/spec/dummy/public/uploads/repo_file/file/4407/textfile.txt +1 -0
  1400. data/spec/dummy/public/uploads/repo_file/file/4409/textfile.txt +1 -0
  1401. data/spec/dummy/public/uploads/repo_file/file/4412/textfile.txt +1 -0
  1402. data/spec/dummy/public/uploads/repo_file/file/4413/textfile.txt +1 -0
  1403. data/spec/dummy/public/uploads/repo_file/file/4415/textfile.txt +1 -0
  1404. data/spec/dummy/public/uploads/repo_file/file/4421/textfile.txt +1 -0
  1405. data/spec/dummy/public/uploads/repo_file/file/4425/textfile.txt +1 -0
  1406. data/spec/dummy/public/uploads/repo_file/file/4426/textfile.txt +1 -0
  1407. data/spec/dummy/public/uploads/repo_file/file/4427/textfile.txt +1 -0
  1408. data/spec/dummy/public/uploads/repo_file/file/4428/textfile.txt +1 -0
  1409. data/spec/dummy/public/uploads/repo_file/file/4429/textfile.txt +1 -0
  1410. data/spec/dummy/public/uploads/repo_file/file/4430/textfile.txt +1 -0
  1411. data/spec/dummy/public/uploads/repo_file/file/4431/textfile.txt +1 -0
  1412. data/spec/dummy/public/uploads/repo_file/file/4432/textfile.txt +1 -0
  1413. data/spec/dummy/public/uploads/repo_file/file/4433/textfile.txt +1 -0
  1414. data/spec/dummy/public/uploads/repo_file/file/4434/textfile.txt +1 -0
  1415. data/spec/dummy/public/uploads/repo_file/file/4443/textfile.txt +1 -0
  1416. data/spec/dummy/public/uploads/repo_file/file/4445/textfile.txt +1 -0
  1417. data/spec/dummy/public/uploads/repo_file/file/4449/textfile.txt +1 -0
  1418. data/spec/dummy/public/uploads/repo_file/file/4452/textfile.txt +1 -0
  1419. data/spec/dummy/public/uploads/repo_file/file/4454/textfile.txt +1 -0
  1420. data/spec/dummy/public/uploads/repo_file/file/4455/textfile.txt +1 -0
  1421. data/spec/dummy/public/uploads/repo_file/file/4457/textfile.txt +1 -0
  1422. data/spec/dummy/public/uploads/repo_file/file/4463/textfile.txt +1 -0
  1423. data/spec/dummy/public/uploads/repo_file/file/4465/textfile.txt +1 -0
  1424. data/spec/dummy/public/uploads/repo_file/file/4467/textfile.txt +1 -0
  1425. data/spec/dummy/public/uploads/repo_file/file/4469/textfile.txt +1 -0
  1426. data/spec/dummy/public/uploads/repo_file/file/4471/textfile.txt +1 -0
  1427. data/spec/dummy/public/uploads/repo_file/file/4473/textfile.txt +1 -0
  1428. data/spec/dummy/public/uploads/repo_file/file/4475/textfile.txt +1 -0
  1429. data/spec/dummy/public/uploads/repo_file/file/4477/textfile.txt +1 -0
  1430. data/spec/dummy/public/uploads/repo_file/file/4479/textfile.txt +1 -0
  1431. data/spec/dummy/public/uploads/repo_file/file/4482/textfile.txt +1 -0
  1432. data/spec/dummy/public/uploads/repo_file/file/4483/textfile.txt +1 -0
  1433. data/spec/dummy/public/uploads/repo_file/file/4485/textfile.txt +1 -0
  1434. data/spec/dummy/public/uploads/repo_file/file/4491/textfile.txt +1 -0
  1435. data/spec/dummy/public/uploads/repo_file/file/4495/textfile.txt +1 -0
  1436. data/spec/dummy/public/uploads/repo_file/file/4496/textfile.txt +1 -0
  1437. data/spec/dummy/public/uploads/repo_file/file/4497/textfile.txt +1 -0
  1438. data/spec/dummy/public/uploads/repo_file/file/4498/textfile.txt +1 -0
  1439. data/spec/dummy/public/uploads/repo_file/file/4499/textfile.txt +1 -0
  1440. data/spec/dummy/public/uploads/repo_file/file/4500/textfile.txt +1 -0
  1441. data/spec/dummy/public/uploads/repo_file/file/4501/textfile.txt +1 -0
  1442. data/spec/dummy/public/uploads/repo_file/file/4502/textfile.txt +1 -0
  1443. data/spec/dummy/public/uploads/repo_file/file/4503/textfile.txt +1 -0
  1444. data/spec/dummy/public/uploads/repo_file/file/4504/textfile.txt +1 -0
  1445. data/spec/dummy/public/uploads/repo_file/file/4516/textfile.txt +1 -0
  1446. data/spec/dummy/public/uploads/repo_file/file/4518/textfile.txt +1 -0
  1447. data/spec/dummy/public/uploads/repo_file/file/4522/textfile.txt +1 -0
  1448. data/spec/dummy/public/uploads/repo_file/file/4525/textfile.txt +1 -0
  1449. data/spec/dummy/public/uploads/repo_file/file/4527/textfile.txt +1 -0
  1450. data/spec/dummy/public/uploads/repo_file/file/4528/textfile.txt +1 -0
  1451. data/spec/dummy/public/uploads/repo_file/file/4530/textfile.txt +1 -0
  1452. data/spec/dummy/public/uploads/repo_file/file/4536/textfile.txt +1 -0
  1453. data/spec/dummy/public/uploads/repo_file/file/4538/textfile.txt +1 -0
  1454. data/spec/dummy/public/uploads/repo_file/file/4540/textfile.txt +1 -0
  1455. data/spec/dummy/public/uploads/repo_file/file/4542/textfile.txt +1 -0
  1456. data/spec/dummy/public/uploads/repo_file/file/4544/textfile.txt +1 -0
  1457. data/spec/dummy/public/uploads/repo_file/file/4546/textfile.txt +1 -0
  1458. data/spec/dummy/public/uploads/repo_file/file/4548/textfile.txt +1 -0
  1459. data/spec/dummy/public/uploads/repo_file/file/4550/textfile.txt +1 -0
  1460. data/spec/dummy/public/uploads/repo_file/file/4552/textfile.txt +1 -0
  1461. data/spec/dummy/public/uploads/repo_file/file/4555/textfile.txt +1 -0
  1462. data/spec/dummy/public/uploads/repo_file/file/4556/textfile.txt +1 -0
  1463. data/spec/dummy/public/uploads/repo_file/file/4558/textfile.txt +1 -0
  1464. data/spec/dummy/public/uploads/repo_file/file/4564/textfile.txt +1 -0
  1465. data/spec/dummy/public/uploads/repo_file/file/4568/textfile.txt +1 -0
  1466. data/spec/dummy/public/uploads/repo_file/file/4569/textfile.txt +1 -0
  1467. data/spec/dummy/public/uploads/repo_file/file/4570/textfile.txt +1 -0
  1468. data/spec/dummy/public/uploads/repo_file/file/4571/textfile.txt +1 -0
  1469. data/spec/dummy/public/uploads/repo_file/file/4572/textfile.txt +1 -0
  1470. data/spec/dummy/public/uploads/repo_file/file/4573/textfile.txt +1 -0
  1471. data/spec/dummy/public/uploads/repo_file/file/4574/textfile.txt +1 -0
  1472. data/spec/dummy/public/uploads/repo_file/file/4575/textfile.txt +1 -0
  1473. data/spec/dummy/public/uploads/repo_file/file/4576/textfile.txt +1 -0
  1474. data/spec/dummy/public/uploads/repo_file/file/4577/textfile.txt +1 -0
  1475. data/spec/dummy/public/uploads/repo_file/file/4589/textfile.txt +1 -0
  1476. data/spec/dummy/public/uploads/repo_file/file/4591/textfile.txt +1 -0
  1477. data/spec/dummy/public/uploads/repo_file/file/4595/textfile.txt +1 -0
  1478. data/spec/dummy/public/uploads/repo_file/file/4598/textfile.txt +1 -0
  1479. data/spec/dummy/public/uploads/repo_file/file/4600/textfile.txt +1 -0
  1480. data/spec/dummy/public/uploads/repo_file/file/4601/textfile.txt +1 -0
  1481. data/spec/dummy/public/uploads/repo_file/file/4603/textfile.txt +1 -0
  1482. data/spec/dummy/public/uploads/repo_file/file/4609/textfile.txt +1 -0
  1483. data/spec/dummy/public/uploads/repo_file/file/4611/textfile.txt +1 -0
  1484. data/spec/dummy/public/uploads/repo_file/file/4613/textfile.txt +1 -0
  1485. data/spec/dummy/public/uploads/repo_file/file/4615/textfile.txt +1 -0
  1486. data/spec/dummy/public/uploads/repo_file/file/4617/textfile.txt +1 -0
  1487. data/spec/dummy/public/uploads/repo_file/file/4619/textfile.txt +1 -0
  1488. data/spec/dummy/public/uploads/repo_file/file/4621/textfile.txt +1 -0
  1489. data/spec/dummy/public/uploads/repo_file/file/4623/textfile.txt +1 -0
  1490. data/spec/dummy/public/uploads/repo_file/file/4625/textfile.txt +1 -0
  1491. data/spec/dummy/public/uploads/repo_file/file/4628/textfile.txt +1 -0
  1492. data/spec/dummy/public/uploads/repo_file/file/4629/textfile.txt +1 -0
  1493. data/spec/dummy/public/uploads/repo_file/file/4631/textfile.txt +1 -0
  1494. data/spec/dummy/public/uploads/repo_file/file/4637/textfile.txt +1 -0
  1495. data/spec/dummy/public/uploads/repo_file/file/4641/textfile.txt +1 -0
  1496. data/spec/dummy/public/uploads/repo_file/file/4642/textfile.txt +1 -0
  1497. data/spec/dummy/public/uploads/repo_file/file/4643/textfile.txt +1 -0
  1498. data/spec/dummy/public/uploads/repo_file/file/4644/textfile.txt +1 -0
  1499. data/spec/dummy/public/uploads/repo_file/file/4645/textfile.txt +1 -0
  1500. data/spec/dummy/public/uploads/repo_file/file/4646/textfile.txt +1 -0
  1501. data/spec/dummy/public/uploads/repo_file/file/4647/textfile.txt +1 -0
  1502. data/spec/dummy/public/uploads/repo_file/file/4648/textfile.txt +1 -0
  1503. data/spec/dummy/public/uploads/repo_file/file/4649/textfile.txt +1 -0
  1504. data/spec/dummy/public/uploads/repo_file/file/4650/textfile.txt +1 -0
  1505. data/spec/dummy/public/uploads/repo_file/file/4662/textfile.txt +1 -0
  1506. data/spec/dummy/public/uploads/repo_file/file/4664/textfile.txt +1 -0
  1507. data/spec/dummy/public/uploads/repo_file/file/4668/textfile.txt +1 -0
  1508. data/spec/dummy/public/uploads/repo_file/file/4671/textfile.txt +1 -0
  1509. data/spec/dummy/public/uploads/repo_file/file/4673/textfile.txt +1 -0
  1510. data/spec/dummy/public/uploads/repo_file/file/4674/textfile.txt +1 -0
  1511. data/spec/dummy/public/uploads/repo_file/file/4676/textfile.txt +1 -0
  1512. data/spec/dummy/public/uploads/repo_file/file/4682/textfile.txt +1 -0
  1513. data/spec/dummy/public/uploads/repo_file/file/4684/textfile.txt +1 -0
  1514. data/spec/dummy/public/uploads/repo_file/file/4686/textfile.txt +1 -0
  1515. data/spec/dummy/public/uploads/repo_file/file/4688/textfile.txt +1 -0
  1516. data/spec/dummy/public/uploads/repo_file/file/4690/textfile.txt +1 -0
  1517. data/spec/dummy/public/uploads/repo_file/file/4692/textfile.txt +1 -0
  1518. data/spec/dummy/public/uploads/repo_file/file/4694/textfile.txt +1 -0
  1519. data/spec/dummy/public/uploads/repo_file/file/4696/textfile.txt +1 -0
  1520. data/spec/dummy/public/uploads/repo_file/file/4698/textfile.txt +1 -0
  1521. data/spec/dummy/public/uploads/repo_file/file/4701/textfile.txt +1 -0
  1522. data/spec/dummy/public/uploads/repo_file/file/4702/textfile.txt +1 -0
  1523. data/spec/dummy/public/uploads/repo_file/file/4704/textfile.txt +1 -0
  1524. data/spec/dummy/public/uploads/repo_file/file/4710/textfile.txt +1 -0
  1525. data/spec/dummy/public/uploads/repo_file/file/4714/textfile.txt +1 -0
  1526. data/spec/dummy/public/uploads/repo_file/file/4715/textfile.txt +1 -0
  1527. data/spec/dummy/public/uploads/repo_file/file/4716/textfile.txt +1 -0
  1528. data/spec/dummy/public/uploads/repo_file/file/4717/textfile.txt +1 -0
  1529. data/spec/dummy/public/uploads/repo_file/file/4718/textfile.txt +1 -0
  1530. data/spec/dummy/public/uploads/repo_file/file/4719/textfile.txt +1 -0
  1531. data/spec/dummy/public/uploads/repo_file/file/4720/textfile.txt +1 -0
  1532. data/spec/dummy/public/uploads/repo_file/file/4721/textfile.txt +1 -0
  1533. data/spec/dummy/public/uploads/repo_file/file/4722/textfile.txt +1 -0
  1534. data/spec/dummy/public/uploads/repo_file/file/4723/textfile.txt +1 -0
  1535. data/spec/dummy/public/uploads/repo_file/file/4735/textfile.txt +1 -0
  1536. data/spec/dummy/public/uploads/repo_file/file/4737/textfile.txt +1 -0
  1537. data/spec/dummy/public/uploads/repo_file/file/4741/textfile.txt +1 -0
  1538. data/spec/dummy/public/uploads/repo_file/file/4744/textfile.txt +1 -0
  1539. data/spec/dummy/public/uploads/repo_file/file/4746/textfile.txt +1 -0
  1540. data/spec/dummy/public/uploads/repo_file/file/4747/textfile.txt +1 -0
  1541. data/spec/dummy/public/uploads/repo_file/file/4749/textfile.txt +1 -0
  1542. data/spec/dummy/public/uploads/repo_file/file/4755/textfile.txt +1 -0
  1543. data/spec/dummy/public/uploads/repo_file/file/4757/textfile.txt +1 -0
  1544. data/spec/dummy/public/uploads/repo_file/file/4759/textfile.txt +1 -0
  1545. data/spec/dummy/public/uploads/repo_file/file/4761/textfile.txt +1 -0
  1546. data/spec/dummy/public/uploads/repo_file/file/4763/textfile.txt +1 -0
  1547. data/spec/dummy/public/uploads/repo_file/file/4765/textfile.txt +1 -0
  1548. data/spec/dummy/public/uploads/repo_file/file/4767/textfile.txt +1 -0
  1549. data/spec/dummy/public/uploads/repo_file/file/4769/textfile.txt +1 -0
  1550. data/spec/dummy/public/uploads/repo_file/file/4771/textfile.txt +1 -0
  1551. data/spec/dummy/public/uploads/repo_file/file/4774/textfile.txt +1 -0
  1552. data/spec/dummy/public/uploads/repo_file/file/4775/textfile.txt +1 -0
  1553. data/spec/dummy/public/uploads/repo_file/file/4777/textfile.txt +1 -0
  1554. data/spec/dummy/public/uploads/repo_file/file/4783/textfile.txt +1 -0
  1555. data/spec/dummy/public/uploads/repo_file/file/4787/textfile.txt +1 -0
  1556. data/spec/dummy/public/uploads/repo_file/file/4788/textfile.txt +1 -0
  1557. data/spec/dummy/public/uploads/repo_file/file/4789/textfile.txt +1 -0
  1558. data/spec/dummy/public/uploads/repo_file/file/4790/textfile.txt +1 -0
  1559. data/spec/dummy/public/uploads/repo_file/file/4791/textfile.txt +1 -0
  1560. data/spec/dummy/public/uploads/repo_file/file/4792/textfile.txt +1 -0
  1561. data/spec/dummy/public/uploads/repo_file/file/4793/textfile.txt +1 -0
  1562. data/spec/dummy/public/uploads/repo_file/file/4794/textfile.txt +1 -0
  1563. data/spec/dummy/public/uploads/repo_file/file/4795/textfile.txt +1 -0
  1564. data/spec/dummy/public/uploads/repo_file/file/4796/textfile.txt +1 -0
  1565. data/spec/dummy/public/uploads/repo_file/file/4808/textfile.txt +1 -0
  1566. data/spec/dummy/public/uploads/repo_file/file/4810/textfile.txt +1 -0
  1567. data/spec/dummy/public/uploads/repo_file/file/4814/textfile.txt +1 -0
  1568. data/spec/dummy/public/uploads/repo_file/file/4817/textfile.txt +1 -0
  1569. data/spec/dummy/public/uploads/repo_file/file/4819/textfile.txt +1 -0
  1570. data/spec/dummy/public/uploads/repo_file/file/4820/textfile.txt +1 -0
  1571. data/spec/dummy/public/uploads/repo_file/file/4822/textfile.txt +1 -0
  1572. data/spec/dummy/public/uploads/repo_file/file/4828/textfile.txt +1 -0
  1573. data/spec/dummy/public/uploads/repo_file/file/4830/textfile.txt +1 -0
  1574. data/spec/dummy/public/uploads/repo_file/file/4832/textfile.txt +1 -0
  1575. data/spec/dummy/public/uploads/repo_file/file/4834/textfile.txt +1 -0
  1576. data/spec/dummy/public/uploads/repo_file/file/4836/textfile.txt +1 -0
  1577. data/spec/dummy/public/uploads/repo_file/file/4838/textfile.txt +1 -0
  1578. data/spec/dummy/public/uploads/repo_file/file/4840/textfile.txt +1 -0
  1579. data/spec/dummy/public/uploads/repo_file/file/4842/textfile.txt +1 -0
  1580. data/spec/dummy/public/uploads/repo_file/file/4844/textfile.txt +1 -0
  1581. data/spec/dummy/public/uploads/repo_file/file/4847/textfile.txt +1 -0
  1582. data/spec/dummy/public/uploads/repo_file/file/4848/textfile.txt +1 -0
  1583. data/spec/dummy/public/uploads/repo_file/file/4850/textfile.txt +1 -0
  1584. data/spec/dummy/public/uploads/repo_file/file/4856/textfile.txt +1 -0
  1585. data/spec/dummy/public/uploads/repo_file/file/4860/textfile.txt +1 -0
  1586. data/spec/dummy/public/uploads/repo_file/file/4861/textfile.txt +1 -0
  1587. data/spec/dummy/public/uploads/repo_file/file/4862/textfile.txt +1 -0
  1588. data/spec/dummy/public/uploads/repo_file/file/4863/textfile.txt +1 -0
  1589. data/spec/dummy/public/uploads/repo_file/file/4864/textfile.txt +1 -0
  1590. data/spec/dummy/public/uploads/repo_file/file/4865/textfile.txt +1 -0
  1591. data/spec/dummy/public/uploads/repo_file/file/4866/textfile.txt +1 -0
  1592. data/spec/dummy/public/uploads/repo_file/file/4867/textfile.txt +1 -0
  1593. data/spec/dummy/public/uploads/repo_file/file/4868/textfile.txt +1 -0
  1594. data/spec/dummy/public/uploads/repo_file/file/4869/textfile.txt +1 -0
  1595. data/spec/dummy/public/uploads/repo_file/file/4881/textfile.txt +1 -0
  1596. data/spec/dummy/public/uploads/repo_file/file/4883/textfile.txt +1 -0
  1597. data/spec/dummy/public/uploads/repo_file/file/4887/textfile.txt +1 -0
  1598. data/spec/dummy/public/uploads/repo_file/file/4890/textfile.txt +1 -0
  1599. data/spec/dummy/public/uploads/repo_file/file/4892/textfile.txt +1 -0
  1600. data/spec/dummy/public/uploads/repo_file/file/4893/textfile.txt +1 -0
  1601. data/spec/dummy/public/uploads/repo_file/file/4895/textfile.txt +1 -0
  1602. data/spec/dummy/public/uploads/repo_file/file/4901/textfile.txt +1 -0
  1603. data/spec/dummy/public/uploads/repo_file/file/4903/textfile.txt +1 -0
  1604. data/spec/dummy/public/uploads/repo_file/file/4905/textfile.txt +1 -0
  1605. data/spec/dummy/public/uploads/repo_file/file/4907/textfile.txt +1 -0
  1606. data/spec/dummy/public/uploads/repo_file/file/4909/textfile.txt +1 -0
  1607. data/spec/dummy/public/uploads/repo_file/file/4911/textfile.txt +1 -0
  1608. data/spec/dummy/public/uploads/repo_file/file/4913/textfile.txt +1 -0
  1609. data/spec/dummy/public/uploads/repo_file/file/4915/textfile.txt +1 -0
  1610. data/spec/dummy/public/uploads/repo_file/file/4917/textfile.txt +1 -0
  1611. data/spec/dummy/public/uploads/repo_file/file/4920/textfile.txt +1 -0
  1612. data/spec/dummy/public/uploads/repo_file/file/4921/textfile.txt +1 -0
  1613. data/spec/dummy/public/uploads/repo_file/file/4923/textfile.txt +1 -0
  1614. data/spec/dummy/public/uploads/repo_file/file/4929/textfile.txt +1 -0
  1615. data/spec/dummy/public/uploads/repo_file/file/4933/textfile.txt +1 -0
  1616. data/spec/dummy/public/uploads/repo_file/file/4934/textfile.txt +1 -0
  1617. data/spec/dummy/public/uploads/repo_file/file/4935/textfile.txt +1 -0
  1618. data/spec/dummy/public/uploads/repo_file/file/4936/textfile.txt +1 -0
  1619. data/spec/dummy/public/uploads/repo_file/file/4937/textfile.txt +1 -0
  1620. data/spec/dummy/public/uploads/repo_file/file/4938/textfile.txt +1 -0
  1621. data/spec/dummy/public/uploads/repo_file/file/4939/textfile.txt +1 -0
  1622. data/spec/dummy/public/uploads/repo_file/file/4940/textfile.txt +1 -0
  1623. data/spec/dummy/public/uploads/repo_file/file/4941/textfile.txt +1 -0
  1624. data/spec/dummy/public/uploads/repo_file/file/4942/textfile.txt +1 -0
  1625. data/spec/dummy/public/uploads/repo_file/file/4954/textfile.txt +1 -0
  1626. data/spec/dummy/public/uploads/repo_file/file/4956/textfile.txt +1 -0
  1627. data/spec/dummy/public/uploads/repo_file/file/4960/textfile.txt +1 -0
  1628. data/spec/dummy/public/uploads/repo_file/file/4963/textfile.txt +1 -0
  1629. data/spec/dummy/public/uploads/repo_file/file/4965/textfile.txt +1 -0
  1630. data/spec/dummy/public/uploads/repo_file/file/4966/textfile.txt +1 -0
  1631. data/spec/dummy/public/uploads/repo_file/file/4968/textfile.txt +1 -0
  1632. data/spec/dummy/public/uploads/repo_file/file/4974/textfile.txt +1 -0
  1633. data/spec/dummy/public/uploads/repo_file/file/4976/textfile.txt +1 -0
  1634. data/spec/dummy/public/uploads/repo_file/file/4978/textfile.txt +1 -0
  1635. data/spec/dummy/public/uploads/repo_file/file/4980/textfile.txt +1 -0
  1636. data/spec/dummy/public/uploads/repo_file/file/4982/textfile.txt +1 -0
  1637. data/spec/dummy/public/uploads/repo_file/file/4984/textfile.txt +1 -0
  1638. data/spec/dummy/public/uploads/repo_file/file/4986/textfile.txt +1 -0
  1639. data/spec/dummy/public/uploads/repo_file/file/4988/textfile.txt +1 -0
  1640. data/spec/dummy/public/uploads/repo_file/file/4990/textfile.txt +1 -0
  1641. data/spec/dummy/public/uploads/repo_file/file/4993/textfile.txt +1 -0
  1642. data/spec/dummy/public/uploads/repo_file/file/4994/textfile.txt +1 -0
  1643. data/spec/dummy/public/uploads/repo_file/file/4996/textfile.txt +1 -0
  1644. data/spec/dummy/public/uploads/repo_file/file/5002/textfile.txt +1 -0
  1645. data/spec/dummy/public/uploads/repo_file/file/5006/textfile.txt +1 -0
  1646. data/spec/dummy/public/uploads/repo_file/file/5007/textfile.txt +1 -0
  1647. data/spec/dummy/public/uploads/repo_file/file/5008/textfile.txt +1 -0
  1648. data/spec/dummy/public/uploads/repo_file/file/5009/textfile.txt +1 -0
  1649. data/spec/dummy/public/uploads/repo_file/file/5010/textfile.txt +1 -0
  1650. data/spec/dummy/public/uploads/repo_file/file/5011/textfile.txt +1 -0
  1651. data/spec/dummy/public/uploads/repo_file/file/5012/textfile.txt +1 -0
  1652. data/spec/dummy/public/uploads/repo_file/file/5013/textfile.txt +1 -0
  1653. data/spec/dummy/public/uploads/repo_file/file/8479/textfile.txt +1 -0
  1654. data/spec/dummy/public/uploads/repo_file/file/8480/textfile.txt +1 -0
  1655. data/spec/dummy/public/uploads/repo_file/file/8492/textfile.txt +1 -0
  1656. data/spec/dummy/public/uploads/repo_file/file/8494/textfile.txt +1 -0
  1657. data/spec/dummy/public/uploads/repo_file/file/8498/textfile.txt +1 -0
  1658. data/spec/dummy/public/uploads/repo_file/file/8501/textfile.txt +1 -0
  1659. data/spec/dummy/public/uploads/repo_file/file/8503/textfile.txt +1 -0
  1660. data/spec/dummy/public/uploads/repo_file/file/8504/textfile.txt +1 -0
  1661. data/spec/dummy/public/uploads/repo_file/file/8506/textfile.txt +1 -0
  1662. data/spec/dummy/public/uploads/repo_file/file/8512/textfile.txt +1 -0
  1663. data/spec/dummy/public/uploads/repo_file/file/8514/textfile.txt +1 -0
  1664. data/spec/dummy/public/uploads/repo_file/file/8516/textfile.txt +1 -0
  1665. data/spec/dummy/public/uploads/repo_file/file/8518/textfile.txt +1 -0
  1666. data/spec/dummy/public/uploads/repo_file/file/8520/textfile.txt +1 -0
  1667. data/spec/dummy/public/uploads/repo_file/file/8522/textfile.txt +1 -0
  1668. data/spec/dummy/public/uploads/repo_file/file/8524/textfile.txt +1 -0
  1669. data/spec/dummy/public/uploads/repo_file/file/8526/textfile.txt +1 -0
  1670. data/spec/dummy/public/uploads/repo_file/file/8528/textfile.txt +1 -0
  1671. data/spec/dummy/public/uploads/repo_file/file/8531/textfile.txt +1 -0
  1672. data/spec/dummy/public/uploads/repo_file/file/8532/textfile.txt +1 -0
  1673. data/spec/dummy/public/uploads/repo_file/file/8534/textfile.txt +1 -0
  1674. data/spec/dummy/public/uploads/repo_file/file/8540/textfile.txt +1 -0
  1675. data/spec/dummy/public/uploads/repo_file/file/8545/textfile.txt +1 -0
  1676. data/spec/dummy/public/uploads/repo_file/file/8547/textfile.txt +1 -0
  1677. data/spec/dummy/public/uploads/repo_file/file/8549/textfile.txt +1 -0
  1678. data/spec/dummy/public/uploads/repo_file/file/8551/textfile.txt +1 -0
  1679. data/spec/dummy/public/uploads/repo_file/file/8553/textfile.txt +1 -0
  1680. data/spec/dummy/public/uploads/repo_file/file/8559/textfile.txt +1 -0
  1681. data/spec/dummy/public/uploads/repo_file/file/8562/textfile.txt +1 -0
  1682. data/spec/dummy/public/uploads/repo_file/file/8563/textfile.txt +1 -0
  1683. data/spec/dummy/public/uploads/repo_file/file/8564/textfile.txt +1 -0
  1684. data/spec/dummy/public/uploads/repo_file/file/8566/textfile.txt +1 -0
  1685. data/spec/dummy/public/uploads/repo_file/file/8567/textfile.txt +1 -0
  1686. data/spec/dummy/public/uploads/repo_file/file/8568/textfile.txt +1 -0
  1687. data/spec/dummy/public/uploads/repo_file/file/8569/textfile.txt +1 -0
  1688. data/spec/dummy/public/uploads/repo_file/file/8570/textfile.txt +1 -0
  1689. data/spec/dummy/public/uploads/repo_file/file/8571/textfile.txt +1 -0
  1690. data/spec/dummy/public/uploads/repo_file/file/8572/textfile.txt +1 -0
  1691. data/spec/dummy/public/uploads/repo_file/file/8573/textfile.txt +1 -0
  1692. data/spec/dummy/public/uploads/repo_file/file/8574/textfile.txt +1 -0
  1693. data/spec/dummy/public/uploads/repo_file/file/8575/textfile.txt +1 -0
  1694. data/spec/dummy/public/uploads/repo_file/file/8576/textfile.txt +1 -0
  1695. data/spec/dummy/public/uploads/repo_file/file/8580/textfile.txt +1 -0
  1696. data/spec/dummy/public/uploads/repo_file/file/8582/textfile.txt +1 -0
  1697. data/spec/dummy/public/uploads/repo_file/file/8584/textfile.txt +1 -0
  1698. data/spec/dummy/public/uploads/repo_file/file/8586/textfile.txt +1 -0
  1699. data/spec/dummy/public/uploads/repo_file/file/8588/textfile.txt +1 -0
  1700. data/spec/dummy/public/uploads/repo_file/file/8590/textfile.txt +1 -0
  1701. data/spec/dummy/public/uploads/repo_file/file/8592/textfile.txt +1 -0
  1702. data/spec/dummy/public/uploads/repo_file/file/8594/textfile.txt +1 -0
  1703. data/spec/dummy/public/uploads/repo_file/file/8596/textfile.txt +1 -0
  1704. data/spec/dummy/public/uploads/repo_file/file/8598/textfile.txt +1 -0
  1705. data/spec/dummy/public/uploads/repo_file/file/8600/textfile.txt +1 -0
  1706. data/spec/dummy/public/uploads/repo_file/file/8602/textfile.txt +1 -0
  1707. data/spec/dummy/public/uploads/repo_file/file/8604/textfile.txt +1 -0
  1708. data/spec/dummy/public/uploads/repo_file/file/8606/textfile.txt +1 -0
  1709. data/spec/dummy/public/uploads/repo_file/file/8608/textfile.txt +1 -0
  1710. data/spec/dummy/public/uploads/repo_file/file/8610/textfile.txt +1 -0
  1711. data/spec/dummy/public/uploads/repo_file/file/8612/textfile.txt +1 -0
  1712. data/spec/dummy/public/uploads/repo_file/file/8614/textfile.txt +1 -0
  1713. data/spec/dummy/public/uploads/repo_file/file/8616/textfile.txt +1 -0
  1714. data/spec/dummy/public/uploads/repo_file/file/8618/textfile.txt +1 -0
  1715. data/spec/dummy/public/uploads/repo_file/file/8620/textfile.txt +1 -0
  1716. data/spec/dummy/public/uploads/repo_file/file/8622/textfile.txt +1 -0
  1717. data/spec/dummy/public/uploads/repo_file/file/8624/textfile.txt +1 -0
  1718. data/spec/dummy/public/uploads/repo_file/file/8626/textfile.txt +1 -0
  1719. data/spec/dummy/public/uploads/repo_file/file/8628/textfile.txt +1 -0
  1720. data/spec/dummy/public/uploads/repo_file/file/8629/textfile.txt +1 -0
  1721. data/spec/dummy/public/uploads/repo_file/file/8630/textfile.txt +1 -0
  1722. data/spec/dummy/public/uploads/repo_file/file/8631/textfile.txt +1 -0
  1723. data/spec/dummy/public/uploads/repo_file/file/8632/textfile.txt +1 -0
  1724. data/spec/dummy/public/uploads/repo_file/file/8633/textfile.txt +1 -0
  1725. data/spec/dummy/public/uploads/repo_file/file/8634/textfile.txt +1 -0
  1726. data/spec/dummy/public/uploads/repo_file/file/8635/textfile.txt +1 -0
  1727. data/spec/dummy/public/uploads/repo_file/file/8636/textfile.txt +1 -0
  1728. data/spec/dummy/public/uploads/repo_file/file/8640/textfile.txt +1 -0
  1729. data/spec/dummy/public/uploads/repo_file/file/8642/textfile.txt +1 -0
  1730. data/spec/dummy/public/uploads/repo_file/file/8644/textfile.txt +1 -0
  1731. data/spec/dummy/public/uploads/repo_file/file/8646/textfile.txt +1 -0
  1732. data/spec/dummy/public/uploads/repo_file/file/8648/textfile.txt +1 -0
  1733. data/spec/dummy/public/uploads/repo_file/file/8650/textfile.txt +1 -0
  1734. data/spec/dummy/public/uploads/repo_file/file/8652/textfile.txt +1 -0
  1735. data/spec/dummy/public/uploads/repo_file/file/8654/textfile.txt +1 -0
  1736. data/spec/dummy/public/uploads/repo_file/file/8656/textfile.txt +1 -0
  1737. data/spec/dummy/public/uploads/repo_file/file/8658/textfile.txt +1 -0
  1738. data/spec/dummy/public/uploads/repo_file/file/8660/textfile.txt +1 -0
  1739. data/spec/dummy/public/uploads/repo_file/file/8662/textfile.txt +1 -0
  1740. data/spec/dummy/public/uploads/repo_file/file/8664/textfile.txt +1 -0
  1741. data/spec/dummy/public/uploads/repo_file/file/8666/textfile.txt +1 -0
  1742. data/spec/dummy/public/uploads/repo_file/file/8668/textfile.txt +1 -0
  1743. data/spec/dummy/public/uploads/repo_file/file/8670/textfile.txt +1 -0
  1744. data/spec/dummy/public/uploads/repo_file/file/8672/textfile.txt +1 -0
  1745. data/spec/dummy/public/uploads/repo_file/file/8674/textfile.txt +1 -0
  1746. data/spec/dummy/public/uploads/repo_file/file/8676/textfile.txt +1 -0
  1747. data/spec/dummy/public/uploads/repo_file/file/8678/textfile.txt +1 -0
  1748. data/spec/dummy/public/uploads/repo_file/file/8680/textfile.txt +1 -0
  1749. data/spec/dummy/public/uploads/repo_file/file/8682/textfile.txt +1 -0
  1750. data/spec/dummy/public/uploads/repo_file/file/8684/textfile.txt +1 -0
  1751. data/spec/dummy/public/uploads/repo_file/file/8686/textfile.txt +1 -0
  1752. data/spec/dummy/public/uploads/repo_file/file/8688/textfile.txt +1 -0
  1753. data/spec/dummy/public/uploads/repo_file/file/8689/textfile.txt +1 -0
  1754. data/spec/dummy/public/uploads/repo_file/file/8690/textfile.txt +1 -0
  1755. data/spec/dummy/public/uploads/repo_file/file/8691/textfile.txt +1 -0
  1756. data/spec/dummy/public/uploads/repo_file/file/8692/textfile.txt +1 -0
  1757. data/spec/dummy/public/uploads/repo_file/file/8693/textfile.txt +1 -0
  1758. data/spec/dummy/public/uploads/repo_file/file/8694/textfile.txt +1 -0
  1759. data/spec/dummy/public/uploads/repo_file/file/8695/textfile.txt +1 -0
  1760. data/spec/dummy/public/uploads/repo_file/file/8696/textfile.txt +1 -0
  1761. data/spec/dummy/public/uploads/repo_file/file/8700/textfile.txt +1 -0
  1762. data/spec/dummy/public/uploads/repo_file/file/8702/textfile.txt +1 -0
  1763. data/spec/dummy/public/uploads/repo_file/file/8704/textfile.txt +1 -0
  1764. data/spec/dummy/public/uploads/repo_file/file/8706/textfile.txt +1 -0
  1765. data/spec/dummy/public/uploads/repo_file/file/8708/textfile.txt +1 -0
  1766. data/spec/dummy/public/uploads/repo_file/file/8710/textfile.txt +1 -0
  1767. data/spec/dummy/public/uploads/repo_file/file/8712/textfile.txt +1 -0
  1768. data/spec/dummy/public/uploads/repo_file/file/8714/textfile.txt +1 -0
  1769. data/spec/dummy/public/uploads/repo_file/file/8716/textfile.txt +1 -0
  1770. data/spec/dummy/public/uploads/repo_file/file/8718/textfile.txt +1 -0
  1771. data/spec/dummy/public/uploads/repo_file/file/8720/textfile.txt +1 -0
  1772. data/spec/dummy/public/uploads/repo_file/file/8722/textfile.txt +1 -0
  1773. data/spec/dummy/public/uploads/repo_file/file/8724/textfile.txt +1 -0
  1774. data/spec/dummy/public/uploads/repo_file/file/8726/textfile.txt +1 -0
  1775. data/spec/dummy/public/uploads/repo_file/file/8728/textfile.txt +1 -0
  1776. data/spec/dummy/public/uploads/repo_file/file/8730/textfile.txt +1 -0
  1777. data/spec/dummy/public/uploads/repo_file/file/8732/textfile.txt +1 -0
  1778. data/spec/dummy/public/uploads/repo_file/file/8734/textfile.txt +1 -0
  1779. data/spec/dummy/public/uploads/repo_file/file/8736/textfile.txt +1 -0
  1780. data/spec/dummy/public/uploads/repo_file/file/8738/textfile.txt +1 -0
  1781. data/spec/dummy/public/uploads/repo_file/file/8740/textfile.txt +1 -0
  1782. data/spec/dummy/public/uploads/repo_file/file/8742/textfile.txt +1 -0
  1783. data/spec/dummy/public/uploads/repo_file/file/8744/textfile.txt +1 -0
  1784. data/spec/dummy/public/uploads/repo_file/file/8746/textfile.txt +1 -0
  1785. data/spec/dummy/public/uploads/repo_file/file/8748/textfile.txt +1 -0
  1786. data/spec/dummy/public/uploads/repo_file/file/8749/textfile.txt +1 -0
  1787. data/spec/dummy/public/uploads/repo_file/file/8750/textfile.txt +1 -0
  1788. data/spec/dummy/public/uploads/repo_file/file/8751/textfile.txt +1 -0
  1789. data/spec/dummy/public/uploads/repo_file/file/8752/textfile.txt +1 -0
  1790. data/spec/dummy/public/uploads/repo_file/file/8753/textfile.txt +1 -0
  1791. data/spec/dummy/public/uploads/repo_file/file/8754/textfile.txt +1 -0
  1792. data/spec/dummy/public/uploads/repo_file/file/8755/textfile.txt +1 -0
  1793. data/spec/dummy/public/uploads/repo_file/file/8756/textfile.txt +1 -0
  1794. data/spec/dummy/public/uploads/repo_file/file/8757/textfile.txt +1 -0
  1795. data/spec/dummy/public/uploads/repo_file/file/8758/textfile.txt +1 -0
  1796. data/spec/dummy/public/uploads/repo_file/file/8770/textfile.txt +1 -0
  1797. data/spec/dummy/public/uploads/repo_file/file/8772/textfile.txt +1 -0
  1798. data/spec/dummy/public/uploads/repo_file/file/8776/textfile.txt +1 -0
  1799. data/spec/dummy/public/uploads/repo_file/file/8779/textfile.txt +1 -0
  1800. data/spec/dummy/public/uploads/repo_file/file/8781/textfile.txt +1 -0
  1801. data/spec/dummy/public/uploads/repo_file/file/8782/textfile.txt +1 -0
  1802. data/spec/dummy/public/uploads/repo_file/file/8784/textfile.txt +1 -0
  1803. data/spec/dummy/public/uploads/repo_file/file/8790/textfile.txt +1 -0
  1804. data/spec/dummy/public/uploads/repo_file/file/8792/textfile.txt +1 -0
  1805. data/spec/dummy/public/uploads/repo_file/file/8794/textfile.txt +1 -0
  1806. data/spec/dummy/public/uploads/repo_file/file/8796/textfile.txt +1 -0
  1807. data/spec/dummy/public/uploads/repo_file/file/8798/textfile.txt +1 -0
  1808. data/spec/dummy/public/uploads/repo_file/file/8800/textfile.txt +1 -0
  1809. data/spec/dummy/public/uploads/repo_file/file/8802/textfile.txt +1 -0
  1810. data/spec/dummy/public/uploads/repo_file/file/8804/textfile.txt +1 -0
  1811. data/spec/dummy/public/uploads/repo_file/file/8806/textfile.txt +1 -0
  1812. data/spec/dummy/public/uploads/repo_file/file/8809/textfile.txt +1 -0
  1813. data/spec/dummy/public/uploads/repo_file/file/8810/textfile.txt +1 -0
  1814. data/spec/dummy/public/uploads/repo_file/file/8812/textfile.txt +1 -0
  1815. data/spec/dummy/public/uploads/repo_file/file/8818/textfile.txt +1 -0
  1816. data/spec/dummy/public/uploads/repo_file/file/8823/textfile.txt +1 -0
  1817. data/spec/dummy/public/uploads/repo_file/file/8825/textfile.txt +1 -0
  1818. data/spec/dummy/public/uploads/repo_file/file/8827/textfile.txt +1 -0
  1819. data/spec/dummy/public/uploads/repo_file/file/8829/textfile.txt +1 -0
  1820. data/spec/dummy/public/uploads/repo_file/file/8831/textfile.txt +1 -0
  1821. data/spec/dummy/public/uploads/repo_file/file/8837/textfile.txt +1 -0
  1822. data/spec/dummy/public/uploads/repo_file/file/8840/textfile.txt +1 -0
  1823. data/spec/dummy/public/uploads/repo_file/file/8841/textfile.txt +1 -0
  1824. data/spec/dummy/public/uploads/repo_file/file/8842/textfile.txt +1 -0
  1825. data/spec/dummy/public/uploads/repo_file/file/8844/textfile.txt +1 -0
  1826. data/spec/dummy/public/uploads/repo_file/file/8845/textfile.txt +1 -0
  1827. data/spec/dummy/public/uploads/repo_file/file/8846/textfile.txt +1 -0
  1828. data/spec/dummy/public/uploads/repo_file/file/8847/textfile.txt +1 -0
  1829. data/spec/dummy/public/uploads/repo_file/file/8848/textfile.txt +1 -0
  1830. data/spec/dummy/public/uploads/repo_file/file/8849/textfile.txt +1 -0
  1831. data/spec/dummy/public/uploads/repo_file/file/8850/textfile.txt +1 -0
  1832. data/spec/dummy/public/uploads/repo_file/file/8851/textfile.txt +1 -0
  1833. data/spec/dummy/public/uploads/repo_file/file/8852/textfile.txt +1 -0
  1834. data/spec/dummy/public/uploads/repo_file/file/8853/textfile.txt +1 -0
  1835. data/spec/dummy/public/uploads/repo_file/file/8854/textfile.txt +1 -0
  1836. data/spec/dummy/public/uploads/repo_file/file/8855/textfile.txt +1 -0
  1837. data/spec/dummy/public/uploads/repo_file/file/8856/textfile.txt +1 -0
  1838. data/spec/dummy/public/uploads/repo_file/file/8868/textfile.txt +1 -0
  1839. data/spec/dummy/public/uploads/repo_file/file/8870/textfile.txt +1 -0
  1840. data/spec/dummy/public/uploads/repo_file/file/8874/textfile.txt +1 -0
  1841. data/spec/dummy/public/uploads/repo_file/file/8877/textfile.txt +1 -0
  1842. data/spec/dummy/public/uploads/repo_file/file/8879/textfile.txt +1 -0
  1843. data/spec/dummy/public/uploads/repo_file/file/8880/textfile.txt +1 -0
  1844. data/spec/dummy/public/uploads/repo_file/file/8882/textfile.txt +1 -0
  1845. data/spec/dummy/public/uploads/repo_file/file/8888/textfile.txt +1 -0
  1846. data/spec/dummy/public/uploads/repo_file/file/8890/textfile.txt +1 -0
  1847. data/spec/dummy/public/uploads/repo_file/file/8892/textfile.txt +1 -0
  1848. data/spec/dummy/public/uploads/repo_file/file/8894/textfile.txt +1 -0
  1849. data/spec/dummy/public/uploads/repo_file/file/8896/textfile.txt +1 -0
  1850. data/spec/dummy/public/uploads/repo_file/file/8898/textfile.txt +1 -0
  1851. data/spec/dummy/public/uploads/repo_file/file/8900/textfile.txt +1 -0
  1852. data/spec/dummy/public/uploads/repo_file/file/8902/textfile.txt +1 -0
  1853. data/spec/dummy/public/uploads/repo_file/file/8904/textfile.txt +1 -0
  1854. data/spec/dummy/public/uploads/repo_file/file/8907/textfile.txt +1 -0
  1855. data/spec/dummy/public/uploads/repo_file/file/8908/textfile.txt +1 -0
  1856. data/spec/dummy/public/uploads/repo_file/file/8910/textfile.txt +1 -0
  1857. data/spec/dummy/public/uploads/repo_file/file/8916/textfile.txt +1 -0
  1858. data/spec/dummy/public/uploads/repo_file/file/8921/textfile.txt +1 -0
  1859. data/spec/dummy/public/uploads/repo_file/file/8923/textfile.txt +1 -0
  1860. data/spec/dummy/public/uploads/repo_file/file/8925/textfile.txt +1 -0
  1861. data/spec/dummy/public/uploads/repo_file/file/8927/textfile.txt +1 -0
  1862. data/spec/dummy/public/uploads/repo_file/file/8929/textfile.txt +1 -0
  1863. data/spec/dummy/public/uploads/repo_file/file/8935/textfile.txt +1 -0
  1864. data/spec/dummy/public/uploads/repo_file/file/8938/textfile.txt +1 -0
  1865. data/spec/dummy/public/uploads/repo_file/file/8939/textfile.txt +1 -0
  1866. data/spec/dummy/public/uploads/repo_file/file/8940/textfile.txt +1 -0
  1867. data/spec/dummy/public/uploads/repo_file/file/8942/textfile.txt +1 -0
  1868. data/spec/dummy/public/uploads/repo_file/file/8943/textfile.txt +1 -0
  1869. data/spec/dummy/public/uploads/repo_file/file/8944/textfile.txt +1 -0
  1870. data/spec/dummy/public/uploads/repo_file/file/8945/textfile.txt +1 -0
  1871. data/spec/dummy/public/uploads/repo_file/file/8946/textfile.txt +1 -0
  1872. data/spec/dummy/public/uploads/repo_file/file/8947/textfile.txt +1 -0
  1873. data/spec/dummy/public/uploads/repo_file/file/8948/textfile.txt +1 -0
  1874. data/spec/dummy/public/uploads/repo_file/file/8949/textfile.txt +1 -0
  1875. data/spec/dummy/public/uploads/repo_file/file/8950/textfile.txt +1 -0
  1876. data/spec/dummy/public/uploads/repo_file/file/8951/textfile.txt +1 -0
  1877. data/spec/dummy/public/uploads/repo_file/file/8952/textfile.txt +1 -0
  1878. data/spec/dummy/public/uploads/repo_file/file/8953/textfile.txt +1 -0
  1879. data/spec/dummy/public/uploads/repo_file/file/8954/textfile.txt +1 -0
  1880. data/spec/dummy/public/uploads/repo_file/file/8966/textfile.txt +1 -0
  1881. data/spec/dummy/public/uploads/repo_file/file/8968/textfile.txt +1 -0
  1882. data/spec/dummy/public/uploads/repo_file/file/8972/textfile.txt +1 -0
  1883. data/spec/dummy/public/uploads/repo_file/file/8975/textfile.txt +1 -0
  1884. data/spec/dummy/public/uploads/repo_file/file/8977/textfile.txt +1 -0
  1885. data/spec/dummy/public/uploads/repo_file/file/8978/textfile.txt +1 -0
  1886. data/spec/dummy/public/uploads/repo_file/file/8980/textfile.txt +1 -0
  1887. data/spec/dummy/public/uploads/repo_file/file/8986/textfile.txt +1 -0
  1888. data/spec/dummy/public/uploads/repo_file/file/8988/textfile.txt +1 -0
  1889. data/spec/dummy/public/uploads/repo_file/file/8990/textfile.txt +1 -0
  1890. data/spec/dummy/public/uploads/repo_file/file/8992/textfile.txt +1 -0
  1891. data/spec/dummy/public/uploads/repo_file/file/8994/textfile.txt +1 -0
  1892. data/spec/dummy/public/uploads/repo_file/file/8996/textfile.txt +1 -0
  1893. data/spec/dummy/public/uploads/repo_file/file/8998/textfile.txt +1 -0
  1894. data/spec/dummy/public/uploads/repo_file/file/9000/textfile.txt +1 -0
  1895. data/spec/dummy/public/uploads/repo_file/file/9002/textfile.txt +1 -0
  1896. data/spec/dummy/public/uploads/repo_file/file/9005/textfile.txt +1 -0
  1897. data/spec/dummy/public/uploads/repo_file/file/9006/textfile.txt +1 -0
  1898. data/spec/dummy/public/uploads/repo_file/file/9008/textfile.txt +1 -0
  1899. data/spec/dummy/public/uploads/repo_file/file/9014/textfile.txt +1 -0
  1900. data/spec/dummy/public/uploads/repo_file/file/9019/textfile.txt +1 -0
  1901. data/spec/dummy/public/uploads/repo_file/file/9021/textfile.txt +1 -0
  1902. data/spec/dummy/public/uploads/repo_file/file/9023/textfile.txt +1 -0
  1903. data/spec/dummy/public/uploads/repo_file/file/9025/textfile.txt +1 -0
  1904. data/spec/dummy/public/uploads/repo_file/file/9027/textfile.txt +1 -0
  1905. data/spec/dummy/public/uploads/repo_file/file/9033/textfile.txt +1 -0
  1906. data/spec/dummy/public/uploads/repo_file/file/9036/textfile.txt +1 -0
  1907. data/spec/dummy/public/uploads/repo_file/file/9037/textfile.txt +1 -0
  1908. data/spec/dummy/public/uploads/repo_file/file/9038/textfile.txt +1 -0
  1909. data/spec/dummy/public/uploads/repo_file/file/9040/textfile.txt +1 -0
  1910. data/spec/dummy/public/uploads/repo_file/file/9041/textfile.txt +1 -0
  1911. data/spec/dummy/public/uploads/repo_file/file/9042/textfile.txt +1 -0
  1912. data/spec/dummy/public/uploads/repo_file/file/9043/textfile.txt +1 -0
  1913. data/spec/dummy/public/uploads/repo_file/file/9044/textfile.txt +1 -0
  1914. data/spec/dummy/public/uploads/repo_file/file/9045/textfile.txt +1 -0
  1915. data/spec/dummy/public/uploads/repo_file/file/9046/textfile.txt +1 -0
  1916. data/spec/dummy/public/uploads/repo_file/file/9047/textfile.txt +1 -0
  1917. data/spec/dummy/public/uploads/repo_file/file/9048/textfile.txt +1 -0
  1918. data/spec/dummy/public/uploads/repo_file/file/9049/textfile.txt +1 -0
  1919. data/spec/dummy/public/uploads/repo_file/file/9050/textfile.txt +1 -0
  1920. data/spec/factories/group.rb +7 -7
  1921. data/spec/factories/repo_file.rb +12 -12
  1922. data/spec/factories/repo_folder.rb +7 -7
  1923. data/spec/factories/user.rb +13 -13
  1924. data/spec/has_repository_spec.rb +299 -274
  1925. data/spec/models/associations_spec.rb +93 -93
  1926. data/spec/models/repository_spec.rb +261 -245
  1927. data/spec/models/share_spec.rb +67 -67
  1928. data/spec/support/spec_test_helper.rb +4 -4
  1929. metadata +3817 -22
checksums.yaml CHANGED
@@ -1,7 +1,15 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: d95117cd7da5b071640d9574867eb449140c3a2c
4
- data.tar.gz: 4c09ec6af2595111d396b71552dfa5ebe77a9765
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ YzFjNTMxNzliZGJkM2Q4Yjc4NjM1ZGFmZTMwMTUzZTBkZDA1ZjMzMA==
5
+ data.tar.gz: !binary |-
6
+ N2Y5NThkOWNjZWIwMmE3NmJmZmQ4ZTI1Yjc2OTJlM2EwODg4NWQyOA==
5
7
  SHA512:
6
- metadata.gz: e25618753a71cc94e52c14db8d136565b7a08ac9c35ce1d4bba5ed3c7e48edcb0d75751aa4a624bdf8ae606f3af13dd2633ec4732237d41477e0a8ec1e729f98
7
- data.tar.gz: a4d12d3a03d4676f30c51ac51e2b3537d10dfabda6b5e9fe99961c1e6cc4db9ab84c9908a049a94be05f0cc29fcc938f8bbcf1e203633d0e9403fb0c37299e07
8
+ metadata.gz: !binary |-
9
+ NTAzOWM0ZWM1OWQ3YzljODBkNzc5NWM2NmNhZjZlMTZlMzU3YTZkOGQ1YzJl
10
+ NTgyZWRjZTU2NzNmNDUzYTI4YmM4MWFjN2EyOTliMzkwYzg5NjNiNmM3MjQ2
11
+ ODBhNTcwMTcwZjkwODc4YzU3ODJkZjdmYmRhNzA3MDJlMGRkYzE=
12
+ data.tar.gz: !binary |-
13
+ ZjA0NjMyYmVmOTExZmQ2NWVlYjM5NGQyYjgxMzUxNDYyYmMzNWQ0M2M0OWMz
14
+ NzRjOTE2MjlmMjZiZGM4N2M1NWU2NzZjY2YyYzQ3OTBiNjhlMmVhOTdlNzM4
15
+ ODFkZTE2MTQ4NGYzNjUwMjk2NjEyOGU3NDlmODQzYTVkZjJkZGE=
data/.rspec CHANGED
@@ -1 +1 @@
1
- --color
1
+ --color
data/README.md CHANGED
@@ -1,459 +1,459 @@
1
- WORK IN PROGRESS, but it already works !
2
-
3
- Ruby on Rails plugin (gem) for managing repositories (files/folders/permissions/sharing).
4
-
5
- # RepositoryManager [![Gem Version](https://badge.fury.io/rb/repository-manager.png)](http://badge.fury.io/rb/repository-manager)
6
-
7
- This gem add functionalities to manage repositories. Each instance (users, groups, etc..) can have it own repository (with files and folders). It can manage them (edit, remove, add, etc) and share them with other objects.
8
-
9
- This project is based on the need for a repository manager system for [Collaide](https://github.com/facenord-sud/collaide). A system for easily create/delete files and folders in a repository. For sharing these "repo items" easily with other object with a flexible and complete authorisations management.
10
-
11
- Instead of creating my core repository manager system heavily
12
- dependent on our development, I'm trying to implement a generic and potent repository gem.
13
-
14
- After looking for a good gem to use I noticed the lack of repository gems
15
- and flexibility in them. RepositoryManager tries to be the more flexible possible.
16
-
17
- This gem is my informatics project for the Master in [University of Lausanne (CH)](http://www.unil.ch/index.html).
18
-
19
- ## Installation
20
-
21
-
22
- Add to your Gemfile:
23
-
24
- ```ruby
25
- gem 'repository-manager'
26
- ```
27
-
28
- Then run:
29
-
30
- ```sh
31
- $ bundle update
32
- ```
33
-
34
- Run install script:
35
-
36
- ```sh
37
- $ rails g repository_manager:install
38
- ```
39
-
40
- And don't forget to migrate your database:
41
-
42
- ```sh
43
- $ rake db:migrate
44
- ```
45
-
46
- ## Settings
47
-
48
- You can edit the RepositoryManager settings in the initializer (/config/initializer/repository_manager.rb).
49
-
50
- ```ruby
51
- RepositoryManager.setup do |config|
52
-
53
- # Default permissions that an object has on the repo_item after a sharing.
54
- config.default_repo_item_permissions = { can_read: true, can_create: false, can_update: false, can_delete: false, can_sharing: false }
55
-
56
- # Default permissions that an object has when he is added in a sharing.
57
- config.default_sharing_permissions = { can_add: false, can_remove: false }
58
-
59
- # Default path for generating the zip file when a user want to download a folder
60
- # Default is : "download/#{member.class.to_s.underscore}/#{member.id}/#{self.class.to_s.underscore}/#{self.id}/"
61
- #config.default_zip_path = true
62
- end
63
- ```
64
-
65
- For instance, if you want that a default sharing is totally free (for edit, delete, etc), just put all default parameters to `true` :
66
-
67
- ```ruby
68
- RepositoryManager.setup do |config|
69
- config.default_repo_item_permissions = { can_read: true, can_create: true, can_update: true, can_delete: true, can_share: true }
70
- config.default_sharing_permissions = { can_add: true, can_remove: true }
71
- end
72
- ```
73
-
74
-
75
- See the chapter [Authorisations](#authorisations) for more details about the permissions.
76
-
77
- ## Preparing your models
78
-
79
- You can choose witch model can have repository.
80
-
81
- In your model:
82
-
83
- ```ruby
84
- class User < ActiveRecord::Base
85
- has_repository
86
- end
87
- ```
88
-
89
- You are not limited to the User model. You can use RepositoryManager in any other model and use it in several different models. If you have Groups and Houses in your application and you want to exchange `repo_items` as if they were the same, just add `has_repository` to each one and you will be able to sharing `repo_files`/`repo_folders` groups-groups, groups-users, users-groups and users-users. Of course, you can extend it for as many classes as you need.
90
-
91
- Example:
92
-
93
- ```ruby
94
- class User < ActiveRecord::Base
95
- has_repository
96
- end
97
- ```
98
-
99
- ```ruby
100
- class Group < ActiveRecord::Base
101
- has_repository
102
- end
103
- ```
104
-
105
- ## How to use RepositoryManager
106
-
107
- ### Introduction
108
-
109
- A `repo_item` is an item in a repository, it can be:
110
- - A file (`repo_file`, class name : `RepositoryManager::RepoFile`)
111
- - A folder (`repo_folder`, class name : `RepositoryManager::RepoFolder`).
112
-
113
- A folder can contains files and folders. Like in a real tree files and folders.
114
-
115
- A few methods are written in those two ways :
116
- - method(arg, options)
117
- - method!(arg, options) (note the "!")
118
-
119
- The two methods do the same, but the one with the "!" returns an Exception error if it is a problem (AuthorisationException or RepositoryManagerException for instance) and the method without "!" return false if it has a problem.
120
-
121
- ### How can I create/delete/move a repo_item (file or folder)
122
-
123
- You just have to call the `has_repository` methods `create_file`, `create_folder`, `move_repo_item` or `delete_repo_item`.
124
-
125
- ```ruby
126
- # user1 wants to create a folder in his repository
127
-
128
- # Create a root folder on the user1 repository (you can have how many roots as you want)
129
- source_folder = user1.create_folder('Root folder')
130
-
131
- # user1 own repository :
132
- # -- 'Root folder'
133
-
134
- # source_folder is the directory in witch user1 wants to create the folder 'The new folder'
135
- the_new_folder = user1.create_folder('The new folder', source_folder: source_folder)
136
-
137
- # user1 own repository :
138
- # |-- 'Root folder'
139
- # | |-- 'The new folder'
140
-
141
- # Now we want to add a file into the_new_folder
142
- # Note : user1 needs the ':can_create => true' permission in the folder : the_new_folder (else the method returns `false`).
143
- user1.create_file(params[:file], source_folder: the_new_folder)
144
- # OR
145
- user1.create_file(File.open('somewhere'), source_folder: the_new_folder)
146
- # OR
147
- repo_file = RepositoryManager::RepoFile.new
148
- repo_file.file = your_file
149
- user1.create_file(repo_file, source_folder: the_new_folder)
150
-
151
-
152
- # user1 own repository :
153
- # |-- 'Root folder'
154
- # | |-- 'The new folder'
155
- # | | |-- 'file.txt'
156
-
157
- # user1 want to create a file on the root of his repository
158
- file2 = user1.create_file(params[:file2])
159
-
160
- # user1 own repository :
161
- # |-- 'Root folder'
162
- # | |-- 'The new folder'
163
- # | | |-- 'file.txt'
164
- # |-- 'file2.jpg'
165
-
166
- # user1 want to create a folder on the root of his repository
167
- test_folder = user1.create_folder('Test folder')
168
-
169
- # user1 own repository :
170
- # |-- 'Root folder'
171
- # | |-- 'The new folder'
172
- # | | |-- 'file.txt'
173
- # |-- 'file2.jpg'
174
- # |-- 'Test folder'
175
-
176
- # user1 want to move 'The new folder' in 'Test folder'
177
- user1.move_repo_item(the_new_folder, source_folder: test_folder)
178
-
179
- # user1 own repository :
180
- # |-- 'Root folder'
181
- # |-- 'file2.jpg'
182
- # |-- 'Test folder'
183
- # | |-- 'The new folder'
184
- # | | |-- 'file.txt'
185
-
186
- # user1 want to rename 'The new folder' to 'The renamed folder'
187
- user1.rename_repo_item(the_new_folder, 'The renamed folder')
188
-
189
- # user1 own repository :
190
- # |-- 'Root folder'
191
- # |-- 'file2.jpg'
192
- # |-- 'Test folder'
193
- # | |-- 'The renamed folder'
194
- # | | |-- 'file.txt'
195
-
196
- # Delete a repo_item
197
- # Note : user1 needs the ':can_delete => true' permission in the folder : the_new_folder (else the method returns `false`).
198
- user1.delete_repo_item(test_folder)
199
-
200
- # user1 own repository :
201
- # |-- 'Root folder'
202
- # |-- 'file2.jpg'
203
-
204
- user1.delete_repo_item(file2)
205
-
206
- # user1 own repository :
207
- # |-- 'Root folder'
208
-
209
- ```
210
-
211
- If a user (sender of the item) send a file or folder into a group (owner of this item), you can specify the owner and the sender like this :
212
-
213
- ```ruby
214
- # user1 wants to create a folder and a file into group1
215
- folder = group1.create_folder('Folder created by user1', sender: user1)
216
-
217
- folder.owner # Returns group1
218
- folder.sender # Returns user1
219
-
220
- # Now he send the file into the folder
221
- file = group1.create_file(params[:file], source_folder: folder, sender: user1)
222
-
223
- file.owner # Returns group1
224
- file.sender # Returns user1
225
-
226
- # If you don't specify the sender, the owner becomes the sender
227
-
228
- ```
229
-
230
- WARNING : There is no verification if the user has the authorisation to create a file or folder into this group. You have to check this in your controller ! The fact that user1 is the sender of this folder gives him NO AUTHORISATION on it !
231
-
232
- ### How can I share a repo_item (file/folder)
233
-
234
- Now, user1 want to share his folder 'The new folder' with a Group object `group1` et another User object `user2`. You can use the `has_repository` method `share(repo_item, member, options = nil)`.
235
-
236
-
237
- ```ruby
238
- # user1 wants to share the_new_folder with group1 and user2
239
-
240
- members = []
241
- # You can add other instances (who `has_repository`) in this array to share with more than one instance
242
- member << group1
243
- members << user2
244
-
245
- sharing = user1.share(the_new_folder, members)
246
-
247
- # If you want to customize your sharing options, you can do it like this:
248
- options = {sharing_permissions: {can_add: true, can_remove: true}, repo_item_permissions: {can_read: true, can_create: true, can_update: true, can_delete: true, can_share: true}}
249
-
250
- sharing = user1.share(the_new_folder, members, options)
251
- ```
252
-
253
- `repo_item_permissions` specifies what kind of permissions you give on the repo_item in a specific sharing.
254
-
255
- `sharing_permissions` specifies if the member selected can add or remove other members in this sharing.
256
-
257
- See the chapter [Authorisations](#authorisations) for more details.
258
-
259
- ### Repository Manager and the nested sharing
260
-
261
- Repository Manager actually don't accept nested sharing.
262
-
263
- ```ruby
264
-
265
- parent = @user1.create_folder('Parent')
266
- nested = @user1.create_folder('Nested', parent)
267
- children = @user1.create_folder('Children', nested)
268
-
269
- # @user1 own repository :
270
- # |-- 'Parent'
271
- # | |-- 'Nested'
272
- # | | |-- 'Children'
273
-
274
- @user1.share(nested, @user2)
275
-
276
- nested.has_nested_sharing? # Returns false (because `nested` is shared but there is no nested sharing)
277
- parent.has_nested_sharing? # Returns true (because there is a sharing on one of his descendants)
278
- children.has_nested_sharing? # Returns true (because there is a sharing on one of his ancestors)
279
-
280
- # Here we can't share 'Parent' or 'Children' because it already exist a nested sharing.
281
- @user1.share(parent, @user2) # Returns false
282
- @user1.share!(parent, @user2) # Raise a NestedSharingException (note the "!")
283
- @user1.share!(children, @user2) # Raise a NestedSharingException (note the "!")
284
- ```
285
-
286
- ### How can I see my repo_items
287
-
288
- You can have two kind of repo_items:
289
- - Your own repo_items
290
- - The repo_items shared with you.
291
-
292
- ```ruby
293
- # user1 want to get his own repository
294
- user1.repo_items.all # => You get the repo_items that user1 has created
295
-
296
- # user2 want to get his shared repo_items
297
- user2.shared_repo_items.all
298
- ```
299
-
300
- If you only want to have the folders or the files, you can do it like that:
301
-
302
- ```ruby
303
- # return only the own folders of user1
304
- user1.repo_items.folders.all # => You get the repo_folders that user1 has created
305
-
306
- # user2 want to get his shared repo_files
307
- user2.shared_repo_items.files.all
308
- ```
309
-
310
- Recall: a repo_item can be:
311
- - A file
312
- - A folder
313
-
314
- ```ruby
315
- # We want to know if the object repo_item is a file or a folder:
316
- if repo_item.is_folder
317
- repo_item.name #=> Returns the name of the folder (for instance : 'New folder').
318
- elsif repo_item.is_file?
319
- repo_item.name #=> Returns the name of the file (for instance : 'file.png').
320
- # Here is the file
321
- repo_item.file.url # => '/url/to/file.png'
322
- repo_item.file.current_path # => 'path/to/file.png'
323
- end
324
- ```
325
-
326
- For file details, more infos on [the documentation of the carrierwave gem](https://github.com/carrierwaveuploader/carrierwave).
327
-
328
-
329
- ### How can I manage a sharing
330
-
331
-
332
- If it has the authorisation, an object can add members to a sharing.
333
-
334
- ```ruby
335
- # user1 want to add members to his sharing
336
- # NOTE: The action is done only if user1 has the ':can_add' permission.
337
- user1.can_add_to?(sharing) # => true
338
-
339
- # Add members
340
- members = []
341
- members << user3
342
- members << group2
343
- ...
344
-
345
- user1.add_members_to(sharing, members)
346
-
347
- # You can change the default sharing permissions options :
348
- options = {can_add: true, can_remove: false}
349
- user1.add_members_to(sharing, members, options)
350
-
351
-
352
- # Here user3 and group2 can add members in this sharing, but they can't remove a member.
353
- group2.can_add_to?(sharing) # => true
354
- group2.can_remove_from?(sharing) # => false
355
-
356
- # If user2 add a member in the sharing, he can choose if the permission ':can_add' is true or false, but he can't put ':can_remove' to true (because he don't have this permission himself).
357
- ```
358
-
359
- If an object has the authorisation, it can remove members from a sharing, else the method return `false`.
360
-
361
- ```ruby
362
- # user1 want to remove group2 from the sharing `sharing`
363
- user1.remove_members_from(sharing, group2) # The second parameter can be an object or an array of object
364
- ```
365
-
366
- You can directly work with the `sharing`. Be careful, there is NO authorisation control !
367
-
368
- ```ruby
369
- # Add a member to the sharing `sharing`
370
- sharing.add_members(member)
371
- # Or with options :
372
- sharing.add_members(member, {can_add: true, can_remove: false})
373
-
374
-
375
- # Remove members from the sharing
376
- sharing.remove_members({user2, group1})
377
- ```
378
-
379
- ### Authorisations
380
-
381
- #### Repository authorisations
382
-
383
- The owner of a `repo_item` (file or folder) has all the authorisations on it. When he share this `repo_item`, he can choose what authorisation he gives to the share. The authorisations are :
384
- - `can_read?(repo_item)` : The member can read (=download) this file/folder.
385
- - `can_create?(repo_item)` : Can create in the repo_item (Note: if repo_item is nil (= root), always true).
386
- - `can_update?(repo_item)` : Can update a repo_item.
387
- - `can_delete?(repo_item)` : Can delete a repo_item.
388
- - `can_share?(repo_item)` : Can share a repo_item.
389
-
390
- To check if a user has one of this authorisation, you just have to write : `user1.can_read?(repo_item)`, `user1.can_share?(repo_item)`, etc (it returns `true` or `false`).
391
-
392
- NOTICE : An object who can share a repo_item, can't set new permissions that it doesn't have.
393
- For instance: `user3` has a sharing of `repo_item1` with `:can_delete => false` and `:can_share => true`. He can share `repo_item1` with `user4`, but he can't put `:can_delete => true` in this new share.
394
-
395
- You can get all the authorisations with this method: `user1.get_authorisations(repo_item)`
396
-
397
- ```ruby
398
- # Gets the repo authorisations
399
- # Return false if the entity has not the authorisation to share this rep
400
- # Return true if the entity can share this rep with all the authorisations
401
- # Return an Array if the entity can share but with restriction
402
- # Return true if the repo_item is nil (he as all authorisations on his own rep)
403
- def get_authorisations(repo_item = nil)
404
- [...]
405
- end
406
- ```
407
-
408
- #### Sharing permissions
409
-
410
- You can manage the permissions of a member in a sharing. The owner of the sharing has all the permissions. The permissions are:
411
- - `can_add_to?(sharing)` : The member can add a new instance in this sharing.
412
- - `can_remove_from?(sharing)` : Can remove an instance from this sharing.
413
-
414
- To check if the object can add or remove an instance in the sharing, just write : `group1.can_add_to?(sharing)` or `group1.can_remove_from?(sharing)` (it returns `true` or `false`).
415
-
416
- Like the repo_item authorisations, you can get the sharing authorisations with : `group1.get_sharing_authorisations(sharing)`.
417
-
418
- ### Download a repository
419
-
420
- RepositoryManager make the download of a repo_item easy. If the user want to download a file, the `user.download(repo_item)` method returns you the path of the file (if the user `can_read` it).
421
- If it want to download a folder, it automatically generates a zip file with all the constant that the user can_read. The method returns the path of this zip file.
422
-
423
- ```ruby
424
- # user1 want to download the_folder
425
- path_to_zip = user1.download(the_folder)
426
-
427
- # Then you can do what you want with this path, you can use the send_file method from rails in your controller
428
- send_file path_to_zip
429
-
430
- # Don't forget to delete the zip file after the user has downloaded it (when his session end for instance)
431
- # I created a method how delete all the download file path
432
- user1.delete_download_path()
433
- ```
434
-
435
- You can directly download the folder (without permission control):
436
-
437
- ```ruby
438
- # Directly download all the folder
439
- path = the_folder.download
440
-
441
- # You can delete the zip file with
442
- the_folder.delete_zip
443
- ```
444
-
445
- ## TODO
446
-
447
- - Do the rename file method
448
- - Write the methods : copy, share_link.
449
- - Snapshot the file if possible
450
- - Versioning
451
- - ...
452
-
453
-
454
- ## License
455
-
456
- This project rocks and uses MIT-LICENSE.
457
-
458
- Created by Yves Baumann.
459
-
1
+ WORK IN PROGRESS, but it already works !
2
+
3
+ Ruby on Rails plugin (gem) for managing repositories (files/folders/permissions/sharing).
4
+
5
+ # RepositoryManager [![Gem Version](https://badge.fury.io/rb/repository-manager.png)](http://badge.fury.io/rb/repository-manager)
6
+
7
+ This gem add functionalities to manage repositories. Each instance (users, groups, etc..) can have it own repository (with files and folders). It can manage them (edit, remove, add, etc) and share them with other objects.
8
+
9
+ This project is based on the need for a repository manager system for [Collaide](https://github.com/facenord-sud/collaide). A system for easily create/delete files and folders in a repository. For sharing these "repo items" easily with other object with a flexible and complete authorisations management.
10
+
11
+ Instead of creating my core repository manager system heavily
12
+ dependent on our development, I'm trying to implement a generic and potent repository gem.
13
+
14
+ After looking for a good gem to use I noticed the lack of repository gems
15
+ and flexibility in them. RepositoryManager tries to be the more flexible possible.
16
+
17
+ This gem is my informatics project for the Master in [University of Lausanne (CH)](http://www.unil.ch/index.html).
18
+
19
+ ## Installation
20
+
21
+
22
+ Add to your Gemfile:
23
+
24
+ ```ruby
25
+ gem 'repository-manager'
26
+ ```
27
+
28
+ Then run:
29
+
30
+ ```sh
31
+ $ bundle update
32
+ ```
33
+
34
+ Run install script:
35
+
36
+ ```sh
37
+ $ rails g repository_manager:install
38
+ ```
39
+
40
+ And don't forget to migrate your database:
41
+
42
+ ```sh
43
+ $ rake db:migrate
44
+ ```
45
+
46
+ ## Settings
47
+
48
+ You can edit the RepositoryManager settings in the initializer (/config/initializer/repository_manager.rb).
49
+
50
+ ```ruby
51
+ RepositoryManager.setup do |config|
52
+
53
+ # Default permissions that an object has on the repo_item after a sharing.
54
+ config.default_repo_item_permissions = { can_read: true, can_create: false, can_update: false, can_delete: false, can_sharing: false }
55
+
56
+ # Default permissions that an object has when he is added in a sharing.
57
+ config.default_sharing_permissions = { can_add: false, can_remove: false }
58
+
59
+ # Default path for generating the zip file when a user want to download a folder
60
+ # Default is : "download/#{member.class.to_s.underscore}/#{member.id}/#{self.class.to_s.underscore}/#{self.id}/"
61
+ #config.default_zip_path = true
62
+ end
63
+ ```
64
+
65
+ For instance, if you want that a default sharing is totally free (for edit, delete, etc), just put all default parameters to `true` :
66
+
67
+ ```ruby
68
+ RepositoryManager.setup do |config|
69
+ config.default_repo_item_permissions = { can_read: true, can_create: true, can_update: true, can_delete: true, can_share: true }
70
+ config.default_sharing_permissions = { can_add: true, can_remove: true }
71
+ end
72
+ ```
73
+
74
+
75
+ See the chapter [Authorisations](#authorisations) for more details about the permissions.
76
+
77
+ ## Preparing your models
78
+
79
+ You can choose witch model can have repository.
80
+
81
+ In your model:
82
+
83
+ ```ruby
84
+ class User < ActiveRecord::Base
85
+ has_repository
86
+ end
87
+ ```
88
+
89
+ You are not limited to the User model. You can use RepositoryManager in any other model and use it in several different models. If you have Groups and Houses in your application and you want to exchange `repo_items` as if they were the same, just add `has_repository` to each one and you will be able to sharing `repo_files`/`repo_folders` groups-groups, groups-users, users-groups and users-users. Of course, you can extend it for as many classes as you need.
90
+
91
+ Example:
92
+
93
+ ```ruby
94
+ class User < ActiveRecord::Base
95
+ has_repository
96
+ end
97
+ ```
98
+
99
+ ```ruby
100
+ class Group < ActiveRecord::Base
101
+ has_repository
102
+ end
103
+ ```
104
+
105
+ ## How to use RepositoryManager
106
+
107
+ ### Introduction
108
+
109
+ A `repo_item` is an item in a repository, it can be:
110
+ - A file (`repo_file`, class name : `RepositoryManager::RepoFile`)
111
+ - A folder (`repo_folder`, class name : `RepositoryManager::RepoFolder`).
112
+
113
+ A folder can contains files and folders. Like in a real tree files and folders.
114
+
115
+ A few methods are written in those two ways :
116
+ - method(arg, options)
117
+ - method!(arg, options) (note the "!")
118
+
119
+ The two methods do the same, but the one with the "!" returns an Exception error if it is a problem (AuthorisationException or RepositoryManagerException for instance) and the method without "!" return false if it has a problem.
120
+
121
+ ### How can I create/delete/move a repo_item (file or folder)
122
+
123
+ You just have to call the `has_repository` methods `create_file`, `create_folder`, `move_repo_item` or `delete_repo_item`.
124
+
125
+ ```ruby
126
+ # user1 wants to create a folder in his repository
127
+
128
+ # Create a root folder on the user1 repository (you can have how many roots as you want)
129
+ source_folder = user1.create_folder('Root folder')
130
+
131
+ # user1 own repository :
132
+ # -- 'Root folder'
133
+
134
+ # source_folder is the directory in witch user1 wants to create the folder 'The new folder'
135
+ the_new_folder = user1.create_folder('The new folder', source_folder: source_folder)
136
+
137
+ # user1 own repository :
138
+ # |-- 'Root folder'
139
+ # | |-- 'The new folder'
140
+
141
+ # Now we want to add a file into the_new_folder
142
+ # Note : user1 needs the ':can_create => true' permission in the folder : the_new_folder (else the method returns `false`).
143
+ user1.create_file(params[:file], source_folder: the_new_folder)
144
+ # OR
145
+ user1.create_file(File.open('somewhere'), source_folder: the_new_folder)
146
+ # OR
147
+ repo_file = RepositoryManager::RepoFile.new
148
+ repo_file.file = your_file
149
+ user1.create_file(repo_file, source_folder: the_new_folder)
150
+
151
+
152
+ # user1 own repository :
153
+ # |-- 'Root folder'
154
+ # | |-- 'The new folder'
155
+ # | | |-- 'file.txt'
156
+
157
+ # user1 want to create a file on the root of his repository
158
+ file2 = user1.create_file(params[:file2])
159
+
160
+ # user1 own repository :
161
+ # |-- 'Root folder'
162
+ # | |-- 'The new folder'
163
+ # | | |-- 'file.txt'
164
+ # |-- 'file2.jpg'
165
+
166
+ # user1 want to create a folder on the root of his repository
167
+ test_folder = user1.create_folder('Test folder')
168
+
169
+ # user1 own repository :
170
+ # |-- 'Root folder'
171
+ # | |-- 'The new folder'
172
+ # | | |-- 'file.txt'
173
+ # |-- 'file2.jpg'
174
+ # |-- 'Test folder'
175
+
176
+ # user1 want to move 'The new folder' in 'Test folder'
177
+ user1.move_repo_item(the_new_folder, source_folder: test_folder)
178
+
179
+ # user1 own repository :
180
+ # |-- 'Root folder'
181
+ # |-- 'file2.jpg'
182
+ # |-- 'Test folder'
183
+ # | |-- 'The new folder'
184
+ # | | |-- 'file.txt'
185
+
186
+ # user1 want to rename 'The new folder' to 'The renamed folder'
187
+ user1.rename_repo_item(the_new_folder, 'The renamed folder')
188
+
189
+ # user1 own repository :
190
+ # |-- 'Root folder'
191
+ # |-- 'file2.jpg'
192
+ # |-- 'Test folder'
193
+ # | |-- 'The renamed folder'
194
+ # | | |-- 'file.txt'
195
+
196
+ # Delete a repo_item
197
+ # Note : user1 needs the ':can_delete => true' permission in the folder : the_new_folder (else the method returns `false`).
198
+ user1.delete_repo_item(test_folder)
199
+
200
+ # user1 own repository :
201
+ # |-- 'Root folder'
202
+ # |-- 'file2.jpg'
203
+
204
+ user1.delete_repo_item(file2)
205
+
206
+ # user1 own repository :
207
+ # |-- 'Root folder'
208
+
209
+ ```
210
+
211
+ If a user (sender of the item) send a file or folder into a group (owner of this item), you can specify the owner and the sender like this :
212
+
213
+ ```ruby
214
+ # user1 wants to create a folder and a file into group1
215
+ folder = group1.create_folder('Folder created by user1', sender: user1)
216
+
217
+ folder.owner # Returns group1
218
+ folder.sender # Returns user1
219
+
220
+ # Now he send the file into the folder
221
+ file = group1.create_file(params[:file], source_folder: folder, sender: user1)
222
+
223
+ file.owner # Returns group1
224
+ file.sender # Returns user1
225
+
226
+ # If you don't specify the sender, the owner becomes the sender
227
+
228
+ ```
229
+
230
+ WARNING : There is no verification if the user has the authorisation to create a file or folder into this group. You have to check this in your controller ! The fact that user1 is the sender of this folder gives him NO AUTHORISATION on it !
231
+
232
+ ### How can I share a repo_item (file/folder)
233
+
234
+ Now, user1 want to share his folder 'The new folder' with a Group object `group1` et another User object `user2`. You can use the `has_repository` method `share(repo_item, member, options = nil)`.
235
+
236
+
237
+ ```ruby
238
+ # user1 wants to share the_new_folder with group1 and user2
239
+
240
+ members = []
241
+ # You can add other instances (who `has_repository`) in this array to share with more than one instance
242
+ member << group1
243
+ members << user2
244
+
245
+ sharing = user1.share(the_new_folder, members)
246
+
247
+ # If you want to customize your sharing options, you can do it like this:
248
+ options = {sharing_permissions: {can_add: true, can_remove: true}, repo_item_permissions: {can_read: true, can_create: true, can_update: true, can_delete: true, can_share: true}}
249
+
250
+ sharing = user1.share(the_new_folder, members, options)
251
+ ```
252
+
253
+ `repo_item_permissions` specifies what kind of permissions you give on the repo_item in a specific sharing.
254
+
255
+ `sharing_permissions` specifies if the member selected can add or remove other members in this sharing.
256
+
257
+ See the chapter [Authorisations](#authorisations) for more details.
258
+
259
+ ### Repository Manager and the nested sharing
260
+
261
+ Repository Manager actually don't accept nested sharing.
262
+
263
+ ```ruby
264
+
265
+ parent = @user1.create_folder('Parent')
266
+ nested = @user1.create_folder('Nested', parent)
267
+ children = @user1.create_folder('Children', nested)
268
+
269
+ # @user1 own repository :
270
+ # |-- 'Parent'
271
+ # | |-- 'Nested'
272
+ # | | |-- 'Children'
273
+
274
+ @user1.share(nested, @user2)
275
+
276
+ nested.has_nested_sharing? # Returns false (because `nested` is shared but there is no nested sharing)
277
+ parent.has_nested_sharing? # Returns true (because there is a sharing on one of his descendants)
278
+ children.has_nested_sharing? # Returns true (because there is a sharing on one of his ancestors)
279
+
280
+ # Here we can't share 'Parent' or 'Children' because it already exist a nested sharing.
281
+ @user1.share(parent, @user2) # Returns false
282
+ @user1.share!(parent, @user2) # Raise a NestedSharingException (note the "!")
283
+ @user1.share!(children, @user2) # Raise a NestedSharingException (note the "!")
284
+ ```
285
+
286
+ ### How can I see my repo_items
287
+
288
+ You can have two kind of repo_items:
289
+ - Your own repo_items
290
+ - The repo_items shared with you.
291
+
292
+ ```ruby
293
+ # user1 want to get his own repository
294
+ user1.repo_items.all # => You get the repo_items that user1 has created
295
+
296
+ # user2 want to get his shared repo_items
297
+ user2.shared_repo_items.all
298
+ ```
299
+
300
+ If you only want to have the folders or the files, you can do it like that:
301
+
302
+ ```ruby
303
+ # return only the own folders of user1
304
+ user1.repo_items.folders.all # => You get the repo_folders that user1 has created
305
+
306
+ # user2 want to get his shared repo_files
307
+ user2.shared_repo_items.files.all
308
+ ```
309
+
310
+ Recall: a repo_item can be:
311
+ - A file
312
+ - A folder
313
+
314
+ ```ruby
315
+ # We want to know if the object repo_item is a file or a folder:
316
+ if repo_item.is_folder
317
+ repo_item.name #=> Returns the name of the folder (for instance : 'New folder').
318
+ elsif repo_item.is_file?
319
+ repo_item.name #=> Returns the name of the file (for instance : 'file.png').
320
+ # Here is the file
321
+ repo_item.file.url # => '/url/to/file.png'
322
+ repo_item.file.current_path # => 'path/to/file.png'
323
+ end
324
+ ```
325
+
326
+ For file details, more infos on [the documentation of the carrierwave gem](https://github.com/carrierwaveuploader/carrierwave).
327
+
328
+
329
+ ### How can I manage a sharing
330
+
331
+
332
+ If it has the authorisation, an object can add members to a sharing.
333
+
334
+ ```ruby
335
+ # user1 want to add members to his sharing
336
+ # NOTE: The action is done only if user1 has the ':can_add' permission.
337
+ user1.can_add_to?(sharing) # => true
338
+
339
+ # Add members
340
+ members = []
341
+ members << user3
342
+ members << group2
343
+ ...
344
+
345
+ user1.add_members_to(sharing, members)
346
+
347
+ # You can change the default sharing permissions options :
348
+ options = {can_add: true, can_remove: false}
349
+ user1.add_members_to(sharing, members, options)
350
+
351
+
352
+ # Here user3 and group2 can add members in this sharing, but they can't remove a member.
353
+ group2.can_add_to?(sharing) # => true
354
+ group2.can_remove_from?(sharing) # => false
355
+
356
+ # If user2 add a member in the sharing, he can choose if the permission ':can_add' is true or false, but he can't put ':can_remove' to true (because he don't have this permission himself).
357
+ ```
358
+
359
+ If an object has the authorisation, it can remove members from a sharing, else the method return `false`.
360
+
361
+ ```ruby
362
+ # user1 want to remove group2 from the sharing `sharing`
363
+ user1.remove_members_from(sharing, group2) # The second parameter can be an object or an array of object
364
+ ```
365
+
366
+ You can directly work with the `sharing`. Be careful, there is NO authorisation control !
367
+
368
+ ```ruby
369
+ # Add a member to the sharing `sharing`
370
+ sharing.add_members(member)
371
+ # Or with options :
372
+ sharing.add_members(member, {can_add: true, can_remove: false})
373
+
374
+
375
+ # Remove members from the sharing
376
+ sharing.remove_members({user2, group1})
377
+ ```
378
+
379
+ ### Authorisations
380
+
381
+ #### Repository authorisations
382
+
383
+ The owner of a `repo_item` (file or folder) has all the authorisations on it. When he share this `repo_item`, he can choose what authorisation he gives to the share. The authorisations are :
384
+ - `can_read?(repo_item)` : The member can read (=download) this file/folder.
385
+ - `can_create?(repo_item)` : Can create in the repo_item (Note: if repo_item is nil (= root), always true).
386
+ - `can_update?(repo_item)` : Can update a repo_item.
387
+ - `can_delete?(repo_item)` : Can delete a repo_item.
388
+ - `can_share?(repo_item)` : Can share a repo_item.
389
+
390
+ To check if a user has one of this authorisation, you just have to write : `user1.can_read?(repo_item)`, `user1.can_share?(repo_item)`, etc (it returns `true` or `false`).
391
+
392
+ NOTICE : An object who can share a repo_item, can't set new permissions that it doesn't have.
393
+ For instance: `user3` has a sharing of `repo_item1` with `:can_delete => false` and `:can_share => true`. He can share `repo_item1` with `user4`, but he can't put `:can_delete => true` in this new share.
394
+
395
+ You can get all the authorisations with this method: `user1.get_authorisations(repo_item)`
396
+
397
+ ```ruby
398
+ # Gets the repo authorisations
399
+ # Return false if the entity has not the authorisation to share this rep
400
+ # Return true if the entity can share this rep with all the authorisations
401
+ # Return an Array if the entity can share but with restriction
402
+ # Return true if the repo_item is nil (he as all authorisations on his own rep)
403
+ def get_authorisations(repo_item = nil)
404
+ [...]
405
+ end
406
+ ```
407
+
408
+ #### Sharing permissions
409
+
410
+ You can manage the permissions of a member in a sharing. The owner of the sharing has all the permissions. The permissions are:
411
+ - `can_add_to?(sharing)` : The member can add a new instance in this sharing.
412
+ - `can_remove_from?(sharing)` : Can remove an instance from this sharing.
413
+
414
+ To check if the object can add or remove an instance in the sharing, just write : `group1.can_add_to?(sharing)` or `group1.can_remove_from?(sharing)` (it returns `true` or `false`).
415
+
416
+ Like the repo_item authorisations, you can get the sharing authorisations with : `group1.get_sharing_authorisations(sharing)`.
417
+
418
+ ### Download a repository
419
+
420
+ RepositoryManager make the download of a repo_item easy. If the user want to download a file, the `user.download(repo_item)` method returns you the path of the file (if the user `can_read` it).
421
+ If it want to download a folder, it automatically generates a zip file with all the constant that the user can_read. The method returns the path of this zip file.
422
+
423
+ ```ruby
424
+ # user1 want to download the_folder
425
+ path_to_zip = user1.download(the_folder)
426
+
427
+ # Then you can do what you want with this path, you can use the send_file method from rails in your controller
428
+ send_file path_to_zip
429
+
430
+ # Don't forget to delete the zip file after the user has downloaded it (when his session end for instance)
431
+ # I created a method how delete all the download file path
432
+ user1.delete_download_path()
433
+ ```
434
+
435
+ You can directly download the folder (without permission control):
436
+
437
+ ```ruby
438
+ # Directly download all the folder
439
+ path = the_folder.download
440
+
441
+ # You can delete the zip file with
442
+ the_folder.delete_zip
443
+ ```
444
+
445
+ ## TODO
446
+
447
+ - Do the rename file method
448
+ - Write the methods : copy, share_link.
449
+ - Snapshot the file if possible
450
+ - Versioning
451
+ - ...
452
+
453
+
454
+ ## License
455
+
456
+ This project rocks and uses MIT-LICENSE.
457
+
458
+ Created by Yves Baumann.
459
+