mirror of
				https://github.com/caddyserver/caddy.git
				synced 2025-10-31 02:27:19 -04:00 
			
		
		
		
	Complete Test set For config/setup/fastcgi.go
This commit is contained in:
		
							parent
							
								
									c6b2600c62
								
							
						
					
					
						commit
						094436c23a
					
				| @ -1,6 +1,7 @@ | |||||||
| package setup | package setup | ||||||
| 
 | 
 | ||||||
| import ( | import ( | ||||||
|  | 	"fmt" | ||||||
| 	"github.com/mholt/caddy/middleware/fastcgi" | 	"github.com/mholt/caddy/middleware/fastcgi" | ||||||
| 	"testing" | 	"testing" | ||||||
| ) | ) | ||||||
| @ -34,3 +35,63 @@ func TestFastCGI(t *testing.T) { | |||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| } | } | ||||||
|  | 
 | ||||||
|  | func TestFastcgiParse(t *testing.T) { | ||||||
|  | 	tests := []struct { | ||||||
|  | 		inputFastcgiConfig    string | ||||||
|  | 		shouldErr             bool | ||||||
|  | 		expectedFastcgiConfig []fastcgi.Rule | ||||||
|  | 	}{ | ||||||
|  | 
 | ||||||
|  | 		{`fastcgi /blog 127.0.0.1:9000 php`, | ||||||
|  | 			false, []fastcgi.Rule{{ | ||||||
|  | 				Path:       "/blog", | ||||||
|  | 				Address:    "127.0.0.1:9000", | ||||||
|  | 				Ext:        ".php", | ||||||
|  | 				SplitPath:  ".php", | ||||||
|  | 				IndexFiles: []string{"index.php"}, | ||||||
|  | 			}}}, | ||||||
|  | 	} | ||||||
|  | 	for i, test := range tests { | ||||||
|  | 		c := NewTestController(test.inputFastcgiConfig) | ||||||
|  | 		actualFastcgiConfigs, err := fastcgiParse(c) | ||||||
|  | 
 | ||||||
|  | 		if err == nil && test.shouldErr { | ||||||
|  | 			t.Errorf("Test %d didn't error, but it should have", i) | ||||||
|  | 		} else if err != nil && !test.shouldErr { | ||||||
|  | 			t.Errorf("Test %d errored, but it shouldn't have; got '%v'", i, err) | ||||||
|  | 		} | ||||||
|  | 		if len(actualFastcgiConfigs) != len(test.expectedFastcgiConfig) { | ||||||
|  | 			t.Fatalf("Test %d expected %d no of FastCGI configs, but got %d ", | ||||||
|  | 				i, len(test.expectedFastcgiConfig), len(actualFastcgiConfigs)) | ||||||
|  | 		} | ||||||
|  | 		for j, actualFastcgiConfig := range actualFastcgiConfigs { | ||||||
|  | 
 | ||||||
|  | 			if actualFastcgiConfig.Path != test.expectedFastcgiConfig[j].Path { | ||||||
|  | 				t.Errorf("Test %d expected %dth FastCGI Path to be  %s  , but got %s", | ||||||
|  | 					i, j, test.expectedFastcgiConfig[j].Path, actualFastcgiConfig.Path) | ||||||
|  | 			} | ||||||
|  | 
 | ||||||
|  | 			if actualFastcgiConfig.Address != test.expectedFastcgiConfig[j].Address { | ||||||
|  | 				t.Errorf("Test %d expected %dth FastCGI Address to be  %s  , but got %s", | ||||||
|  | 					i, j, test.expectedFastcgiConfig[j].Address, actualFastcgiConfig.Address) | ||||||
|  | 			} | ||||||
|  | 
 | ||||||
|  | 			if actualFastcgiConfig.Ext != test.expectedFastcgiConfig[j].Ext { | ||||||
|  | 				t.Errorf("Test %d expected %dth FastCGI Ext to be  %s  , but got %s", | ||||||
|  | 					i, j, test.expectedFastcgiConfig[j].Ext, actualFastcgiConfig.Ext) | ||||||
|  | 			} | ||||||
|  | 
 | ||||||
|  | 			if actualFastcgiConfig.SplitPath != test.expectedFastcgiConfig[j].SplitPath { | ||||||
|  | 				t.Errorf("Test %d expected %dth FastCGI SplitPath to be  %s  , but got %s", | ||||||
|  | 					i, j, test.expectedFastcgiConfig[j].SplitPath, actualFastcgiConfig.SplitPath) | ||||||
|  | 			} | ||||||
|  | 
 | ||||||
|  | 			if fmt.Sprint(actualFastcgiConfig.IndexFiles) != fmt.Sprint(test.expectedFastcgiConfig[j].IndexFiles) { | ||||||
|  | 				t.Errorf("Test %d expected %dth FastCGI IndexFiles to be  %s  , but got %s", | ||||||
|  | 					i, j, test.expectedFastcgiConfig[j].IndexFiles, actualFastcgiConfig.IndexFiles) | ||||||
|  | 			} | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | } | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user