spec/javascripts/mercury/panel_spec.js.coffee in kiteditor-1.0.12 vs spec/javascripts/mercury/panel_spec.js.coffee in kiteditor-1.0.13
- old
+ new
@@ -1,9 +1,10 @@
describe "Mercury.Panel", ->
+ template 'mercury/panel.html'
+
beforeEach ->
- fixture.load('mercury/panel.html')
Mercury.displayRect = {top: 20, left: 20, width: 200, height: 200}
$.fx.off = true
Mercury.determinedLocale =
top: {'hello world!': 'bork! bork!'}
sub: {'foo': 'Bork!'}
@@ -15,32 +16,32 @@
$(window).unbind('mercury:hide:panels')
describe "#build", ->
it "builds an element", ->
- @panel = new Mercury.Panel('/evergreen/resources/panel.html', 'foo', {appendTo: fixture.el, title: 'foo panel'})
+ @panel = new Mercury.Panel('/evergreen/resources/panel.html', 'foo', {appendTo: '#test', title: 'foo panel'})
html = $('<div>').html(@panel.element).html()
expect(html).toContain('class="mercury-panel loading"')
expect(html).toContain('style="display:none;"')
- expect(html).toContain('<h1><span>foo panel</span></h1><div class="mercury-panel-pane"></div>')
+ expect(html).toContain('<h1>foo panel</h1><div class="mercury-panel-pane"></div>')
expect(html).not.toContain('class="mercury-panel-close"')
it "appends to any element", ->
@panel = new Mercury.Panel('/evergreen/resources/panel.html', 'foo', {appendTo: '#panel_container', title: 'foo panel'})
expect($('#panel_container .mercury-panel').length).toEqual(1)
it "creates a close button if it should", ->
- @panel = new Mercury.Panel('/evergreen/resources/panel.html', 'foo', {appendTo: fixture.el, title: 'foo panel', closeButton: true})
+ @panel = new Mercury.Panel('/evergreen/resources/panel.html', 'foo', {appendTo: '#test', title: 'foo panel', closeButton: true})
html = $('<div>').html(@panel.element).html()
expect(html).toContain('class="mercury-panel-close"')
expect(@panel.element.find('.mercury-panel-close').css('opacity')).toEqual('0')
describe "observed events", ->
beforeEach ->
- @panel = new Mercury.Panel('/evergreen/resources/panel.html', 'foo', {appendTo: fixture.el, title: 'foo panel', for: $('#button'), closeButton: true})
+ @panel = new Mercury.Panel('/evergreen/resources/panel.html', 'foo', {appendTo: '#test', title: 'foo panel', for: $('#button'), closeButton: true})
describe "custom event: resize", ->
it "calls position", ->
spy = spyOn(Mercury.Panel.prototype, 'position').andCallFake(=>)
@@ -82,11 +83,11 @@
describe "#show", ->
beforeEach ->
- @panel = new Mercury.Panel('/evergreen/resources/panel.html', 'foo', {appendTo: fixture.el, title: 'foo panel'})
+ @panel = new Mercury.Panel('/evergreen/resources/panel.html', 'foo', {appendTo: '#test', title: 'foo panel'})
it "hides other panels and dialogs", ->
spyOn(Mercury.Panel.prototype, 'position')
spyOn(Mercury.Panel.prototype, 'appear')
spy = spyOn(Mercury, 'trigger').andCallFake(=>)
@@ -143,11 +144,11 @@
describe "#loadContent", ->
beforeEach ->
- @panel = new Mercury.Panel('/evergreen/resources/panel.html', 'foo', {appendTo: fixture.el, title: 'foo panel'})
+ @panel = new Mercury.Panel('/evergreen/resources/panel.html', 'foo', {appendTo: '#test', title: 'foo panel'})
it "sets loaded to be true", ->
@panel.loadContent()
expect(@panel.loaded).toEqual(true)
@@ -156,26 +157,28 @@
expect(@panel.element.hasClass('loading')).toEqual(false)
it "sets the element html to be the data passed to it", ->
@panel.loadContent('<span>hello world!</span>')
html = @panel.element.html()
+ expect(html).toContain('<h1>foo panel</h1>')
expect(html).toContain('class="mercury-panel-pane"')
expect(html).toContain('style="visibility: hidden;')
expect(html).toContain('hello world!')
- it "sets the element html to be the data passed to it -- translated", ->
+ it "sets the element html to be the data passed to it", ->
Mercury.config.localization.enabled = true
@panel.loadContent('<span>hello world!</span>')
html = @panel.element.html()
+ expect(html).toContain('<h1>foo panel</h1>')
expect(html).toContain('class="mercury-panel-pane"')
expect(html).toContain('style="visibility: hidden;')
expect(html).toContain('bork! bork!')
describe "#makesDraggable", ->
beforeEach ->
- @panel = new Mercury.Panel('/evergreen/resources/panel.html', 'foo', {appendTo: fixture.el, title: 'foo panel'})
+ @panel = new Mercury.Panel('/evergreen/resources/panel.html', 'foo', {appendTo: '#test', title: 'foo panel'})
it "makes the element draggable", ->
spy = spyOn($.fn, 'draggable').andCallFake(=>)
@panel.makeDraggable()
expect(spy.callCount).toEqual(1)