/public/node_modules/xmldom/test/error.js
JavaScript | 71 lines | 67 code | 2 blank | 2 comment | 2 complexity | 129f5a3e944b3631a540055d96416a3d MD5 | raw file
- var wows = require('vows');
- var DOMParser = require('xmldom').DOMParser;
-
-
- wows.describe('errorHandle').addBatch({
- 'only function two args': function() {
- var error = {}
- var parser = new DOMParser({
- errorHandler:function(key,msg){error[key] = msg}
- });
- try{
- var doc = parser.parseFromString('<html disabled><1 1="2"/></body></html>', 'text/xml');
- console.assert(error.warning!=null ,'error.error:'+error.warning);
- console.assert(error.error!=null ,'error.error:'+error.error);
- console.assert(error.fatalError!=null ,'error.error:'+error.fatalError);
- //console.log(doc+'')
- }catch(e){
- }
- },
- 'only function': function() {
- var error = []
- var parser = new DOMParser({
- errorHandler:function(msg){error.push(msg)}
- });
- try{
- var doc = parser.parseFromString('<html disabled><1 1="2"/></body></html>', 'text/xml');
- error.map(function(e){error[e.replace(/\:[\s\S]*/,'')]=e})
- console.assert(error.warning!=null ,'error.error:'+error.warning);
- console.assert(error.error!=null ,'error.error:'+error.error);
- console.assert(error.fatalError!=null ,'error.error:'+error.fatalError);
- //console.log(doc+'')
- }catch(e){
- }
- },
- 'only function': function() {
- var error = []
- var errorMap = []
- new DOMParser({
- errorHandler:function(msg){error.push(msg)}
- }).parseFromString('<html><body title="1<2">test</body></html>', 'text/xml');
- 'warn,warning,error,fatalError'.replace(/\w+/g,function(k){
- var errorHandler = {};
- errorMap[k] = [];
- errorHandler[k] = function(msg){errorMap[k] .push(msg)}
- new DOMParser({errorHandler:errorHandler}).parseFromString('<html><body title="1<2">test</body></html>', 'text/xml');
- });
- for(var n in errorMap){
- console.assert(error.length == errorMap[n].length)
- }
- },
- 'error function': function() {
- var error = []
- var parser = new DOMParser({
- locator:{},
- errorHandler:{
- error:function(msg){
- error.push(msg);
- throw new Error(msg)
- }
- }
- });
- try{
- var doc = parser.parseFromString('<html><body title="1<2"><table><;test</body></body></html>', 'text/html');
- }catch(e){
- console.log(e);
- console.assert(/\n@#\[line\:\d+,col\:\d+\]/.test(error.join(' ')),'line,col must record:'+error)
- return;
- }
- console.assert(false,doc+' should be null');
- }
- }).run();