Test.InnerHTML - Helps checking innerHTML in unit tests
*/
// Set up package.
if (typeof JSAN != 'undefined') JSAN.use('Test.More');
else {
if (typeof Test == 'undefined' || typeof Test.More == 'undefined')
throw new Error(
"You must load either JSAN or Test.More "
+ "before loading Test.InnerHTML"
);
}
Test.InnerHTML = {};
Test.InnerHTML.EXPORT = [
'inner_html_is',
'inner_html_contains',
'inner_html_like',
'inner_html_isnt',
'inner_html_excludes',
'inner_html_unlike'
];
Test.InnerHTML.EXPORT_TAGS = { ':all': Test.InnerHTML.EXPORT };
Test.InnerHTML.VERSION = '0.01';
Test.InnerHTML.inner_html_is = function (elem, html, desc){
if (typeof(elem) != 'object') elem = document.getElementById(elem);
Test.More.is(elem.innerHTML, html, desc);
}
Test.InnerHTML.inner_html_contains = function (elem, html, desc){
if (typeof(elem) != 'object') elem = document.getElementById(elem);
Test.More.cmpOK(elem.innerHTML.indexOf(html), '>' , -1, desc);
}
Test.InnerHTML.inner_html_like = function (elem, html, desc){
if (typeof(elem) != 'object') elem = document.getElementById(elem);
Test.More.like(elem.innerHTML, html, desc);
}
Test.InnerHTML.inner_html_isnt = function (elem, html, desc){
if (typeof(elem) != 'object') elem = document.getElementById(elem);
Test.More.isnt(elem.innerHTML, html, desc);
}
Test.InnerHTML.inner_html_excludes = function (elem, html, desc){
if (typeof(elem) != 'object') elem = document.getElementById(elem);
Test.More.is(elem.innerHTML.indexOf(html), -1, desc);
}
Test.InnerHTML.inner_html_unlike = function (elem, html, desc){
if (typeof(elem) != 'object') elem = document.getElementById(elem);
Test.More.unlike(elem.innerHTML, html, desc);
}
// Handle exporting.
if (typeof JSAN == 'undefined') Test.Builder.exporter(Test.InnerHTML);
/*
=head1 NAME
Test.InnerHTML - Helps checking innerHTML in unit tests
*/