Skip to content

Commit 6e64ce6

Browse files
committed
[chore] ensure the generated profiles test data is valid
1 parent 951b2ff commit 6e64ce6

File tree

3 files changed

+27
-0
lines changed

3 files changed

+27
-0
lines changed

pkg/pdatatest/go.mod

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ require (
88
github.com/stretchr/testify v1.10.0
99
go.opentelemetry.io/collector/pdata v1.35.1-0.20250708151327-74cb2f311035
1010
go.opentelemetry.io/collector/pdata/pprofile v0.129.1-0.20250708151327-74cb2f311035
11+
go.opentelemetry.io/collector/pdata/testdata v0.129.0
1112
go.uber.org/goleak v1.3.0
1213
go.uber.org/multierr v1.11.0
1314
)
@@ -37,3 +38,5 @@ retract (
3738
)
3839

3940
replace github.com/open-telemetry/opentelemetry-collector-contrib/pkg/golden => ../golden
41+
42+
replace go.opentelemetry.io/collector/pdata/testdata => ../../../opentelemetry-collector/pdata/testdata

pkg/pdatatest/go.sum

Lines changed: 2 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pkg/pdatatest/pprofiletest/validate_test.go

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,14 @@
44
package pprofiletest
55

66
import (
7+
"fmt"
78
"testing"
89

910
"github.com/stretchr/testify/assert"
11+
"github.com/stretchr/testify/require"
1012
"go.opentelemetry.io/collector/pdata/pcommon"
1113
"go.opentelemetry.io/collector/pdata/pprofile"
14+
"go.opentelemetry.io/collector/pdata/testdata"
1215
)
1316

1417
func Test_validateProfile(t *testing.T) {
@@ -843,3 +846,22 @@ func Test_validateAttributeUnitAt(t *testing.T) {
843846
})
844847
}
845848
}
849+
850+
func TestGeneratedData(t *testing.T) {
851+
data := testdata.GenerateProfiles(3)
852+
853+
for i := range data.ResourceProfiles().Len() {
854+
rp := data.ResourceProfiles().At(i)
855+
for j := range rp.ScopeProfiles().Len() {
856+
sp := rp.ScopeProfiles().At(j)
857+
for k := range sp.Profiles().Len() {
858+
p := sp.Profiles().At(k)
859+
err := ValidateProfile(data.ProfilesDictionary(), p)
860+
if err != nil {
861+
err = fmt.Errorf("profile ResourceProfiles[%d]ScopeProfiles[%d]Profiles[%d]: %w", i, j, k, err)
862+
}
863+
require.NoError(t, err)
864+
}
865+
}
866+
}
867+
}

0 commit comments

Comments
 (0)