mirror of https://github.com/v2ray/v2ray-core
				
				
				
			test case for periodic task
							parent
							
								
									5755d4153a
								
							
						
					
					
						commit
						c368412728
					
				|  | @ -0,0 +1,29 @@ | |||
| package signal_test | ||||
| 
 | ||||
| import ( | ||||
| 	"testing" | ||||
| 	"time" | ||||
| 
 | ||||
| 	"v2ray.com/core/common" | ||||
| 	. "v2ray.com/core/common/signal" | ||||
| 	. "v2ray.com/ext/assert" | ||||
| ) | ||||
| 
 | ||||
| func TestPeriodicTaskStop(t *testing.T) { | ||||
| 	assert := With(t) | ||||
| 
 | ||||
| 	value := 0 | ||||
| 	task := &PeriodicTask{ | ||||
| 		Interval: time.Second * 2, | ||||
| 		Execute: func() error { | ||||
| 			value++ | ||||
| 			return nil | ||||
| 		}, | ||||
| 	} | ||||
| 	common.Must(task.Start()) | ||||
| 	time.Sleep(time.Second * 5) | ||||
| 	common.Must(task.Close()) | ||||
| 	assert(value, Equals, 3) | ||||
| 	time.Sleep(time.Second * 4) | ||||
| 	assert(value, Equals, 3) | ||||
| } | ||||
		Loading…
	
		Reference in New Issue
	
	 Darien Raymond
						Darien Raymond