github.com/newrelic/newrelic-client-go@v1.1.0/pkg/plugins/components_integration_test.go (about)

     1  //go:build integration
     2  // +build integration
     3  
     4  package plugins
     5  
     6  import (
     7  	"testing"
     8  
     9  	"github.com/stretchr/testify/require"
    10  
    11  	mock "github.com/newrelic/newrelic-client-go/pkg/testhelpers"
    12  )
    13  
    14  func TestIntegrationComponents(t *testing.T) {
    15  	t.Skip("Skipping `GetComponent` integration test due API reaching EOL (returns 410 HTTP status)")
    16  	t.Parallel()
    17  
    18  	tc := mock.NewIntegrationTestConfig(t)
    19  
    20  	api := New(tc)
    21  	a, err := api.ListComponents(nil)
    22  
    23  	require.NoError(t, err)
    24  	require.NotNil(t, a)
    25  
    26  	if len(a) < 1 {
    27  		t.Skipf("Skipping `GetComponent` integration test due to zero plugins found")
    28  	}
    29  
    30  	c, err := api.GetComponent(a[0].ID)
    31  
    32  	require.NoError(t, err)
    33  	require.NotNil(t, c)
    34  
    35  	m, err := api.ListComponentMetrics(c.ID, nil)
    36  
    37  	require.NoError(t, err)
    38  	require.NotNil(t, m)
    39  
    40  	if len(m) < 1 {
    41  		t.Skipf("Skipping `GetComponentMetricData` integration test due to zero plugin metrics found")
    42  	}
    43  	params := GetComponentMetricDataParams{
    44  		Names: []string{m[0].Name},
    45  	}
    46  	_, err = api.GetComponentMetricData(a[0].ID, &params)
    47  
    48  	require.NoError(t, err)
    49  }