pulsar/spec/app/text-mate-theme-spec.coffee
2012-08-27 17:36:36 -05:00

66 lines
2.0 KiB
CoffeeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

fs = require 'fs'
plist = require 'plist'
TextMateTheme = require 'text-mate-theme'
describe "TextMateTheme", ->
theme = null
beforeEach ->
theme = TextMateTheme.getTheme('Twilight')
describe "@getNames()", ->
it "returns an array of available theme names", ->
names = TextMateTheme.getNames()
expect(names).toContain("Twilight")
expect(names).toContain("Blackboard")
describe "@activate(name)", ->
it "activates a theme by name", ->
spyOn theme, 'activate'
TextMateTheme.activate('Twilight')
expect(theme.activate).toHaveBeenCalled()
describe ".activate()", ->
it "applies the theme's stylesheet to the current window", ->
spyOn window, 'applyStylesheet'
theme.activate()
expect(window.applyStylesheet).toHaveBeenCalledWith(theme.name, theme.getStylesheet())
describe ".getRulesets()", ->
rulesets = null
beforeEach ->
rulesets = theme.getRulesets()
it "returns rulesets representing the theme's global style settings", ->
expect(rulesets[0]).toEqual
selector: '.editor'
properties:
'background-color': '#141414'
'color': '#F8F8F8'
expect(rulesets[1]).toEqual
selector: '.editor.focused .cursor'
properties:
'border-color': '#A7A7A7'
expect(rulesets[2]).toEqual
selector: '.editor.focused .selection'
properties:
'background-color': "rgba(221, 240, 255, 51)"
it "returns an array of objects representing the theme's scope selectors", ->
expect(rulesets[11]).toEqual
comment: "Invalid Deprecated"
selector: ".invalid-deprecated"
properties:
'color': "#D2A8A1"
# 'font-style': 'italic'
'text-decoration': 'underline'
expect(rulesets[12]).toEqual
comment: "Invalid Illegal"
selector: ".invalid-illegal"
properties:
'color': "#F8F8F8"
'background-color': 'rgba(86, 45, 86, 191)'