mirror of
https://github.com/pulsar-edit/pulsar.git
synced 2024-11-11 04:48:44 +03:00
54 lines
2.2 KiB
CoffeeScript
54 lines
2.2 KiB
CoffeeScript
$ = require 'jquery'
|
|
fs = require 'fs-utils'
|
|
Theme = require 'theme'
|
|
|
|
describe "@load(name)", ->
|
|
theme = null
|
|
|
|
beforeEach ->
|
|
$("#jasmine-content").append $("<div class='editor'></div>")
|
|
|
|
afterEach ->
|
|
theme.deactivate()
|
|
|
|
describe "TextMateTheme", ->
|
|
it "applies the theme's stylesheet to the current window", ->
|
|
expect($(".editor").css("background-color")).not.toBe("rgb(20, 20, 20)")
|
|
|
|
themePath = fs.resolveOnLoadPath(fs.join('fixtures', 'test.tmTheme'))
|
|
theme = Theme.load(themePath)
|
|
expect($(".editor").css("background-color")).toBe("rgb(20, 20, 20)")
|
|
|
|
describe "AtomTheme", ->
|
|
describe "when the theme contains a package.json file", ->
|
|
it "loads and applies css from package.json in the correct order", ->
|
|
expect($(".editor").css("padding-top")).not.toBe("101px")
|
|
expect($(".editor").css("padding-right")).not.toBe("102px")
|
|
expect($(".editor").css("padding-bottom")).not.toBe("103px")
|
|
|
|
themePath = project.resolve('themes/theme-with-package-file')
|
|
theme = Theme.load(themePath)
|
|
expect($(".editor").css("padding-top")).toBe("101px")
|
|
expect($(".editor").css("padding-right")).toBe("102px")
|
|
expect($(".editor").css("padding-bottom")).toBe("103px")
|
|
|
|
describe "when the theme is a CSS file", ->
|
|
it "loads and applies the stylesheet", ->
|
|
expect($(".editor").css("padding-bottom")).not.toBe "1234px"
|
|
|
|
themePath = project.resolve('themes/theme-stylesheet.css')
|
|
theme = Theme.load(themePath)
|
|
expect($(".editor").css("padding-top")).toBe "1234px"
|
|
|
|
describe "when the theme does not contain a package.json file and is a directory", ->
|
|
it "loads all CSS files in the directory", ->
|
|
expect($(".editor").css("padding-top")).not.toBe "10px"
|
|
expect($(".editor").css("padding-right")).not.toBe "20px"
|
|
expect($(".editor").css("padding-bottom")).not.toBe "30px"
|
|
|
|
themePath = project.resolve('themes/theme-without-package-file')
|
|
theme = Theme.load(themePath)
|
|
expect($(".editor").css("padding-top")).toBe "10px"
|
|
expect($(".editor").css("padding-right")).toBe "20px"
|
|
expect($(".editor").css("padding-bottom")).toBe "30px"
|