mirror of
https://github.com/atom/atom.git
synced 2026-04-06 03:02:13 -04:00
Moved atom.loadPackage to a spec-only helper function
This commit is contained in:
@@ -62,6 +62,6 @@ describe "AtomPackage", ->
|
||||
describe "when a package is activated", ->
|
||||
it "loads config defaults based on the `configDefaults` key", ->
|
||||
expect(config.get('package-with-module.numbers.one')).toBeUndefined()
|
||||
atom.loadPackage("package-with-module")
|
||||
window.loadPackage("package-with-module")
|
||||
expect(config.get('package-with-module.numbers.one')).toBe 1
|
||||
expect(config.get('package-with-module.numbers.two')).toBe 2
|
||||
|
||||
@@ -8,7 +8,7 @@ describe "the `atom` global", ->
|
||||
afterEach ->
|
||||
rootView.deactivate()
|
||||
|
||||
describe ".loadPackage(name)", ->
|
||||
describe "when a package is built and loaded", ->
|
||||
[extension, stylesheetPath] = []
|
||||
|
||||
beforeEach ->
|
||||
@@ -20,13 +20,13 @@ describe "the `atom` global", ->
|
||||
|
||||
it "requires and activates the package's main module if it exists", ->
|
||||
spyOn(atom, 'activateAtomPackage').andCallThrough()
|
||||
atom.loadPackage("package-with-module")
|
||||
window.loadPackage("package-with-module")
|
||||
expect(atom.activateAtomPackage).toHaveBeenCalled()
|
||||
|
||||
it "logs warning instead of throwing an exception if a package fails to load", ->
|
||||
config.set("core.disabledPackages", [])
|
||||
spyOn(console, "warn")
|
||||
expect(-> atom.loadPackage("package-that-throws-an-exception")).not.toThrow()
|
||||
expect(-> window.loadPackage("package-that-throws-an-exception")).not.toThrow()
|
||||
expect(console.warn).toHaveBeenCalled()
|
||||
|
||||
describe "keymap loading", ->
|
||||
@@ -40,7 +40,7 @@ describe "the `atom` global", ->
|
||||
expect(keymap.bindingsForElement(element2)['ctrl-z']).toBeUndefined()
|
||||
expect(keymap.bindingsForElement(element3)['ctrl-z']).toBeUndefined()
|
||||
|
||||
atom.loadPackage("package-with-module")
|
||||
window.loadPackage("package-with-module")
|
||||
|
||||
expect(keymap.bindingsForElement(element1)['ctrl-z']).toBe "test-1"
|
||||
expect(keymap.bindingsForElement(element2)['ctrl-z']).toBe "test-2"
|
||||
@@ -53,7 +53,7 @@ describe "the `atom` global", ->
|
||||
|
||||
expect(keymap.bindingsForElement(element1)['ctrl-z']).toBeUndefined()
|
||||
|
||||
atom.loadPackage("package-with-keymaps-manifest")
|
||||
window.loadPackage("package-with-keymaps-manifest")
|
||||
|
||||
expect(keymap.bindingsForElement(element1)['ctrl-z']).toBe 'keymap-1'
|
||||
expect(keymap.bindingsForElement(element1)['ctrl-n']).toBe 'keymap-2'
|
||||
@@ -62,7 +62,7 @@ describe "the `atom` global", ->
|
||||
it "loads stylesheets associated with the package", ->
|
||||
stylesheetPath = require.resolve("fixtures/packages/package-with-module/stylesheets/styles.css")
|
||||
expect(stylesheetElementForId(stylesheetPath).length).toBe 0
|
||||
atom.loadPackage("package-with-module")
|
||||
window.loadPackage("package-with-module")
|
||||
expect(stylesheetElementForId(stylesheetPath).length).toBe 1
|
||||
|
||||
describe ".loadPackages()", ->
|
||||
|
||||
@@ -52,7 +52,7 @@ describe "RootView", ->
|
||||
|
||||
describe ".deactivate()", ->
|
||||
it "deactivates all packages", ->
|
||||
pack = atom.loadPackage("package-with-module")
|
||||
pack = window.loadPackage("package-with-module")
|
||||
atom.activateAtomPackage(pack)
|
||||
spyOn(pack.packageMain, "deactivate").andCallThrough()
|
||||
rootView.deactivate()
|
||||
|
||||
@@ -17,20 +17,11 @@ fixturePackagesPath = require.resolve('fixtures/packages')
|
||||
require.paths.unshift(fixturePackagesPath)
|
||||
[bindingSetsToRestore, bindingSetsByFirstKeystrokeToRestore] = []
|
||||
|
||||
# Specs rely on TextMate bundles (but not atom packages)
|
||||
window.loadTextMatePackages = ->
|
||||
TextMatePackage = require 'text-mate-package'
|
||||
config.packageDirPaths.unshift(fixturePackagesPath)
|
||||
window.textMatePackages = []
|
||||
for path in atom.getPackagePaths() when TextMatePackage.testName(path)
|
||||
window.textMatePackages.push atom.loadPackage(fs.base(path))
|
||||
|
||||
window.loadTextMatePackages()
|
||||
|
||||
beforeEach ->
|
||||
window.fixturesProject = new Project(require.resolve('fixtures'))
|
||||
window.resetTimeouts()
|
||||
atom.atomPackageStates = {}
|
||||
atom.loadedPackages = []
|
||||
|
||||
# used to reset keymap after each spec
|
||||
bindingSetsToRestore = _.clone(keymap.bindingSets)
|
||||
@@ -77,6 +68,24 @@ $('html,body').css('overflow', 'auto')
|
||||
jasmine.getEnv().addEqualityTester(_.isEqual) # Use underscore's definition of equality for toEqual assertions
|
||||
jasmine.getEnv().defaultTimeoutInterval = 1000
|
||||
|
||||
window.loadPackage = (name, options) ->
|
||||
Package = require 'package'
|
||||
packagePath = _.find atom.getPackagePaths(), (packagePath) -> fs.base(packagePath) == name
|
||||
if pack = Package.build(packagePath)
|
||||
pack.load(options)
|
||||
atom.loadedPackages.push(pack)
|
||||
pack
|
||||
|
||||
# Specs rely on TextMate bundles (but not atom packages)
|
||||
window.loadTextMatePackages = ->
|
||||
TextMatePackage = require 'text-mate-package'
|
||||
config.packageDirPaths.unshift(fixturePackagesPath)
|
||||
window.textMatePackages = []
|
||||
for path in atom.getPackagePaths() when TextMatePackage.testName(path)
|
||||
window.textMatePackages.push window.loadPackage(fs.base(path))
|
||||
|
||||
window.loadTextMatePackages()
|
||||
|
||||
ensureNoPathSubscriptions = ->
|
||||
watchedPaths = $native.getWatchedPaths()
|
||||
$native.unwatchAllPaths()
|
||||
|
||||
@@ -16,7 +16,7 @@ describe "Autocomplete", ->
|
||||
describe "@activate()", ->
|
||||
it "activates autocomplete on all existing and future editors (but not on autocomplete's own mini editor)", ->
|
||||
spyOn(AutocompleteView.prototype, 'initialize').andCallThrough()
|
||||
autocompletePackage = atom.loadPackage("autocomplete")
|
||||
autocompletePackage = window.loadPackage("autocomplete")
|
||||
expect(AutocompleteView.prototype.initialize).not.toHaveBeenCalled()
|
||||
|
||||
leftEditor = rootView.getActiveEditor()
|
||||
@@ -43,7 +43,7 @@ describe "AutocompleteView", ->
|
||||
beforeEach ->
|
||||
new RootView
|
||||
editor = new Editor(editSession: fixturesProject.buildEditSessionForPath('sample.js'))
|
||||
atom.loadPackage('autocomplete')
|
||||
window.loadPackage('autocomplete')
|
||||
autocomplete = new AutocompleteView(editor)
|
||||
miniEditor = autocomplete.miniEditor
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ describe "Autoflow package", ->
|
||||
|
||||
beforeEach ->
|
||||
rootView = new RootView
|
||||
atom.loadPackage 'autoflow'
|
||||
window.loadPackage 'autoflow'
|
||||
editor = rootView.getActiveEditor()
|
||||
config.set('editor.preferredLineLength', 30)
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ describe "bracket matching", ->
|
||||
|
||||
beforeEach ->
|
||||
rootView = new RootView(require.resolve('fixtures/sample.js'))
|
||||
atom.loadPackage('bracket-matcher')
|
||||
window.loadPackage('bracket-matcher')
|
||||
rootView.attachToDom()
|
||||
editor = rootView.getActiveEditor()
|
||||
editSession = editor.activeEditSession
|
||||
|
||||
@@ -6,7 +6,7 @@ describe "CommandLogger", ->
|
||||
|
||||
beforeEach ->
|
||||
new RootView(require.resolve('fixtures/sample.js'))
|
||||
commandLogger = atom.loadPackage('command-logger').packageMain
|
||||
commandLogger = window.loadPackage('command-logger').packageMain
|
||||
commandLogger.eventLog = {}
|
||||
editor = rootView.getActiveEditor()
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ describe "CommandPalette", ->
|
||||
|
||||
beforeEach ->
|
||||
rootView = new RootView(require.resolve('fixtures/sample.js'))
|
||||
atom.loadPackage("command-palette")
|
||||
window.loadPackage("command-palette")
|
||||
rootView.attachToDom().focus()
|
||||
rootView.trigger 'command-palette:toggle'
|
||||
palette = rootView.find('.command-palette').view()
|
||||
|
||||
@@ -12,7 +12,7 @@ describe "CommandPanel", ->
|
||||
project = rootView.project
|
||||
editor = rootView.getActiveEditor()
|
||||
buffer = editor.activeEditSession.buffer
|
||||
commandPanelMain = atom.loadPackage('command-panel', activateImmediately: true).packageMain
|
||||
commandPanelMain = window.loadPackage('command-panel', activateImmediately: true).packageMain
|
||||
commandPanel = commandPanelMain.commandPanelView
|
||||
commandPanel.history = []
|
||||
commandPanel.historyIndex = 0
|
||||
@@ -35,7 +35,7 @@ describe "CommandPanel", ->
|
||||
rootViewState = rootView.serialize()
|
||||
rootView.deactivate()
|
||||
RootView.deserialize(rootViewState).attachToDom()
|
||||
atom.loadPackage('command-panel')
|
||||
window.loadPackage('command-panel')
|
||||
|
||||
expect(rootView.find('.command-panel')).not.toExist()
|
||||
rootView.trigger 'command-panel:toggle'
|
||||
@@ -61,7 +61,7 @@ describe "CommandPanel", ->
|
||||
rootViewState = rootView.serialize()
|
||||
rootView.deactivate()
|
||||
RootView.deserialize(rootViewState).attachToDom()
|
||||
atom.loadPackage('command-panel')
|
||||
window.loadPackage('command-panel')
|
||||
rootView.trigger 'command-panel:toggle'
|
||||
|
||||
commandPanel = rootView.find('.command-panel').view()
|
||||
|
||||
@@ -23,7 +23,7 @@ describe "EditorStats", ->
|
||||
mins = if mins == 60 then '01' else mins + 1
|
||||
time = "#{hours}:#{mins}"
|
||||
|
||||
editorStats = atom.loadPackage('editor-stats').packageMain.stats
|
||||
editorStats = window.loadPackage('editor-stats').packageMain.stats
|
||||
|
||||
afterEach ->
|
||||
rootView.deactivate()
|
||||
|
||||
@@ -12,7 +12,7 @@ describe 'FuzzyFinder', ->
|
||||
beforeEach ->
|
||||
new RootView(require.resolve('fixtures/sample.js'))
|
||||
rootView.enableKeymap()
|
||||
finderView = atom.loadPackage("fuzzy-finder").packageMain.createView()
|
||||
finderView = window.loadPackage("fuzzy-finder").packageMain.createView()
|
||||
|
||||
afterEach ->
|
||||
rootView.deactivate()
|
||||
|
||||
@@ -6,7 +6,7 @@ describe "Gists package", ->
|
||||
|
||||
beforeEach ->
|
||||
rootView = new RootView(fixturesProject.resolve('sample.js'))
|
||||
atom.loadPackage('gists')
|
||||
window.loadPackage('gists')
|
||||
editor = rootView.getActiveEditor()
|
||||
spyOn($, 'ajax')
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ MarkdownPreview = require 'markdown-preview/lib/markdown-preview-view'
|
||||
describe "MarkdownPreview", ->
|
||||
beforeEach ->
|
||||
rootView = new RootView(require.resolve('fixtures/markdown'))
|
||||
atom.loadPackage("markdown-preview")
|
||||
window.loadPackage("markdown-preview")
|
||||
spyOn(MarkdownPreview.prototype, 'loadHtml')
|
||||
|
||||
afterEach ->
|
||||
|
||||
@@ -6,7 +6,7 @@ describe 'Package Generator', ->
|
||||
|
||||
beforeEach ->
|
||||
new RootView(require.resolve('fixtures/sample.js'))
|
||||
atom.loadPackage("package-generator")
|
||||
window.loadPackage("package-generator")
|
||||
|
||||
afterEach ->
|
||||
rootView.deactivate()
|
||||
|
||||
@@ -10,7 +10,7 @@ fdescribe "##PackageName##View", ->
|
||||
|
||||
beforeEach ->
|
||||
new RootView()
|
||||
##packageName## = atom.loadPackage('##packageName##', activateImmediately: true)
|
||||
##packageName## = window.loadPackage('##packageName##', activateImmediately: true)
|
||||
|
||||
afterEach ->
|
||||
rootView.deactivate()
|
||||
|
||||
@@ -13,12 +13,12 @@ describe "Snippets extension", ->
|
||||
rootView = new RootView(require.resolve('fixtures/sample.js'))
|
||||
spyOn(LoadSnippetsTask.prototype, 'start')
|
||||
|
||||
packageWithSnippets = atom.loadPackage("package-with-snippets")
|
||||
packageWithSnippets = window.loadPackage("package-with-snippets")
|
||||
|
||||
spyOn(atom, "getLoadedPackages").andCallFake ->
|
||||
window.textMatePackages.concat([packageWithSnippets])
|
||||
|
||||
atom.loadPackage("snippets")
|
||||
window.loadPackage("snippets")
|
||||
|
||||
editor = rootView.getActiveEditor()
|
||||
editSession = rootView.getActiveEditSession()
|
||||
|
||||
@@ -9,7 +9,7 @@ describe "StripTrailingWhitespace", ->
|
||||
fs.write(path, "")
|
||||
rootView = new RootView(path)
|
||||
|
||||
atom.loadPackage('strip-trailing-whitespace')
|
||||
window.loadPackage('strip-trailing-whitespace')
|
||||
rootView.focus()
|
||||
editor = rootView.getActiveEditor()
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ describe "SymbolsView", ->
|
||||
|
||||
beforeEach ->
|
||||
rootView = new RootView(require.resolve('fixtures'))
|
||||
atom.loadPackage("symbols-view")
|
||||
window.loadPackage("symbols-view")
|
||||
|
||||
rootView.attachToDom()
|
||||
setArraySpy = spyOn(SymbolsView.prototype, 'setArray').andCallThrough()
|
||||
|
||||
@@ -10,7 +10,7 @@ describe "TabView", ->
|
||||
new RootView(require.resolve('fixtures/sample.js'))
|
||||
rootView.open('sample.txt')
|
||||
rootView.simulateDomAttachment()
|
||||
atom.loadPackage("tabs")
|
||||
window.loadPackage("tabs")
|
||||
editor = rootView.getActiveEditor()
|
||||
tabs = rootView.find('.tabs').view()
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ describe "TreeView", ->
|
||||
new RootView(require.resolve('fixtures/tree-view'))
|
||||
project = rootView.project
|
||||
|
||||
atom.loadPackage("tree-view")
|
||||
window.loadPackage("tree-view")
|
||||
rootView.trigger 'tree-view:toggle'
|
||||
treeView = rootView.find(".tree-view").view()
|
||||
treeView.root = treeView.find('ol > li:first').view()
|
||||
@@ -50,7 +50,7 @@ describe "TreeView", ->
|
||||
beforeEach ->
|
||||
rootView.deactivate()
|
||||
new RootView()
|
||||
treeView = atom.loadPackage("tree-view").packageMain.createView()
|
||||
treeView = window.loadPackage("tree-view").packageMain.createView()
|
||||
|
||||
it "does not attach to the root view or create a root node when initialized", ->
|
||||
expect(treeView.hasParent()).toBeFalsy()
|
||||
@@ -75,7 +75,7 @@ describe "TreeView", ->
|
||||
it "does not attach to the root view but does create a root node when initialized", ->
|
||||
rootView.deactivate()
|
||||
new RootView(require.resolve('fixtures/tree-view/tree-view.js'))
|
||||
treeView = atom.loadPackage("tree-view").packageMain.createView()
|
||||
treeView = window.loadPackage("tree-view").packageMain.createView()
|
||||
expect(treeView.hasParent()).toBeFalsy()
|
||||
expect(treeView.root).toExist()
|
||||
|
||||
@@ -87,7 +87,7 @@ describe "TreeView", ->
|
||||
rootViewState = rootView.serialize()
|
||||
rootView.deactivate()
|
||||
RootView.deserialize(rootViewState)
|
||||
atom.loadPackage("tree-view")
|
||||
window.loadPackage("tree-view")
|
||||
treeView = rootView.find(".tree-view").view()
|
||||
|
||||
expect(treeView).toExist()
|
||||
@@ -104,7 +104,7 @@ describe "TreeView", ->
|
||||
RootView.deserialize(rootViewState)
|
||||
|
||||
rootView.attachToDom()
|
||||
atom.loadPackage("tree-view")
|
||||
window.loadPackage("tree-view")
|
||||
treeView = rootView.find(".tree-view").view()
|
||||
expect(treeView.find(".tree-view")).toMatchSelector ':focus'
|
||||
|
||||
@@ -599,7 +599,7 @@ describe "TreeView", ->
|
||||
|
||||
new RootView(rootDirPath)
|
||||
project = rootView.project
|
||||
atom.loadPackage('tree-view')
|
||||
window.loadPackage('tree-view')
|
||||
rootView.trigger 'tree-view:toggle'
|
||||
treeView = rootView.find(".tree-view").view()
|
||||
dirView = treeView.root.entries.find('.directory:contains(test-dir)').view()
|
||||
|
||||
@@ -5,7 +5,7 @@ describe "WrapGuide", ->
|
||||
|
||||
beforeEach ->
|
||||
new RootView(require.resolve('fixtures/sample.js'))
|
||||
atom.loadPackage('wrap-guide')
|
||||
window.loadPackage('wrap-guide')
|
||||
rootView.attachToDom()
|
||||
editor = rootView.getActiveEditor()
|
||||
wrapGuide = rootView.find('.wrap-guide').view()
|
||||
|
||||
Reference in New Issue
Block a user