| 
									
										
										
										
											2008-04-11 08:15:26 -04:00
										 |  |  | USING: accessors math kernel namespaces continuations | 
					
						
							|  |  |  | io.files io.monitors io.monitors.recursive io.backend | 
					
						
							| 
									
										
										
										
											2008-12-15 04:33:04 -05:00
										 |  |  | concurrency.mailboxes tools.test destructors io.files.info | 
					
						
							|  |  |  | io.pathnames io.files.temp io.directories.hierarchy ;
 | 
					
						
							| 
									
										
										
										
											2008-04-11 08:15:26 -04:00
										 |  |  | IN: io.monitors.recursive.tests | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | SINGLETON: mock-io-backend | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | TUPLE: counter i ;
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | SYMBOL: dummy-monitor-created | 
					
						
							|  |  |  | SYMBOL: dummy-monitor-disposed | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | TUPLE: dummy-monitor < monitor ;
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | M: dummy-monitor dispose | 
					
						
							| 
									
										
										
										
											2009-08-13 20:21:44 -04:00
										 |  |  |     drop dummy-monitor-disposed get [ 1 + ] change-i drop ;
 | 
					
						
							| 
									
										
										
										
											2008-04-11 08:15:26 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  | M: mock-io-backend (monitor) | 
					
						
							|  |  |  |     nip
 | 
					
						
							|  |  |  |     over exists? [ | 
					
						
							| 
									
										
										
										
											2008-04-14 06:07:31 -04:00
										 |  |  |         dummy-monitor new-monitor | 
					
						
							| 
									
										
										
										
											2009-08-13 20:21:44 -04:00
										 |  |  |         dummy-monitor-created get [ 1 + ] change-i drop
 | 
					
						
							| 
									
										
										
										
											2008-04-11 08:15:26 -04:00
										 |  |  |     ] [ | 
					
						
							|  |  |  |         "Does not exist" throw
 | 
					
						
							|  |  |  |     ] if ;
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | M: mock-io-backend link-info | 
					
						
							|  |  |  |     global [ link-info ] bind ;
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-04-13 16:06:27 -04:00
										 |  |  | [ ] [ 0 counter boa dummy-monitor-created set ] unit-test | 
					
						
							|  |  |  | [ ] [ 0 counter boa dummy-monitor-disposed set ] unit-test | 
					
						
							| 
									
										
										
										
											2008-04-11 08:15:26 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  | [ ] [ | 
					
						
							|  |  |  |     mock-io-backend io-backend [ | 
					
						
							|  |  |  |         "" resource-path <mailbox> <recursive-monitor> dispose | 
					
						
							|  |  |  |     ] with-variable
 | 
					
						
							|  |  |  | ] unit-test | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [ t ] [ dummy-monitor-created get i>> 0 > ] unit-test | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [ t ] [ dummy-monitor-created get i>> dummy-monitor-disposed get i>> = ] unit-test | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [ "doesnotexist" temp-file delete-tree ] ignore-errors
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [ | 
					
						
							|  |  |  |     mock-io-backend io-backend [ | 
					
						
							|  |  |  |         "doesnotexist" temp-file <mailbox> <recursive-monitor> dispose | 
					
						
							|  |  |  |     ] with-variable
 | 
					
						
							|  |  |  | ] must-fail | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [ ] [ | 
					
						
							|  |  |  |     mock-io-backend io-backend [ | 
					
						
							|  |  |  |         "" resource-path <mailbox> <recursive-monitor> | 
					
						
							|  |  |  |         [ dispose ] [ dispose ] bi
 | 
					
						
							|  |  |  |     ] with-variable
 | 
					
						
							|  |  |  | ] unit-test |