| 
									
										
										
										
											2017-03-01 10:41:54 -05:00
										 |  |  | package trace
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | import (
 | 
					
						
							|  |  |  | 	"testing"
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	"github.com/mholt/caddy"
 | 
					
						
							|  |  |  | )
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-03-05 14:17:05 -08:00
										 |  |  | // createTestTrace creates a trace middleware to be used in tests
 | 
					
						
							|  |  |  | func createTestTrace(config string) (*caddy.Controller, *trace, error) {
 | 
					
						
							| 
									
										
										
										
											2017-03-01 10:41:54 -05:00
										 |  |  | 	c := caddy.NewTestController("dns", config)
 | 
					
						
							|  |  |  | 	m, err := traceParse(c)
 | 
					
						
							|  |  |  | 	return c, m, err
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | func TestTrace(t *testing.T) {
 | 
					
						
							| 
									
										
										
										
											2017-03-05 14:17:05 -08:00
										 |  |  | 	_, m, err := createTestTrace(`trace`)
 | 
					
						
							| 
									
										
										
										
											2017-03-01 10:41:54 -05:00
										 |  |  | 	if err != nil {
 | 
					
						
							|  |  |  | 		t.Errorf("Error parsing test input: %s", err)
 | 
					
						
							|  |  |  | 		return
 | 
					
						
							|  |  |  | 	}
 | 
					
						
							|  |  |  | 	if m.Name() != "trace" {
 | 
					
						
							|  |  |  | 		t.Errorf("Wrong name from GetName: %s", m.Name())
 | 
					
						
							|  |  |  | 	}
 | 
					
						
							|  |  |  | 	err = m.OnStartup()
 | 
					
						
							|  |  |  | 	if err != nil {
 | 
					
						
							|  |  |  | 		t.Errorf("Error starting tracing middleware: %s", err)
 | 
					
						
							|  |  |  | 		return
 | 
					
						
							|  |  |  | 	}
 | 
					
						
							|  |  |  | 	if m.Tracer() == nil {
 | 
					
						
							|  |  |  | 		t.Errorf("Error, no tracer created")
 | 
					
						
							|  |  |  | 	}
 | 
					
						
							|  |  |  | }
 |