59 lines
		
	
	
	
		
			1,004 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			59 lines
		
	
	
	
		
			1,004 B
		
	
	
	
		
			Go
		
	
	
	
	
	
| 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
 | |
| 	}{
 | |
| 		{DEV, true},
 | |
| 		{PROD, true},
 | |
| 		{QA, true},
 | |
| 		{TEST, true},
 | |
| 		{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
 | |
| 	}{
 | |
| 		{DEV, DEV},
 | |
| 		{PROD, PROD},
 | |
| 		{QA, QA},
 | |
| 		{TEST, TEST},
 | |
| 		{Env("foobar"), DEV},
 | |
| 		{Env(""), DEV},
 | |
| 		{Env("✨"), DEV},
 | |
| 	}
 | |
| 
 | |
| 	for _, c := range cases {
 | |
| 		t.Run(string(c.give), func(t *testing.T) {
 | |
| 			assert.Equal(t, c.exp, ValidEnvOrDev(c.give))
 | |
| 		})
 | |
| 	}
 | |
| }
 |