61 lines
1.4 KiB
JavaScript
61 lines
1.4 KiB
JavaScript
describe('Hyperlink', function() {
|
|
var link
|
|
, url = 'http://svgjs.com'
|
|
|
|
beforeEach(function() {
|
|
link = draw.link(url)
|
|
link.rect(100,100)
|
|
})
|
|
|
|
afterEach(function() {
|
|
draw.clear()
|
|
})
|
|
|
|
it('creates a link', function() {
|
|
expect(link.attr('href')).toBe(url)
|
|
})
|
|
|
|
describe('to()', function() {
|
|
it('creates xlink:href attribute', function() {
|
|
link.to('http://apple.com')
|
|
expect(link.attr('href')).toBe('http://apple.com')
|
|
})
|
|
})
|
|
|
|
describe('show()', function() {
|
|
it('creates xlink:show attribute', function() {
|
|
link.show('replace')
|
|
expect(link.attr('show')).toBe('replace')
|
|
})
|
|
})
|
|
|
|
describe('target()', function() {
|
|
it('creates target attribute', function() {
|
|
link.target('_blank')
|
|
expect(link.attr('target')).toBe('_blank')
|
|
})
|
|
})
|
|
|
|
describe('SVG.Element', function() {
|
|
var element
|
|
|
|
beforeEach(function() {
|
|
element = draw.rect(100,100)
|
|
})
|
|
|
|
describe('linkTo()', function() {
|
|
it('wraps the called element in a link with given url', function() {
|
|
element.linkTo(url)
|
|
expect(element.parent().attr('href')).toBe(url)
|
|
})
|
|
it('wraps the called element in a link with given block', function() {
|
|
element.linkTo(function(link) {
|
|
link.to(url).target('_blank')
|
|
})
|
|
expect(element.parent().attr('href')).toBe(url)
|
|
expect(element.parent().attr('target')).toBe('_blank')
|
|
})
|
|
})
|
|
})
|
|
|
|
}) |