| 
									
										
										
										
											2024-09-13 13:38:30 -05:00
										 |  |  | package config | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | import ( | 
					
						
							|  |  |  | 	"testing" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	"github.com/stretchr/testify/assert" | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | func TestEnvString(t *testing.T) { | 
					
						
							|  |  |  | 	cases := Envs[:] | 
					
						
							|  |  |  | 	cases = append(cases, Env("foobar"), Env(""), Env("42"), Env("✨")) | 
					
						
							|  |  |  | 	for _, e := range cases { | 
					
						
							|  |  |  | 		t.Run(string(e), func(t *testing.T) { | 
					
						
							|  |  |  | 			assert.Equal(t, string(e), e.String()) | 
					
						
							|  |  |  | 		}) | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | func TestValidEnv(t *testing.T) { | 
					
						
							|  |  |  | 	cases := [...]struct { | 
					
						
							|  |  |  | 		e   Env | 
					
						
							|  |  |  | 		exp bool | 
					
						
							|  |  |  | 	}{ | 
					
						
							| 
									
										
										
										
											2024-10-28 11:50:18 -05:00
										 |  |  | 		{Dev, true}, | 
					
						
							|  |  |  | 		{Prod, true}, | 
					
						
							|  |  |  | 		{Qa, true}, | 
					
						
							|  |  |  | 		{Test, true}, | 
					
						
							| 
									
										
										
										
											2024-09-13 13:38:30 -05:00
										 |  |  | 		{Env("foobar"), false}, | 
					
						
							|  |  |  | 		{Env(""), false}, | 
					
						
							|  |  |  | 		{Env("✨"), false}, | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	for _, c := range cases { | 
					
						
							|  |  |  | 		t.Run(string(c.e), func(t *testing.T) { | 
					
						
							|  |  |  | 			assert.Equal(t, c.exp, ValidEnv(c.e)) | 
					
						
							|  |  |  | 		}) | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | func TestValidEnvOrDev(t *testing.T) { | 
					
						
							|  |  |  | 	cases := [...]struct { | 
					
						
							|  |  |  | 		give Env | 
					
						
							|  |  |  | 		exp  Env | 
					
						
							|  |  |  | 	}{ | 
					
						
							| 
									
										
										
										
											2024-10-28 11:50:18 -05:00
										 |  |  | 		{Dev, Dev}, | 
					
						
							|  |  |  | 		{Prod, Prod}, | 
					
						
							|  |  |  | 		{Qa, Qa}, | 
					
						
							|  |  |  | 		{Test, Test}, | 
					
						
							|  |  |  | 		{Env("foobar"), Dev}, | 
					
						
							|  |  |  | 		{Env(""), Dev}, | 
					
						
							|  |  |  | 		{Env("✨"), Dev}, | 
					
						
							| 
									
										
										
										
											2024-09-13 13:38:30 -05:00
										 |  |  | 	} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	for _, c := range cases { | 
					
						
							|  |  |  | 		t.Run(string(c.give), func(t *testing.T) { | 
					
						
							|  |  |  | 			assert.Equal(t, c.exp, ValidEnvOrDev(c.give)) | 
					
						
							|  |  |  | 		}) | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | } |