mirror of
				https://github.com/optim-enterprises-bv/vault.git
				synced 2025-10-31 02:28:09 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			78 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			78 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| // Copyright (c) HashiCorp, Inc.
 | |
| // SPDX-License-Identifier: MPL-2.0
 | |
| 
 | |
| package logical
 | |
| 
 | |
| import (
 | |
| 	"testing"
 | |
| 
 | |
| 	"github.com/stretchr/testify/require"
 | |
| )
 | |
| 
 | |
| // TestLogInput_BexprDatum ensures that we can transform a LogInput
 | |
| // into a LogInputBexpr to be used in audit filtering.
 | |
| func TestLogInput_BexprDatum(t *testing.T) {
 | |
| 	t.Parallel()
 | |
| 
 | |
| 	tests := map[string]struct {
 | |
| 		Request            *Request
 | |
| 		Namespace          string
 | |
| 		ExpectedPath       string
 | |
| 		ExpectedMountPoint string
 | |
| 		ExpectedMountType  string
 | |
| 		ExpectedNamespace  string
 | |
| 		ExpectedOperation  string
 | |
| 	}{
 | |
| 		"nil-no-namespace": {
 | |
| 			Request:            nil,
 | |
| 			Namespace:          "",
 | |
| 			ExpectedPath:       "",
 | |
| 			ExpectedMountPoint: "",
 | |
| 			ExpectedMountType:  "",
 | |
| 			ExpectedNamespace:  "",
 | |
| 			ExpectedOperation:  "",
 | |
| 		},
 | |
| 		"nil-namespace": {
 | |
| 			Request:            nil,
 | |
| 			Namespace:          "juan",
 | |
| 			ExpectedPath:       "",
 | |
| 			ExpectedMountPoint: "",
 | |
| 			ExpectedMountType:  "",
 | |
| 			ExpectedNamespace:  "juan",
 | |
| 			ExpectedOperation:  "",
 | |
| 		},
 | |
| 		"happy-path": {
 | |
| 			Request: &Request{
 | |
| 				MountPoint: "IAmAMountPoint",
 | |
| 				MountType:  "IAmAMountType",
 | |
| 				Operation:  CreateOperation,
 | |
| 				Path:       "IAmAPath",
 | |
| 			},
 | |
| 			Namespace:          "juan",
 | |
| 			ExpectedPath:       "IAmAPath",
 | |
| 			ExpectedMountPoint: "IAmAMountPoint",
 | |
| 			ExpectedMountType:  "IAmAMountType",
 | |
| 			ExpectedNamespace:  "juan",
 | |
| 			ExpectedOperation:  "create",
 | |
| 		},
 | |
| 	}
 | |
| 
 | |
| 	for name, tc := range tests {
 | |
| 		name := name
 | |
| 		tc := tc
 | |
| 		t.Run(name, func(t *testing.T) {
 | |
| 			t.Parallel()
 | |
| 
 | |
| 			l := &LogInput{Request: tc.Request}
 | |
| 
 | |
| 			d := l.BexprDatum(tc.Namespace)
 | |
| 
 | |
| 			require.Equal(t, tc.ExpectedPath, d.Path)
 | |
| 			require.Equal(t, tc.ExpectedMountPoint, d.MountPoint)
 | |
| 			require.Equal(t, tc.ExpectedMountType, d.MountType)
 | |
| 			require.Equal(t, tc.ExpectedNamespace, d.Namespace)
 | |
| 			require.Equal(t, tc.ExpectedOperation, d.Operation)
 | |
| 		})
 | |
| 	}
 | |
| }
 | 
