summaryrefslogtreecommitdiffstats
path: root/toolkit/components/microformats/test/interface-tests/isMicroformat-test.js
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/components/microformats/test/interface-tests/isMicroformat-test.js')
-rw-r--r--toolkit/components/microformats/test/interface-tests/isMicroformat-test.js146
1 files changed, 146 insertions, 0 deletions
diff --git a/toolkit/components/microformats/test/interface-tests/isMicroformat-test.js b/toolkit/components/microformats/test/interface-tests/isMicroformat-test.js
new file mode 100644
index 000000000..7081b2880
--- /dev/null
+++ b/toolkit/components/microformats/test/interface-tests/isMicroformat-test.js
@@ -0,0 +1,146 @@
+/*
+Unit test for isMicroformat
+*/
+
+assert = chai.assert;
+
+
+describe('Microformat.isMicroformat', function() {
+
+ it('true - v2', function(){
+
+ var doc,
+ node;
+
+ var html = '<a class="h-card" href="http://glennjones.net"><span class="p-name">Glenn</span></a>';
+
+ doc = document.implementation.createHTMLDocument('New Document');
+ node = document.createElement('div');
+ doc.body.appendChild( node );
+ node.innerHTML = html;
+ node = doc.querySelector( 'a' );
+
+ assert.isTrue( Microformats.isMicroformat( node ) );
+
+ });
+
+
+ it('true - v1', function(){
+
+ var doc,
+ node;
+
+ var html = '<a class="vcard" href="http://glennjones.net"><span class="fn">Glenn</span></a>';
+
+ doc = document.implementation.createHTMLDocument('New Document');
+ node = document.createElement('div');
+ doc.body.appendChild( node );
+ node.innerHTML = html;
+ node = doc.querySelector( 'a' );
+
+ assert.isTrue( Microformats.isMicroformat( node ) );
+
+ });
+
+
+ it('true - v2 filter', function(){
+
+ var doc,
+ node;
+
+ var html = '<a class="h-card" href="http://glennjones.net"><span class="p-name">Glenn</span></a>';
+
+ doc = document.implementation.createHTMLDocument('New Document');
+ node = document.createElement('div');
+ doc.body.appendChild( node );
+ node.innerHTML = html;
+ node = doc.querySelector( 'a' );
+
+ assert.isTrue( Microformats.isMicroformat( node, {'filters': ['h-card']} ) );
+
+ });
+
+
+ it('true - v1 filter', function(){
+
+ var doc,
+ node;
+
+ var html = '<a class="vcard" href="http://glennjones.net"><span class="fn">Glenn</span></a>';
+
+ doc = document.implementation.createHTMLDocument('New Document');
+ node = document.createElement('div');
+ doc.body.appendChild( node );
+ node.innerHTML = html;
+ node = doc.querySelector( 'a' );
+
+ assert.isTrue( Microformats.isMicroformat( node, {'filters': ['h-card']} ) );
+
+ });
+
+
+ it('false - v2 filter', function(){
+
+ var doc,
+ node;
+
+ var html = '<a class="h-card" href="http://glennjones.net"><span class="p-name">Glenn</span></a>';
+
+ doc = document.implementation.createHTMLDocument('New Document');
+ node = document.createElement('div');
+ doc.body.appendChild( node );
+ node.innerHTML = html;
+ node = doc.querySelector( 'a' );
+
+ assert.isFalse( Microformats.isMicroformat( node, {'filters': ['h-entry']} ) );
+
+ });
+
+
+
+ it('false - property', function(){
+
+ var doc,
+ node;
+
+ var html = '<span class="p-name">Glenn</span>';
+
+ doc = document.implementation.createHTMLDocument('New Document');
+ node = document.createElement('div');
+ doc.body.appendChild( node );
+ node.innerHTML = html;
+ node = doc.querySelector( 'span' );
+
+ assert.isFalse( Microformats.isMicroformat( node ) );
+
+ });
+
+
+ it('false - no class', function(){
+
+ var doc,
+ node;
+
+ var html = '<span>Glenn</span>';
+
+ doc = document.implementation.createHTMLDocument('New Document');
+ node = document.createElement('div');
+ doc.body.appendChild( node );
+ node.innerHTML = html;
+ node = doc.querySelector( 'span' );
+
+ assert.isFalse( Microformats.isMicroformat( node ) );
+
+ });
+
+
+ it('false - no node', function(){
+ assert.isFalse( Microformats.isMicroformat( ) );
+ });
+
+
+ it('false - undefined node', function(){
+ assert.isFalse( Microformats.isMicroformat( undefined ) );
+ });
+
+ });