sinon.rb 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. module Docs
  2. class Sinon < UrlScraper
  3. self.name = 'Sinon.JS'
  4. self.slug = 'sinon'
  5. self.type = 'sinon'
  6. self.links = {
  7. home: 'https://sinonjs.org/',
  8. code: 'https://github.com/sinonjs/sinon'
  9. }
  10. html_filters.push 'sinon/clean_html', 'sinon/entries'
  11. options[:title] = 'Sinon.JS'
  12. options[:container] = '.content .container'
  13. options[:attribution] = <<-HTML
  14. &copy; 2010&ndash;2018 Christian Johansen<br>
  15. Licensed under the BSD License.
  16. HTML
  17. version '7' do
  18. self.release = '7.1.1'
  19. self.base_url = "https://sinonjs.org/releases/v#{release}/"
  20. end
  21. version '6' do
  22. self.release = '6.3.5'
  23. self.base_url = "https://sinonjs.org/releases/v#{release}/"
  24. end
  25. version '5' do
  26. self.release = '5.1.0'
  27. self.base_url = "https://sinonjs.org/releases/v#{release}/"
  28. end
  29. version '4' do
  30. self.release = '4.5.0'
  31. self.base_url = "https://sinonjs.org/releases/v#{release}/"
  32. end
  33. version '3' do
  34. self.release = '3.3.0'
  35. self.base_url = "https://sinonjs.org/releases/v#{release}/"
  36. end
  37. version '2' do
  38. self.release = '2.4.1'
  39. self.base_url = "https://sinonjs.org/releases/v#{release}/"
  40. end
  41. version '1' do
  42. self.release = '1.17.7'
  43. self.base_url = "https://sinonjs.org/releases/v#{release}/"
  44. end
  45. def get_latest_version(opts)
  46. body = fetch('https://sinonjs.org/', opts)
  47. body.scan(/\/releases\/v([0-9.]+)/)[0][0]
  48. end
  49. end
  50. end