aboutsummaryrefslogtreecommitdiffstats
path: root/external/qunit-assert-classes/qunit-assert-classes.js
diff options
context:
space:
mode:
Diffstat (limited to 'external/qunit-assert-classes/qunit-assert-classes.js')
-rw-r--r--external/qunit-assert-classes/qunit-assert-classes.js169
1 files changed, 0 insertions, 169 deletions
diff --git a/external/qunit-assert-classes/qunit-assert-classes.js b/external/qunit-assert-classes/qunit-assert-classes.js
deleted file mode 100644
index 93edebf9d..000000000
--- a/external/qunit-assert-classes/qunit-assert-classes.js
+++ /dev/null
@@ -1,169 +0,0 @@
-( function( factory ) {
- if ( typeof define === "function" && define.amd ) {
-
- // AMD. Register as an anonymous module.
- define( [
- "qunit"
- ], factory );
- } else {
-
- // Browser globals
- factory( QUnit );
- }
-}( function( QUnit ) {
-
- function inArray( haystack, needle ) {
- for ( var i = 0; i < haystack.length; i++ ) {
- if (
- ( needle instanceof RegExp && needle.test( haystack[ i ] ) )||
- ( typeof needle === "string" && haystack[ i ] === needle )
- ) {
- return true;
- }
- }
- return false;
- }
-
- function check( element, search ) {
- var i, classAttribute, elementClassArray,
- missing = [],
- found = [];
-
- if ( element.jquery && element.length !== 1 ) {
- throw new Error( "Class checks can only be performed on a single element on a collection" );
- }
-
- element = element.jquery ? element[ 0 ] : element;
- classAttribute = element.getAttribute( "class" );
-
- if ( classAttribute ) {
- elementClassArray = splitClasses( classAttribute );
- if ( search instanceof RegExp ) {
- if ( inArray( elementClassArray, search ) ) {
- found.push( search );
- } else {
- missing.push( search );
- }
- } else {
- for( i = 0; i < search.length; i++ ) {
- if ( !inArray( elementClassArray, search[ i ] ) ) {
- missing.push( search[ i ] );
- } else {
- found.push( search[ i ] );
- }
- }
- }
- } else {
- missing = search;
- }
-
- return {
- missing: missing,
- found: found,
- element: element,
- classAttribute: classAttribute
- };
- }
-
- function splitClasses( classes ) {
- return classes.match( /\S+/g ) || [];
- }
-
- function pluralize( message, classes ) {
- return message + ( classes.length > 1 ? "es" : "" );
- }
-
- QUnit.extend( QUnit.assert, {
- hasClasses: function( element, classes, message ) {
- var classArray = splitClasses( classes ),
- results = check( element, classArray );
-
- message = message || pluralize( "Element must have class", classArray );
-
- this.push( !results.missing.length, results.found.join( " " ), classes, message );
- },
- lacksClasses: function( element, classes, message ) {
- var classArray = splitClasses( classes ),
- results = check( element, classArray );
-
- message = message || pluralize( "Element must not have class", classArray );
-
- this.push( !results.found.length, results.found.join( " " ), classes, message );
- },
- hasClassesStrict: function( element, classes, message ) {
- var result,
- classArray = splitClasses( classes ),
- results = check( element, classArray );
-
- message = message || pluralize( "Element must only have class", classArray );
-
- result = !results.missing.length && results.element.getAttribute( "class" ) &&
- splitClasses( results.element.getAttribute( "class" ) ).length ===
- results.found.length;
-
- this.push( result, results.found.join( " " ), classes, message );
- },
- hasClassRegex: function( element, regex, message ) {
- var results = check( element, regex );
-
- message = message || "Element must have class matching " + regex;
-
- this.push( !!results.found.length, results.found.join( " " ), regex, message );
- },
- lacksClassRegex: function( element, regex, message ) {
- var results = check( element, regex );
-
- message = message || "Element must not have class matching " + regex;
-
- this.push( results.missing.length, results.missing.join( " " ), regex, message );
- },
- hasClassStart: function( element, partialClass, message ) {
- var results = check( element, new RegExp( "^" + partialClass ) );
-
- message = message || "Element must have class starting with " + partialClass;
-
- this.push( results.found.length, results.found.join( " " ), partialClass, message );
- },
- lacksClassStart: function( element, partialClass, message ) {
- var results = check( element, new RegExp( "^" + partialClass ) );
-
- message = message || "Element must not have class starting with " + partialClass;
-
- this.push( results.missing.length, results.missing.join( " " ), partialClass, message );
- },
- hasClassPartial: function( element, partialClass, message ) {
- var results = check( element, new RegExp( partialClass ) );
-
- message = message || "Element must have class containing '" + partialClass + "'";
-
- this.push( results.found.length, results.found.join( " " ), partialClass, message );
- },
- lacksClassPartial: function( element, partialClass, message ) {
- var results = check( element, new RegExp( partialClass ) );
-
- message = message || "Element must not have class containing '" + partialClass + "'";
-
- this.push( results.missing.length, results.missing.join( " " ), partialClass, message );
- },
- lacksAllClasses: function( element, message ) {
- element = element.jquery ? element[ 0 ] : element;
-
- var classAttribute = element.getAttribute( "class" ) || "",
- classes = splitClasses( classAttribute );
-
- message = message || "Element must not have any classes";
-
- this.push( !classes.length, !classes.length, true, message );
- },
- hasSomeClass: function( element, message ) {
- element = element.jquery ? element[ 0 ] : element;
-
- var classAttribute = element.getAttribute( "class" ) || "",
- classes = splitClasses( classAttribute );
-
- message = message || "Element must have a class";
-
- this.push( classes.length, classes.length, true, message );
- }
- });
-} ) );