Mailspring/spec-nylas/auto-update-manager-spec.coffee

41 lines
1.5 KiB
CoffeeScript

AutoUpdateManager = require '../src/browser/auto-update-manager'
describe "AutoUpdateManager", ->
c1 = get: ->
c2 = get: -> "major"
c3 = get: -> "minor"
c4 = get: -> "patch"
c5 = get: -> "commit"
c6 = get: -> "foo"
base = "https://edgehill.nylas.com/update-check?platform=#{process.platform}&version="
beforeEach ->
@feedUrl = (version, config) ->
m = new AutoUpdateManager(version, config)
spyOn(m, "setupAutoUpdater")
return m.feedUrl
describe "with attached commit version", ->
beforeEach ->
@v = "3.222.1-abc"
it "correctly sets the feedURL", ->
expect(@feedUrl(@v, c1)).toBe "#{base}3.222.1-abc&level=patch"
expect(@feedUrl(@v, c2)).toBe "#{base}3.222.1-abc&level=major"
expect(@feedUrl(@v, c3)).toBe "#{base}3.222.1-abc&level=minor"
expect(@feedUrl(@v, c4)).toBe "#{base}3.222.1-abc&level=patch"
expect(@feedUrl(@v, c5)).toBe "#{base}3.222.1-abc&level=commit"
expect(@feedUrl(@v, c6)).toBe "#{base}3.222.1-abc&level=patch"
describe "with no attached commit", ->
beforeEach ->
@v = "3.222.1"
it "correctly sets the feedURL", ->
expect(@feedUrl(@v, c1)).toBe "#{base}3.222.1&level=patch"
expect(@feedUrl(@v, c2)).toBe "#{base}3.222.1&level=major"
expect(@feedUrl(@v, c3)).toBe "#{base}3.222.1&level=minor"
expect(@feedUrl(@v, c4)).toBe "#{base}3.222.1&level=patch"
expect(@feedUrl(@v, c5)).toBe "#{base}3.222.1&level=commit"
expect(@feedUrl(@v, c6)).toBe "#{base}3.222.1&level=patch"