mirror of
https://github.com/silverstripe/silverstripe-framework
synced 2024-09-05 09:11:25 +02:00
78 lines
1.7 KiB
JavaScript
78 lines
1.7 KiB
JavaScript
|
|
||
|
describe 'Concrete'
|
||
|
describe 'Properties'
|
||
|
before
|
||
|
$('body').append('<div id="dom_test"></div>')
|
||
|
end
|
||
|
after
|
||
|
$('#dom_test').remove()
|
||
|
end
|
||
|
|
||
|
before_each
|
||
|
$.concrete.clear_all_rules()
|
||
|
$('#dom_test').html('<div id="a" class="a b c"></div><div id="b" class="b c"></div>')
|
||
|
end
|
||
|
|
||
|
it 'can define and get a basic property'
|
||
|
$('#a').concrete({
|
||
|
Foo: null
|
||
|
});
|
||
|
$('.a').getFoo().should.be_null
|
||
|
end
|
||
|
|
||
|
it 'can define and set a basic property'
|
||
|
$('#a').concrete({
|
||
|
Foo: null
|
||
|
});
|
||
|
$('.a').setFoo(1);
|
||
|
$('.a').getFoo().should.equal 1
|
||
|
end
|
||
|
|
||
|
it 'can define a default value'
|
||
|
$('#a').concrete({
|
||
|
Foo: 1
|
||
|
});
|
||
|
$('.a').getFoo().should.equal 1
|
||
|
end
|
||
|
|
||
|
it 'should manage proprties in namespaces without clashing'
|
||
|
$('#a').concrete({
|
||
|
Foo: 1
|
||
|
});
|
||
|
|
||
|
$.concrete('test', function($){
|
||
|
$('#a').concrete({
|
||
|
Foo: 2
|
||
|
});
|
||
|
});
|
||
|
|
||
|
$('.a').getFoo().should.equal 1
|
||
|
$('.a').concrete('test').getFoo().should.equal 2
|
||
|
|
||
|
$('.a').setFoo(4);
|
||
|
$('.a').concrete('test').setFoo(8);
|
||
|
|
||
|
$('.a').getFoo().should.equal 4
|
||
|
$('.a').concrete('test').getFoo().should.equal 8
|
||
|
end
|
||
|
|
||
|
it 'should manage directly setting proprties in namespaces without clashing'
|
||
|
$('#a').concrete({
|
||
|
Foo: null
|
||
|
});
|
||
|
|
||
|
$.concrete('test', function($){
|
||
|
$('#a').concrete({
|
||
|
Foo: null
|
||
|
});
|
||
|
});
|
||
|
|
||
|
$('.a').concreteData('Foo', 4);
|
||
|
$('.a').concrete('test').concreteData('Foo', 8);
|
||
|
|
||
|
$('.a').concreteData('Foo').should.equal 4
|
||
|
$('.a').concrete('test').concreteData('Foo').should.equal 8
|
||
|
end
|
||
|
end
|
||
|
end
|