...

Source file src/github.com/cybertec-postgresql/pgwatch/v3/internal/metrics/default_test.go

Documentation: github.com/cybertec-postgresql/pgwatch/v3/internal/metrics

     1  package metrics_test
     2  
     3  import (
     4  	"context"
     5  	"errors"
     6  	"testing"
     7  
     8  	"github.com/cybertec-postgresql/pgwatch/v3/internal/metrics"
     9  	"github.com/stretchr/testify/assert"
    10  )
    11  
    12  func TestGetDefaultBuiltInMetrics(t *testing.T) {
    13  	expectedMetrics := []string{"sproc_changes", "table_changes", "index_changes", "privilege_changes", "object_changes", "configuration_changes"}
    14  	metrics := metrics.GetDefaultBuiltInMetrics()
    15  	assert.Equal(t, expectedMetrics, metrics, "The default built-in metrics should match the expected list")
    16  }
    17  
    18  func TestNewDefaultMetricReader(t *testing.T) {
    19  	reader, err := metrics.NewDefaultMetricReader(context.Background())
    20  	assert.NoError(t, err, "Creating a new default metric reader should not produce an error")
    21  	assert.NotNil(t, reader, "The metric reader should not be nil")
    22  }
    23  
    24  func TestDefaultMetricReaderUnsupportedOperations(t *testing.T) {
    25  	reader, _ := metrics.NewDefaultMetricReader(context.Background())
    26  	err := reader.WriteMetrics(nil)
    27  	assert.Equal(t, errors.ErrUnsupported, err, "WriteMetrics should return ErrUnsupported")
    28  
    29  	err = reader.DeleteMetric("")
    30  	assert.Equal(t, errors.ErrUnsupported, err, "DeleteMetric should return ErrUnsupported")
    31  
    32  	err = reader.UpdateMetric("", metrics.Metric{})
    33  	assert.Equal(t, errors.ErrUnsupported, err, "UpdateMetric should return ErrUnsupported")
    34  
    35  	err = reader.DeletePreset("")
    36  	assert.Equal(t, errors.ErrUnsupported, err, "DeletePreset should return ErrUnsupported")
    37  
    38  	err = reader.UpdatePreset("", metrics.Preset{})
    39  	assert.Equal(t, errors.ErrUnsupported, err, "UpdatePreset should return ErrUnsupported")
    40  
    41  	metrics, err := reader.GetMetrics()
    42  	assert.NotNil(t, metrics, "The metrics object should not be nil")
    43  	assert.NoError(t, err, "GetMetrics should return default metrics")
    44  }
    45