2012-03-21 19:41:03 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// Should not break it... should not include complete directory...
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								require  =  require ( "../../../require-polyfill" ) ( require . valueOf ( ) ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-03-10 20:11:23 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								window . test ( true ,  "index.js should be replaced with index.web.js" ) ;  
						 
					
						
							
								
									
										
										
										
											2012-04-07 10:13:26 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								require ( "script!../js/libary1.js" ) ;  
						 
					
						
							
								
									
										
										
										
											2012-03-10 20:11:23 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								window . test ( window . libary1 ,  "libary1 loaded" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( window . libary2 . ok ,  "libary2 loaded" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								require . ensure ( "subcontent" ,  function ( require )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// Comments work!
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									exports . ok  =  true ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									window . test ( require ( "subcontent" )  ===  "replaced" ,  "node_modules should be replaced with web_modules" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									window . test ( require ( "subcontent2/file.js" )  ===  "orginal" ,  "node_modules should still work when web_modules exists" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								setTimeout ( function ( )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									window . test ( exports . ok ,  "asnyc loaded, exports is still avaible" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ,  3000 ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "./circular" )  ===  1 ,  "circular require should work" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "./singluar.js" ) . value  ===  1 ,  "sigular module loaded" ) ;  
						 
					
						
							
								
									
										
										
										
											2012-03-12 07:30:54 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								require ( "./sing"  +  "luar.js" ) . value  =  2 ;  
						 
					
						
							
								
									
										
										
										
											2012-03-10 20:11:23 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "./singluar" ) . value  ===  2 ,  "exported object is singluar" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "subfilemodule" )  ===  "subfilemodule" ,  "Modules as single file should load" ) ;  
						 
					
						
							
								
									
										
										
										
											2012-03-12 04:37:18 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								window . test ( require . context ( "../templates" ) ( "./tmpl" )  ===  "test template" ,  "Context should work" ) ;  
						 
					
						
							
								
									
										
										
										
											2012-03-12 07:30:54 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								window . test ( require  .  context  (  "."  +  "."  +  "/"  +  "templ"  +  "ates"  )  (  "./subdir/tmpl.js"  )  ===  "subdir test template" ,  "Context should work with subdirectories and splitted" ) ;  
						 
					
						
							
								
									
										
										
										
											2012-03-14 23:33:46 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								var  template  =  "tmpl" ,  templateFull  =  "./tmpl.js" ;  
						 
					
						
							
								
									
										
										
										
											2012-03-12 04:37:18 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								window . test ( require ( "../templates/"  +  template )  ===  "test template" ,  "Automatical context should work" ) ;  
						 
					
						
							
								
									
										
										
										
											2012-03-14 23:33:46 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								window . test ( require ( "../templates/templateLoader" ) ( templateFull )  ===  "test template" ,  "Automatical context without prefix should work" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "../templates/templateLoaderIndirect" ) ( templateFull )  ===  "test template" ,  "Automatical context should work with require identifier" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( function ( require )  {  return  require ;  } ( 1234 )  ===  1234 ,  "require overwrite in anonymos function" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  testFunc ( abc ,  require )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  require ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( testFunc ( 333 ,  678 )  ===  678 ,  "require overwrite in named function" ) ;  
						 
					
						
							
								
									
										
										
										
											2012-03-20 02:59:38 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								function  testCase ( number )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									//window.test(require("./folder/file" + (number === 1 ? 1 : "2")) === "file" + number);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									window . test ( require ( number  ===  1  ?  "../folder/file1"  :  number  ===  2  ?  "../folder/file2"  :  number  ===  3  ?  "../folder/file3"  :  "./missingModule" )  ===  "file"  +  number ,  "?: operator in require do not create context, test " + number ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								testCase ( 1 ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								testCase ( 2 ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								testCase ( 3 ) ;  
						 
					
						
							
								
									
										
										
										
											2012-03-26 20:49:03 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								window . test ( require ( "../folder/typeof" )  ===  "function" ,  "typeof require should be function" ) ;  
						 
					
						
							
								
									
										
										
										
											2012-03-14 23:33:46 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-03-20 02:59:38 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								var  error  =  null ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								try  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									testCase ( 4 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  catch ( e )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									error  =  e ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( error  instanceof  Error ,  "Missing module should throw Error, indirect" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								error  =  null ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								try  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									require ( "./missingModule2" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  catch ( e )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									error  =  e ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( error  instanceof  Error ,  "Missing module should throw Error, direct" ) ;  
						 
					
						
							
								
									
										
										
										
											2012-03-12 04:37:18 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								require . ensure ( [ ] ,  function ( require )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									var  contextRequire  =  require . context ( "." ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									window . test ( contextRequire ( "./singluar" ) . value  ===  2 ,  "Context works in chunk" ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-12 07:30:54 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									var  singl  =  "singl" ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									window . test ( require ( "."  +  "/"  +  singl  +  "uar" ) . value  ===  2 ,  "Context works in chunk, when splitted" ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-15 21:38:55 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									window . test ( typeof  module . id  ===  "string" ,  "module.id should be a string" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									window . test ( process . argv  &&  process . argv . length  >  1 ,  "process.argv should be an array" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									process . nextTick ( function ( )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										sum2 ++ ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									process . on ( "xyz" ,  function ( )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										sum2 ++ ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									process . emit ( "xyz" ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-16 06:01:42 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									window . test ( window  ===  global ,  "window === global" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									( function ( )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										var  require  =  123 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										window . test ( require  ===  123 ,  "overwrite require via variable should be ok" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} ( ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									( function ( )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										var  module  =  1233 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										window . test ( module  ===  1233 ,  "overwrite module via variable should be ok" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} ( ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-12 04:37:18 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								} ) ;  
						 
					
						
							
								
									
										
										
										
											2012-03-10 20:11:23 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								require . ensure ( [ ] ,  function ( require )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									require ( "./acircular" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									require ( "./duplicate" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									require ( "./duplicate2" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								require . ensure ( [ ] ,  function ( require )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									require ( "./acircular2" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									require ( "./duplicate" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									require ( "./duplicate2" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								var  sum  =  0 ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								require . ensure ( [ ] ,  function ( require )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									require ( "./duplicate" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									require ( "./duplicate2" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									sum ++ ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								require . ensure ( [ ] ,  function ( require )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									require ( "./duplicate" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									require ( "./duplicate2" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									sum ++ ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ) ;  
						 
					
						
							
								
									
										
										
										
											2012-03-15 21:38:55 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								var  sum2  =  0 ;  
						 
					
						
							
								
									
										
										
										
											2012-03-10 20:11:23 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								setTimeout ( function ( )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									window . test ( sum  ===  2 ,  "Multiple callbacks on code load finish" ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-15 21:38:55 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									window . test ( sum2  ===  2 ,  "process.nextTick and process.emit/on should be polyfilled" ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-10 20:11:23 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								} ,  3000 ) ;  
						 
					
						
							
								
									
										
										
										
											2012-03-27 06:00:32 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// Loader tests
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "testloader!../resources/abc.txt" )  ===  "abcwebpack" ,  "Loader in package.json" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "testloader/lib/loader!../resources/abc.txt" )  ===  "abcwebpack" ,  "Loader with .webpack-loader.js extention" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "testloader/lib/loader.web-loader.js!../resources/abc.txt" )  ===  "abcweb" ,  "Loader with .web-loader.js extention" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "testloader/lib/loader.loader.js!../resources/abc.txt" )  ===  "abcloader" ,  "Loader with .loader.js extention" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "testloader/lib/loader-indirect!../resources/abc.txt" )  ===  "abcwebpack" ,  "Loader with .js extention and requires in loader" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "testloader!../loaders/reverseloader!../resources/abc.txt" )  ===  "cbawebpack" ,  "Multiple loaders and relative paths" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "raw!../resources/abc.txt" )  ===  "abc" ,  "Buildin 'raw' loader" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "jade!../resources/template.jade" ) ( { abc :  "abc" } )  ===  "<p>abc</p>" ,  "Buildin 'jade' loader" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "../resources/template.jade" ) ( { abc :  "abc" } )  ===  "<p>abc</p>" ,  "Buildin 'jade' loader, by ext" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "json!../../../package.json" ) . name  ===  "webpack" ,  "Buildin 'json' loader" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "../../../package.json" ) . name  ===  "webpack" ,  "Buildin 'json' loader, by ext" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "coffee!../resources/script.coffee" )  ===  "coffee test" ,  "Buildin 'coffee' loader" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "../resources/script.coffee" )  ===  "coffee test" ,  "Buildin 'coffee' loader, by ext" ) ;  
						 
					
						
							
								
									
										
										
										
											2012-04-07 09:20:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								window . test ( require ( "css!../css/stylesheet.css" ) . indexOf ( ".rule-direct" )  !==  - 1 ,  "Buildin 'css' loader, direct content" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "css!../css/stylesheet.css" ) . indexOf ( ".rule-import1" )  !==  - 1 ,  "Buildin 'css' loader, imported rule" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "css!../css/stylesheet.css" ) . indexOf ( ".rule-import2" )  !==  - 1 ,  "Buildin 'css' loader, double imported rule" ) ;  
						 
					
						
							
								
									
										
										
										
											2012-05-04 22:42:38 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								window . test ( require ( "css!val!../css/generateCss" ) . indexOf ( "generated" )  !==  - 1 ,  "Buildin 'val' loader, combined with css" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "css!val!../css/generateCss" ) . indexOf ( ".rule-import2" )  !==  - 1 ,  "Buildin 'val' loader, combined with css, imported css" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "raw!val!../css/generateCss" ) . indexOf ( "generated" )  !==  - 1 ,  "Buildin 'val' loader, combined with raw" ) ;  
						 
					
						
							
								
									
										
										
										
											2012-05-01 21:47:37 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								window . test ( require ( "less!../less/stylesheet.less" ) . indexOf ( ".less-rule-direct" )  !==  - 1 ,  "Buildin 'less' loader, direct content" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "less!../less/stylesheet.less" ) . indexOf ( ".less-rule-import1" )  !==  - 1 ,  "Buildin 'less' loader, imported rule" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "less!../less/stylesheet.less" ) . indexOf ( ".less-rule-import2" )  !==  - 1 ,  "Buildin 'less' loader, double imported rule" ) ;  
						 
					
						
							
								
									
										
										
										
											2012-04-07 09:20:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// Buildin 'style' loader adds css to document
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								require ( "../css/stylesheet.css" ) ;  
						 
					
						
							
								
									
										
										
										
											2012-05-01 21:47:37 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								require ( "../less/stylesheet.less" ) ;  
						 
					
						
							
								
									
										
										
										
											2012-04-03 22:26:08 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-05-07 23:59:00 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// file loader
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "file/png!../img/image.png" ) . indexOf ( "js/" )  ===  0 ,  "Buildin 'file' loader, png" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								setTimeout ( function ( )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									document . getElementById ( "image" ) . src  =  require ( "file/png!../img/image.png" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ,  200 ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-04-03 22:26:08 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// Loader & Context
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								var  abc  =  "abc" ,  scr  =  "script.coffee" ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "../resources/"  +  scr )  ===  "coffee test" ,  "context should process extensions" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "raw!../resources/"  +  abc  +  ".txt" )  ===  "abc" ,  "raw loader with context" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-07-04 17:50:20 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// require behavior
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								var  singlarObj  =  require ( "./singluar2" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								var  singlarId  =  require . resolve ( "./singluar2" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								var  singlarIdInConditional  =  require . resolve ( true  ?  "./singluar2"  :  "./singluar" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( typeof  singlarId  ==  "number" ,  "require.resolve returns a id" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( singlarIdInConditional  ===  singlarId ,  "require.resolve returns a id if in conditional" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( typeof  require . cache [ singlarId ]  ==  "object" ,  "require.cache can be read" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								delete  require . cache [ singlarId ] ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( require ( "./singluar2" )  !==  singlarObj ,  "require.cache can be deleted" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-04-05 20:59:01 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-08-07 03:43:57 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// AMD
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								var  template  =  "tmpl" ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								var  amdLoaded  =  false ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								require ( [ "./circular" ,  "../templates/"  +  template ,  true  ?  "./circular"  :  "./circular" ] ,  function ( circular ,  testTemplate ,  circular2 )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									window . test ( circular  ===  1 ,  "AMD-style requires should work" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									window . test ( circular2  ===  1 ,  "AMD-style requires should work with conditionals" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									window . test ( testTemplate  ===  "test template" ,  "AMD-style requires should work with context" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									amdLoaded  =  true ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								window . test ( amdLoaded ,  "AMD-style require should work (sync)" ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-05-04 22:42:38 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// Tests from node.js
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								require ( "bundle!../nodetests" ) ;