1- package filter
1+ package filter_test
22
33import (
44 "context"
55 "testing"
66
7+ "github.com/gruntwork-io/terragrunt/internal/filter"
78 "github.com/stretchr/testify/assert"
9+ "github.com/stretchr/testify/require"
810)
911
1012func TestTraceGitWorktreeCreate_NoTelemeter (t * testing.T ) {
1113 t .Parallel ()
1214
1315 called := false
14- err := TraceGitWorktreeCreate (
context .
Background (),
"main" ,
"/tmp/worktree" ,
"[email protected] :org/repo.git" ,
"main" ,
"abc123" ,
func (
ctx context.
Context )
error {
16+ err := filter . TraceGitWorktreeCreate (
context .
Background (),
"main" ,
"/tmp/worktree" ,
"[email protected] :org/repo.git" ,
"main" ,
"abc123" ,
func (
ctx context.
Context )
error {
1517 called = true
1618 return nil
1719 })
1820
19- assert .NoError (t , err )
21+ require .NoError (t , err )
2022 assert .True (t , called , "callback should be called even without telemeter" )
2123}
2224
2325func TestTraceGitWorktreeRemove_NoTelemeter (t * testing.T ) {
2426 t .Parallel ()
2527
2628 called := false
27- err := TraceGitWorktreeRemove (context .Background (), "main" , "/tmp/worktree" , func (ctx context.Context ) error {
29+ err := filter . TraceGitWorktreeRemove (context .Background (), "main" , "/tmp/worktree" , func (ctx context.Context ) error {
2830 called = true
2931 return nil
3032 })
3133
32- assert .NoError (t , err )
34+ require .NoError (t , err )
3335 assert .True (t , called , "callback should be called even without telemeter" )
3436}
3537
3638func TestTraceGitWorktreesCreate_NoTelemeter (t * testing.T ) {
3739 t .Parallel ()
3840
3941 called := false
40- err := TraceGitWorktreesCreate (
context .
Background (),
"/work" ,
2 ,
"[email protected] :org/repo.git" ,
"main" ,
"abc123" ,
func (
ctx context.
Context )
error {
42+ err := filter . TraceGitWorktreesCreate (
context .
Background (),
"/work" ,
2 ,
"[email protected] :org/repo.git" ,
"main" ,
"abc123" ,
func (
ctx context.
Context )
error {
4143 called = true
4244 return nil
4345 })
4446
45- assert .NoError (t , err )
47+ require .NoError (t , err )
4648 assert .True (t , called , "callback should be called even without telemeter" )
4749}
4850
4951func TestTraceGitWorktreesCleanup_NoTelemeter (t * testing.T ) {
5052 t .Parallel ()
5153
5254 called := false
53- err := TraceGitWorktreesCleanup (
context .
Background (),
2 ,
"[email protected] :org/repo.git" ,
func (
ctx context.
Context )
error {
55+ err := filter . TraceGitWorktreesCleanup (
context .
Background (),
2 ,
"[email protected] :org/repo.git" ,
func (
ctx context.
Context )
error {
5456 called = true
5557 return nil
5658 })
5759
58- assert .NoError (t , err )
60+ require .NoError (t , err )
5961 assert .True (t , called , "callback should be called even without telemeter" )
6062}
6163
6264func TestTraceGitDiff_NoTelemeter (t * testing.T ) {
6365 t .Parallel ()
6466
6567 called := false
66- err := TraceGitDiff (
context .
Background (),
"main" ,
"HEAD" ,
"[email protected] :org/repo.git" ,
func (
ctx context.
Context )
error {
68+ err := filter . TraceGitDiff (
context .
Background (),
"main" ,
"HEAD" ,
"[email protected] :org/repo.git" ,
func (
ctx context.
Context )
error {
6769 called = true
6870 return nil
6971 })
7072
71- assert .NoError (t , err )
73+ require .NoError (t , err )
7274 assert .True (t , called , "callback should be called even without telemeter" )
7375}
7476
7577func TestTraceGitWorktreeDiscovery_NoTelemeter (t * testing.T ) {
7678 t .Parallel ()
7779
7880 called := false
79- err := TraceGitWorktreeDiscovery (context .Background (), 3 , func (ctx context.Context ) error {
81+ err := filter . TraceGitWorktreeDiscovery (context .Background (), 3 , func (ctx context.Context ) error {
8082 called = true
8183 return nil
8284 })
8385
84- assert .NoError (t , err )
86+ require .NoError (t , err )
8587 assert .True (t , called , "callback should be called even without telemeter" )
8688}
8789
8890func TestTraceGitWorktreeStackWalk_NoTelemeter (t * testing.T ) {
8991 t .Parallel ()
9092
9193 called := false
92- err := TraceGitWorktreeStackWalk (context .Background (), "main" , "feature" , func (ctx context.Context ) error {
94+ err := filter . TraceGitWorktreeStackWalk (context .Background (), "main" , "feature" , func (ctx context.Context ) error {
9395 called = true
9496 return nil
9597 })
9698
97- assert .NoError (t , err )
99+ require .NoError (t , err )
98100 assert .True (t , called , "callback should be called even without telemeter" )
99101}
100102
101103func TestTraceFilterEvaluate_NoTelemeter (t * testing.T ) {
102104 t .Parallel ()
103105
104106 called := false
105- err := TraceFilterEvaluate (context .Background (), 5 , 10 , func (ctx context.Context ) error {
107+ err := filter . TraceFilterEvaluate (context .Background (), 5 , 10 , func (ctx context.Context ) error {
106108 called = true
107109 return nil
108110 })
109111
110- assert .NoError (t , err )
112+ require .NoError (t , err )
111113 assert .True (t , called , "callback should be called even without telemeter" )
112114}
113115
114116func TestTraceFilterParse_NoTelemeter (t * testing.T ) {
115117 t .Parallel ()
116118
117119 called := false
118- err := TraceFilterParse (context .Background (), "name=foo" , func (ctx context.Context ) error {
120+ err := filter . TraceFilterParse (context .Background (), "name=foo" , func (ctx context.Context ) error {
119121 called = true
120122 return nil
121123 })
122124
123- assert .NoError (t , err )
125+ require .NoError (t , err )
124126 assert .True (t , called , "callback should be called even without telemeter" )
125127}
126128
127129func TestTraceGitFilterExpand_NoTelemeter (t * testing.T ) {
128130 t .Parallel ()
129131
130132 called := false
131- err := TraceGitFilterExpand (context .Background (), "main" , "HEAD" , 3 , 1 , 5 , func (ctx context.Context ) error {
133+ err := filter . TraceGitFilterExpand (context .Background (), "main" , "HEAD" , 3 , 1 , 5 , func (ctx context.Context ) error {
132134 called = true
133135 return nil
134136 })
135137
136- assert .NoError (t , err )
138+ require .NoError (t , err )
137139 assert .True (t , called , "callback should be called even without telemeter" )
138140}
139141
140142func TestTraceGitFilterEvaluate_NoTelemeter (t * testing.T ) {
141143 t .Parallel ()
142144
143145 called := false
144- err := TraceGitFilterEvaluate (context .Background (), "main" , "HEAD" , 10 , func (ctx context.Context ) error {
146+ err := filter . TraceGitFilterEvaluate (context .Background (), "main" , "HEAD" , 10 , func (ctx context.Context ) error {
145147 called = true
146148 return nil
147149 })
148150
149- assert .NoError (t , err )
151+ require .NoError (t , err )
150152 assert .True (t , called , "callback should be called even without telemeter" )
151153}
152154
153155func TestTraceGraphFilterTraverse_NoTelemeter (t * testing.T ) {
154156 t .Parallel ()
155157
156158 called := false
157- err := TraceGraphFilterTraverse (context .Background (), "dependencies" , 5 , func (ctx context.Context ) error {
159+ err := filter . TraceGraphFilterTraverse (context .Background (), "dependencies" , 5 , func (ctx context.Context ) error {
158160 called = true
159161 return nil
160162 })
161163
162- assert .NoError (t , err )
164+ require .NoError (t , err )
163165 assert .True (t , called , "callback should be called even without telemeter" )
164166}
165167
@@ -168,22 +170,23 @@ func TestTelemetryConstants(t *testing.T) {
168170
169171 // Verify operation names are unique and well-formed
170172 opNames := []string {
171- TelemetryOpGitWorktreeCreate ,
172- TelemetryOpGitWorktreeRemove ,
173- TelemetryOpGitWorktreesCreate ,
174- TelemetryOpGitWorktreesCleanup ,
175- TelemetryOpGitDiff ,
176- TelemetryOpGitWorktreeDiscovery ,
177- TelemetryOpGitWorktreeStackWalk ,
178- TelemetryOpGitWorktreeFilterApply ,
179- TelemetryOpFilterEvaluate ,
180- TelemetryOpFilterParse ,
181- TelemetryOpGitFilterExpand ,
182- TelemetryOpGitFilterEvaluate ,
183- TelemetryOpGraphFilterTraverse ,
173+ filter . TelemetryOpGitWorktreeCreate ,
174+ filter . TelemetryOpGitWorktreeRemove ,
175+ filter . TelemetryOpGitWorktreesCreate ,
176+ filter . TelemetryOpGitWorktreesCleanup ,
177+ filter . TelemetryOpGitDiff ,
178+ filter . TelemetryOpGitWorktreeDiscovery ,
179+ filter . TelemetryOpGitWorktreeStackWalk ,
180+ filter . TelemetryOpGitWorktreeFilterApply ,
181+ filter . TelemetryOpFilterEvaluate ,
182+ filter . TelemetryOpFilterParse ,
183+ filter . TelemetryOpGitFilterExpand ,
184+ filter . TelemetryOpGitFilterEvaluate ,
185+ filter . TelemetryOpGraphFilterTraverse ,
184186 }
185187
186188 seen := make (map [string ]bool )
189+
187190 for _ , name := range opNames {
188191 assert .NotEmpty (t , name , "operation name should not be empty" )
189192 assert .False (t , seen [name ], "operation name should be unique: %s" , name )
@@ -192,24 +195,25 @@ func TestTelemetryConstants(t *testing.T) {
192195
193196 // Verify attribute keys are well-formed
194197 attrKeys := []string {
195- AttrGitRef ,
196- AttrGitFromRef ,
197- AttrGitToRef ,
198- AttrGitWorktreeDir ,
199- AttrGitWorkingDir ,
200- AttrGitRefCount ,
201- AttrGitDiffAdded ,
202- AttrGitDiffRemoved ,
203- AttrGitDiffChanged ,
204- AttrFilterQuery ,
205- AttrFilterType ,
206- AttrFilterCount ,
207- AttrComponentCount ,
208- AttrResultCount ,
209- AttrWorktreePairCount ,
198+ filter . AttrGitRef ,
199+ filter . AttrGitFromRef ,
200+ filter . AttrGitToRef ,
201+ filter . AttrGitWorktreeDir ,
202+ filter . AttrGitWorkingDir ,
203+ filter . AttrGitRefCount ,
204+ filter . AttrGitDiffAdded ,
205+ filter . AttrGitDiffRemoved ,
206+ filter . AttrGitDiffChanged ,
207+ filter . AttrFilterQuery ,
208+ filter . AttrFilterType ,
209+ filter . AttrFilterCount ,
210+ filter . AttrComponentCount ,
211+ filter . AttrResultCount ,
212+ filter . AttrWorktreePairCount ,
210213 }
211214
212215 seenAttrs := make (map [string ]bool )
216+
213217 for _ , key := range attrKeys {
214218 assert .NotEmpty (t , key , "attribute key should not be empty" )
215219 assert .False (t , seenAttrs [key ], "attribute key should be unique: %s" , key )
0 commit comments