// Path: Source/test/jReto/util/OrderVerifier.java
// public class OrderVerifier {
// 	private int current = 0;
// 	
// 	public void check(int value) {
// 		if (value < current) throw new IllegalArgumentException("Wrong order ("+current+" called before "+value+")");
// 		
// 		this.current = value;
// 	}
// }
// 
// Path: Source/test/jReto/util/RunLoop.java
// public class RunLoop implements Executor {
// 	private BlockingQueue<Runnable> queue;
// 	private boolean running;
// 	private boolean executeImmediately;
// 	
// 	public RunLoop(boolean executeImmediately) {
// 		this.queue = new LinkedBlockingQueue<>();
// 		this.running = true;
// 		this.executeImmediately = executeImmediately;
// 	}
// 	
// 	public void execute(Runnable runnable) {
// 		if (this.executeImmediately) {
// 			runnable.run();
// 		} else {
// 			this.queue.add(runnable);
// 		}
// 	}
// 	
// 	public void start() {
// 		while (this.running) {
// 			try {
// 				this.queue.take().run();
// 			} catch (InterruptedException e) {
// 				// TODO Auto-generated catch block
// 				e.printStackTrace();
// 			}
// 		}
// 	}
// 	
// 	public void stop() {
// 		this.queue.add(new Runnable() {
// 			
// 			@Override
// 			public void run() {
// 				RunLoop.this.running = false;
// 			}
// 		});
// 	}
// }


import jReto.util.OrderVerifier;
import jReto.util.RunLoop;
import org.junit.Test;
package jReto.meta;



public class RunLoopTest {
	@Test
	public void testDispatchedRunLoop() {
		final RunLoop runloop = new RunLoop(false);
// Path: Source/test/jReto/util/OrderVerifier.java
// public class OrderVerifier {
// 	private int current = 0;
// 	
// 	public void check(int value) {
// 		if (value < current) throw new IllegalArgumentException("Wrong order ("+current+" called before "+value+")");
// 		
// 		this.current = value;
// 	}
// }
// 
// Path: Source/test/jReto/util/RunLoop.java
// public class RunLoop implements Executor {
// 	private BlockingQueue<Runnable> queue;
// 	private boolean running;
// 	private boolean executeImmediately;
// 	
// 	public RunLoop(boolean executeImmediately) {
// 		this.queue = new LinkedBlockingQueue<>();
// 		this.running = true;
// 		this.executeImmediately = executeImmediately;
// 	}
// 	
// 	public void execute(Runnable runnable) {
// 		if (this.executeImmediately) {
// 			runnable.run();
// 		} else {
// 			this.queue.add(runnable);
// 		}
// 	}
// 	
// 	public void start() {
// 		while (this.running) {
// 			try {
// 				this.queue.take().run();
// 			} catch (InterruptedException e) {
// 				// TODO Auto-generated catch block
// 				e.printStackTrace();
// 			}
// 		}
// 	}
// 	
// 	public void stop() {
// 		this.queue.add(new Runnable() {
// 			
// 			@Override
// 			public void run() {
// 				RunLoop.this.running = false;
// 			}
// 		});
// 	}
// }


// Path: Source/test/jReto/meta/RunLoopTest.java
import jReto.util.OrderVerifier;
import jReto.util.RunLoop;
import org.junit.Test;

package jReto.meta;



public class RunLoopTest {
	@Test
	public void testDispatchedRunLoop() {
		final RunLoop runloop = new RunLoop(false);
		final OrderVerifier verifyer = new OrderVerifier();