| 
									
										
										
										
											2018-10-21 20:33:08 +02:00
										 |  |  | package core_test | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | import ( | 
					
						
							|  |  |  | 	"context" | 
					
						
							|  |  |  | 	"testing" | 
					
						
							| 
									
										
										
										
											2021-04-06 09:55:14 +08:00
										 |  |  | 	_ "unsafe" | 
					
						
							| 
									
										
										
										
											2018-10-21 20:33:08 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-02-17 04:31:50 +08:00
										 |  |  | 	. "github.com/v2fly/v2ray-core/v4" | 
					
						
							| 
									
										
										
										
											2018-10-21 20:33:08 +02:00
										 |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-04-04 19:28:00 +08:00
										 |  |  | func TestFromContextPanic(t *testing.T) { | 
					
						
							| 
									
										
										
										
											2018-10-21 20:33:08 +02:00
										 |  |  | 	defer func() { | 
					
						
							|  |  |  | 		r := recover() | 
					
						
							|  |  |  | 		if r == nil { | 
					
						
							|  |  |  | 			t.Error("expect panic, but nil") | 
					
						
							|  |  |  | 		} | 
					
						
							|  |  |  | 	}() | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	MustFromContext(context.Background()) | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2021-04-04 19:28:00 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-04-05 18:13:24 +01:00
										 |  |  | //go:linkname mustToContextForced github.com/v2fly/v2ray-core/v4.mustToContext | 
					
						
							|  |  |  | func mustToContextForced(ctx context.Context, v *Instance) context.Context | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-04-04 19:28:00 +08:00
										 |  |  | func TestToContextPanic(t *testing.T) { | 
					
						
							|  |  |  | 	defer func() { | 
					
						
							|  |  |  | 		r := recover() | 
					
						
							|  |  |  | 		if r == nil { | 
					
						
							|  |  |  | 			t.Error("expect panic, but nil") | 
					
						
							|  |  |  | 		} | 
					
						
							|  |  |  | 	}() | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-04-05 18:13:24 +01:00
										 |  |  | 	mustToContextForced(context.Background(), &Instance{}) | 
					
						
							| 
									
										
										
										
											2021-04-04 19:28:00 +08:00
										 |  |  | } |