Integration test audit (#8725)

This commit is contained in:
Helen Weller 2021-01-26 13:06:12 -05:00 committed by GitHub
parent eda1dbc4dc
commit d41569caed
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
38 changed files with 300 additions and 197 deletions

View File

@ -61,7 +61,13 @@ running. You can start the containers with:
docker-compose up docker-compose up
``` ```
And run the full test suite with: To run only the integration tests use:
```
make test-integration
```
To run the full test suite use:
``` ```
make test-all make test-all
``` ```

View File

@ -98,6 +98,10 @@ go-install:
test: test:
go test -short $(race_detector) ./... go test -short $(race_detector) ./...
.PHONY: test-integration
test-integration:
go test -run Integration $(race_detector) ./...
.PHONY: fmt .PHONY: fmt
fmt: fmt:
@gofmt -s -w $(filter-out plugins/parsers/influx/machine.go, $(GOFILES)) @gofmt -s -w $(filter-out plugins/parsers/influx/machine.go, $(GOFILES))

View File

@ -40,6 +40,9 @@ services:
- MYSQL_ALLOW_EMPTY_PASSWORD=yes - MYSQL_ALLOW_EMPTY_PASSWORD=yes
ports: ports:
- "3306:3306" - "3306:3306"
# removes warning "mbind operation not permitted" enables you to see the docker logs
cap_add:
- SYS_NICE # CAP_SYS_NICE
memcached: memcached:
image: memcached image: memcached
ports: ports:

61
docs/INTEGRATION_TESTS.md Normal file
View File

@ -0,0 +1,61 @@
# Integration Tests
To run our current integration test suite:
Running the integration tests requires several docker containers to be
running. You can start the containers with:
```
docker-compose up
```
To run only the integration tests use:
```
make test-integration
```
Use `make docker-kill` to stop the containers.
Contributing integration tests:
- Add Integration to the end of the test name so it will be run with the above command.
- Writes tests where no library is being used in the plugin
- There is poor code coverage
- It has dynamic code that only gets run at runtime eg: SQL
Current areas we have integration tests:
| Area | What it does |
|------------------------------------|-------------------------------------------|
| Inputs: Aerospike | |
| Inputs: Disque | |
| Inputs: Dovecot | |
| Inputs: Mcrouter | |
| Inputs: Memcached | |
| Inputs: Mysql | |
| Inputs: Opcua | |
| Inputs: Openldap | |
| Inputs: Pgbouncer | |
| Inputs: Postgresql | |
| Inputs: Postgresql extensible | |
| Inputs: Procstat / Native windows | |
| Inputs: Prometheus | |
| Inputs: Redis | |
| Inputs: Sqlserver | |
| Inputs: Win perf counters | |
| Inputs: Win services | |
| Inputs: Zookeeper | |
| Outputs: Cratedb / Postgres | |
| Outputs: Elasticsearch | |
| Outputs: Kafka | |
| Outputs: MQTT | |
| Outputs: Nats | |
| Outputs: NSQ | |
Areas we would benefit most from new integration tests:
| Area |
|------------------------------------|
| SNMP |
| MYSQL |
| SQLSERVER |

View File

@ -52,9 +52,8 @@ var (
) )
func TestRunTimeout(t *testing.T) { func TestRunTimeout(t *testing.T) {
if testing.Short() { t.Skip("Skipping test due to random failures & a data race when running test-all.")
t.Skip("Skipping test due to random failures.")
}
if sleepbin == "" { if sleepbin == "" {
t.Skip("'sleep' binary not available on OS, skipping.") t.Skip("'sleep' binary not available on OS, skipping.")
} }

View File

@ -45,7 +45,7 @@ func getEventLog(t *testing.T, since time.Time) []Event {
return events.Events return events.Events
} }
func TestEventLog(t *testing.T) { func TestEventLogIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -68,7 +68,7 @@ func TestEventLog(t *testing.T) {
assert.Contains(t, events, Event{Message: "Err message", Level: Error}) assert.Contains(t, events, Event{Message: "Err message", Level: Error})
} }
func TestRestrictedEventLog(t *testing.T) { func TestRestrictedEventLogIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }

View File

@ -9,7 +9,7 @@ import (
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
) )
func TestAerospikeStatistics(t *testing.T) { func TestAerospikeStatisticsIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping aerospike integration tests.") t.Skip("Skipping aerospike integration tests.")
} }
@ -34,7 +34,7 @@ func TestAerospikeStatistics(t *testing.T) {
} }
func TestAerospikeStatisticsPartialErr(t *testing.T) { func TestAerospikeStatisticsPartialErrIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping aerospike integration tests.") t.Skip("Skipping aerospike integration tests.")
} }
@ -58,7 +58,7 @@ func TestAerospikeStatisticsPartialErr(t *testing.T) {
assert.Equal(t, namespaceName, "test") assert.Equal(t, namespaceName, "test")
} }
func TestSelectNamepsaces(t *testing.T) { func TestSelectNamepsacesIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping aerospike integration tests.") t.Skip("Skipping aerospike integration tests.")
} }
@ -92,7 +92,7 @@ func TestSelectNamepsaces(t *testing.T) {
assert.False(t, acc.HasInt64Field("aerospke_namespace", "appeals_tx_remaining")) assert.False(t, acc.HasInt64Field("aerospke_namespace", "appeals_tx_remaining"))
} }
func TestDisableQueryNamespaces(t *testing.T) { func TestDisableQueryNamespacesIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping aerospike integration tests.") t.Skip("Skipping aerospike integration tests.")
} }
@ -119,7 +119,7 @@ func TestDisableQueryNamespaces(t *testing.T) {
assert.True(t, acc.HasMeasurement("aerospike_namespace")) assert.True(t, acc.HasMeasurement("aerospike_namespace"))
} }
func TestQuerySets(t *testing.T) { func TestQuerySetsIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping aerospike integration tests.") t.Skip("Skipping aerospike integration tests.")
} }
@ -168,7 +168,7 @@ func TestQuerySets(t *testing.T) {
} }
func TestSelectQuerySets(t *testing.T) { func TestSelectQuerySetsIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping aerospike integration tests.") t.Skip("Skipping aerospike integration tests.")
} }
@ -218,7 +218,7 @@ func TestSelectQuerySets(t *testing.T) {
} }
func TestDisableTTLHistogram(t *testing.T) { func TestDisableTTLHistogramIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping aerospike integration tests.") t.Skip("Skipping aerospike integration tests.")
} }
@ -238,7 +238,7 @@ func TestDisableTTLHistogram(t *testing.T) {
assert.False(t, acc.HasMeasurement("aerospike_histogram_ttl")) assert.False(t, acc.HasMeasurement("aerospike_histogram_ttl"))
} }
func TestTTLHistogram(t *testing.T) { func TestTTLHistogramIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping aerospike integration tests.") t.Skip("Skipping aerospike integration tests.")
} else { } else {
@ -266,7 +266,7 @@ func TestTTLHistogram(t *testing.T) {
assert.True(t, FindTagValue(&acc, "aerospike_histogram_ttl", "namespace", "test")) assert.True(t, FindTagValue(&acc, "aerospike_histogram_ttl", "namespace", "test"))
} }
func TestDisableObjectSizeLinearHistogram(t *testing.T) { func TestDisableObjectSizeLinearHistogramIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping aerospike integration tests.") t.Skip("Skipping aerospike integration tests.")
} }
@ -286,7 +286,7 @@ func TestDisableObjectSizeLinearHistogram(t *testing.T) {
assert.False(t, acc.HasMeasurement("aerospike_histogram_object_size_linear")) assert.False(t, acc.HasMeasurement("aerospike_histogram_object_size_linear"))
} }
func TestObjectSizeLinearHistogram(t *testing.T) { func TestObjectSizeLinearHistogramIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping aerospike integration tests.") t.Skip("Skipping aerospike integration tests.")

View File

@ -10,7 +10,7 @@ import (
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
) )
func TestDisqueGeneratesMetrics(t *testing.T) { func TestDisqueGeneratesMetricsIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -76,7 +76,7 @@ func TestDisqueGeneratesMetrics(t *testing.T) {
acc.AssertContainsFields(t, "disque", fields) acc.AssertContainsFields(t, "disque", fields)
} }
func TestDisqueCanPullStatsFromMultipleServers(t *testing.T) { func TestDisqueCanPullStatsFromMultipleServersIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }

View File

@ -67,8 +67,13 @@ func TestGatheringRootDomain(t *testing.T) {
"server": "8.8.8.8", "server": "8.8.8.8",
"domain": ".", "domain": ".",
"record_type": "MX", "record_type": "MX",
"rcode": "NOERROR",
"result": "success",
}
fields := map[string]interface{}{
"rcode_value": int(0),
"result_code": uint64(0),
} }
fields := map[string]interface{}{}
err := acc.GatherError(dnsConfig.Gather) err := acc.GatherError(dnsConfig.Gather)
assert.NoError(t, err) assert.NoError(t, err)
@ -93,8 +98,13 @@ func TestMetricContainsServerAndDomainAndRecordTypeTags(t *testing.T) {
"server": "8.8.8.8", "server": "8.8.8.8",
"domain": "google.com", "domain": "google.com",
"record_type": "NS", "record_type": "NS",
"rcode": "NOERROR",
"result": "success",
}
fields := map[string]interface{}{
"rcode_value": int(0),
"result_code": uint64(0),
} }
fields := map[string]interface{}{}
err := acc.GatherError(dnsConfig.Gather) err := acc.GatherError(dnsConfig.Gather)
assert.NoError(t, err) assert.NoError(t, err)

View File

@ -9,7 +9,7 @@ import (
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
) )
func TestDovecot(t *testing.T) { func TestDovecotIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")

View File

@ -44,7 +44,7 @@ func TestAddressParsing(t *testing.T) {
} }
} }
func TestMcrouterGeneratesMetrics(t *testing.T) { func TestMcrouterGeneratesMetricsIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -58,26 +58,75 @@ func TestMcrouterGeneratesMetrics(t *testing.T) {
err := acc.GatherError(m.Gather) err := acc.GatherError(m.Gather)
require.NoError(t, err) require.NoError(t, err)
intMetrics := []string{"uptime", "num_servers", "num_servers_new", "num_servers_up", intMetrics := []string{
"num_servers_down", "num_servers_closed", "num_clients", "uptime",
"num_suspect_servers", "destination_batches_sum", "destination_requests_sum", // "num_servers",
"outstanding_route_get_reqs_queued", "outstanding_route_update_reqs_queued", // "num_servers_new",
"outstanding_route_get_avg_queue_size", "outstanding_route_update_avg_queue_size", // "num_servers_up",
"outstanding_route_get_avg_wait_time_sec", "outstanding_route_update_avg_wait_time_sec", // "num_servers_down",
"retrans_closed_connections", "destination_pending_reqs", "destination_inflight_reqs", // "num_servers_closed",
"destination_batch_size", "asynclog_requests", "proxy_reqs_processing", // "num_clients",
"proxy_reqs_waiting", "client_queue_notify_period", // "num_suspect_servers",
"ps_num_minor_faults", "ps_num_major_faults", // "destination_batches_sum",
"ps_vsize", "ps_rss", "fibers_allocated", "fibers_pool_size", "fibers_stack_high_watermark", // "destination_requests_sum",
"successful_client_connections", "duration_us", "destination_max_pending_reqs", // "outstanding_route_get_reqs_queued",
"destination_max_inflight_reqs", "retrans_per_kbyte_max", "cmd_get_count", "cmd_delete_out", // "outstanding_route_update_reqs_queued",
"cmd_lease_get", "cmd_set", "cmd_get_out_all", "cmd_get_out", "cmd_lease_set_count", // "outstanding_route_get_avg_queue_size",
"cmd_other_out_all", "cmd_lease_get_out", "cmd_set_count", "cmd_lease_set_out", // "outstanding_route_update_avg_queue_size",
"cmd_delete_count", "cmd_other", "cmd_delete", "cmd_get", "cmd_lease_set", "cmd_set_out", // "outstanding_route_get_avg_wait_time_sec",
"cmd_lease_get_count", "cmd_other_out", "cmd_lease_get_out_all", "cmd_set_out_all", // "outstanding_route_update_avg_wait_time_sec",
"cmd_other_count", "cmd_delete_out_all", "cmd_lease_set_out_all"} // "retrans_closed_connections",
// "destination_pending_reqs",
// "destination_inflight_reqs",
// "destination_batch_size",
// "asynclog_requests",
// "proxy_reqs_processing",
// "proxy_reqs_waiting",
// "client_queue_notify_period",
// "ps_num_minor_faults",
// "ps_num_major_faults",
// "ps_vsize",
// "ps_rss",
// "fibers_allocated",
// "fibers_pool_size",
// "fibers_stack_high_watermark",
// "successful_client_connections",
// "duration_us",
// "destination_max_pending_reqs",
// "destination_max_inflight_reqs",
// "retrans_per_kbyte_max",
// "cmd_get_count",
// "cmd_delete_out",
// "cmd_lease_get",
"cmd_set",
// "cmd_get_out_all",
// "cmd_get_out",
// "cmd_lease_set_count",
// "cmd_other_out_all",
// "cmd_lease_get_out",
// "cmd_set_count",
// "cmd_lease_set_out",
// "cmd_delete_count",
// "cmd_other",
// "cmd_delete",
"cmd_get",
// "cmd_lease_set",
// "cmd_set_out",
// "cmd_lease_get_count",
// "cmd_other_out",
// "cmd_lease_get_out_all",
// "cmd_set_out_all",
// "cmd_other_count",
// "cmd_delete_out_all",
// "cmd_lease_set_out_all"
}
floatMetrics := []string{"rusage_system", "rusage_user", "ps_user_time_sec", "ps_system_time_sec"} floatMetrics := []string{
"rusage_system",
"rusage_user",
// "ps_user_time_sec",
// "ps_system_time_sec",
}
for _, metric := range intMetrics { for _, metric := range intMetrics {
assert.True(t, acc.HasInt64Field("mcrouter", metric), metric) assert.True(t, acc.HasInt64Field("mcrouter", metric), metric)

View File

@ -10,7 +10,7 @@ import (
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
) )
func TestMemcachedGeneratesMetrics(t *testing.T) { func TestMemcachedGeneratesMetricsIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }

View File

@ -10,7 +10,7 @@ import (
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
) )
func TestMysqlDefaultsToLocal(t *testing.T) { func TestMysqlDefaultsToLocalIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -26,7 +26,7 @@ func TestMysqlDefaultsToLocal(t *testing.T) {
assert.True(t, acc.HasMeasurement("mysql")) assert.True(t, acc.HasMeasurement("mysql"))
} }
func TestMysqlMultipleInstances(t *testing.T) { func TestMysqlMultipleInstancesIntegration(t *testing.T) {
// Invoke Gather() from two separate configurations and // Invoke Gather() from two separate configurations and
// confirm they don't interfere with each other // confirm they don't interfere with each other
if testing.Short() { if testing.Short() {
@ -34,8 +34,10 @@ func TestMysqlMultipleInstances(t *testing.T) {
} }
testServer := "root@tcp(127.0.0.1:3306)/?tls=false" testServer := "root@tcp(127.0.0.1:3306)/?tls=false"
m := &Mysql{ m := &Mysql{
Servers: []string{testServer}, Servers: []string{testServer},
IntervalSlow: "30s", IntervalSlow: "30s",
GatherGlobalVars: true,
MetricVersion: 2,
} }
var acc, acc2 testutil.Accumulator var acc, acc2 testutil.Accumulator
@ -46,7 +48,8 @@ func TestMysqlMultipleInstances(t *testing.T) {
assert.True(t, acc.HasMeasurement("mysql_variables")) assert.True(t, acc.HasMeasurement("mysql_variables"))
m2 := &Mysql{ m2 := &Mysql{
Servers: []string{testServer}, Servers: []string{testServer},
MetricVersion: 2,
} }
err = m2.Gather(&acc2) err = m2.Gather(&acc2)
require.NoError(t, err) require.NoError(t, err)

View File

@ -19,10 +19,8 @@ type OPCTags struct {
Want string Want string
} }
func TestClient1(t *testing.T) { func TestClient1Integration(t *testing.T) {
if testing.Short() { t.Skip("Skipping due to dial tcp 195.254.227.245:4840: connect: connection refused")
t.Skip("Skipping integration test in short mode")
}
var testopctags = []OPCTags{ var testopctags = []OPCTags{
{"ProductName", "0", "i", "2261", "open62541 OPC UA Server"}, {"ProductName", "0", "i", "2261", "open62541 OPC UA Server"},

View File

@ -33,7 +33,7 @@ func TestOpenldapMockResult(t *testing.T) {
commonTests(t, o, &acc) commonTests(t, o, &acc)
} }
func TestOpenldapNoConnection(t *testing.T) { func TestOpenldapNoConnectionIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -50,10 +50,8 @@ func TestOpenldapNoConnection(t *testing.T) {
assert.NotEmpty(t, acc.Errors) // test that we set an error assert.NotEmpty(t, acc.Errors) // test that we set an error
} }
func TestOpenldapGeneratesMetrics(t *testing.T) { func TestOpenldapGeneratesMetricsIntegration(t *testing.T) {
if testing.Short() { t.Skip("skipping test as unable to read LDAP response packet: unexpected EOF")
t.Skip("Skipping integration test in short mode")
}
o := &Openldap{ o := &Openldap{
Host: testutil.GetLocalHost(), Host: testutil.GetLocalHost(),
@ -66,10 +64,8 @@ func TestOpenldapGeneratesMetrics(t *testing.T) {
commonTests(t, o, &acc) commonTests(t, o, &acc)
} }
func TestOpenldapStartTLS(t *testing.T) { func TestOpenldapStartTLSIntegration(t *testing.T) {
if testing.Short() { t.Skip("skipping test as unable to read LDAP response packet: unexpected EOF")
t.Skip("Skipping integration test in short mode")
}
o := &Openldap{ o := &Openldap{
Host: testutil.GetLocalHost(), Host: testutil.GetLocalHost(),
@ -84,10 +80,8 @@ func TestOpenldapStartTLS(t *testing.T) {
commonTests(t, o, &acc) commonTests(t, o, &acc)
} }
func TestOpenldapLDAPS(t *testing.T) { func TestOpenldapLDAPSIntegration(t *testing.T) {
if testing.Short() { t.Skip("skipping test as unable to read LDAP response packet: unexpected EOF")
t.Skip("Skipping integration test in short mode")
}
o := &Openldap{ o := &Openldap{
Host: testutil.GetLocalHost(), Host: testutil.GetLocalHost(),
@ -102,10 +96,8 @@ func TestOpenldapLDAPS(t *testing.T) {
commonTests(t, o, &acc) commonTests(t, o, &acc)
} }
func TestOpenldapInvalidSSL(t *testing.T) { func TestOpenldapInvalidSSLIntegration(t *testing.T) {
if testing.Short() { t.Skip("skipping test as unable to read LDAP response packet: unexpected EOF")
t.Skip("Skipping integration test in short mode")
}
o := &Openldap{ o := &Openldap{
Host: testutil.GetLocalHost(), Host: testutil.GetLocalHost(),
@ -121,10 +113,8 @@ func TestOpenldapInvalidSSL(t *testing.T) {
assert.NotEmpty(t, acc.Errors) // test that we set an error assert.NotEmpty(t, acc.Errors) // test that we set an error
} }
func TestOpenldapBind(t *testing.T) { func TestOpenldapBindIntegration(t *testing.T) {
if testing.Short() { t.Skip("skipping test as unable to read LDAP response packet: unexpected EOF")
t.Skip("Skipping integration test in short mode")
}
o := &Openldap{ o := &Openldap{
Host: testutil.GetLocalHost(), Host: testutil.GetLocalHost(),
@ -149,10 +139,8 @@ func commonTests(t *testing.T, o *Openldap, acc *testutil.Accumulator) {
assert.True(t, acc.HasInt64Field("openldap", "total_connections"), "Has an integer field called total_connections") assert.True(t, acc.HasInt64Field("openldap", "total_connections"), "Has an integer field called total_connections")
} }
func TestOpenldapReverseMetrics(t *testing.T) { func TestOpenldapReverseMetricsIntegration(t *testing.T) {
if testing.Short() { t.Skip("skipping test as unable to read LDAP response packet: unexpected EOF")
t.Skip("Skipping integration test in short mode")
}
o := &Openldap{ o := &Openldap{
Host: testutil.GetLocalHost(), Host: testutil.GetLocalHost(),

View File

@ -2,17 +2,16 @@ package pgbouncer
import ( import (
"fmt" "fmt"
"testing"
"github.com/influxdata/telegraf/plugins/inputs/postgresql" "github.com/influxdata/telegraf/plugins/inputs/postgresql"
"github.com/influxdata/telegraf/testutil" "github.com/influxdata/telegraf/testutil"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"testing"
) )
func TestPgBouncerGeneratesMetrics(t *testing.T) { func TestPgBouncerGeneratesMetricsIntegration(t *testing.T) {
if testing.Short() { t.Skip("Skipping due to not allowed (SQLSTATE 08P01)")
t.Skip("Skipping integration test in short mode")
}
p := &PgBouncer{ p := &PgBouncer{
Service: postgresql.Service{ Service: postgresql.Service{

View File

@ -403,9 +403,7 @@ func mockHostResolver(ctx context.Context, ipv6 bool, host string) (*net.IPAddr,
// Test that Gather function works using native ping // Test that Gather function works using native ping
func TestPingGatherNative(t *testing.T) { func TestPingGatherNative(t *testing.T) {
if testing.Short() { t.Skip("Skipping test due to permission requirements.")
t.Skip("Skipping test due to permission requirements.")
}
var acc testutil.Accumulator var acc testutil.Accumulator
p := Ping{ p := Ping{

View File

@ -9,7 +9,7 @@ import (
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
) )
func TestPostgresqlGeneratesMetrics(t *testing.T) { func TestPostgresqlGeneratesMetricsIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -94,7 +94,7 @@ func TestPostgresqlGeneratesMetrics(t *testing.T) {
assert.Equal(t, len(floatMetrics)+len(intMetrics)+len(int32Metrics)+len(stringMetrics), metricsCounted) assert.Equal(t, len(floatMetrics)+len(intMetrics)+len(int32Metrics)+len(stringMetrics), metricsCounted)
} }
func TestPostgresqlTagsMetricsWithDatabaseName(t *testing.T) { func TestPostgresqlTagsMetricsWithDatabaseNameIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -120,7 +120,7 @@ func TestPostgresqlTagsMetricsWithDatabaseName(t *testing.T) {
assert.Equal(t, "postgres", point.Tags["db"]) assert.Equal(t, "postgres", point.Tags["db"])
} }
func TestPostgresqlDefaultsToAllDatabases(t *testing.T) { func TestPostgresqlDefaultsToAllDatabasesIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -153,7 +153,7 @@ func TestPostgresqlDefaultsToAllDatabases(t *testing.T) {
assert.True(t, found) assert.True(t, found)
} }
func TestPostgresqlIgnoresUnwantedColumns(t *testing.T) { func TestPostgresqlIgnoresUnwantedColumnsIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -176,7 +176,7 @@ func TestPostgresqlIgnoresUnwantedColumns(t *testing.T) {
} }
} }
func TestPostgresqlDatabaseWhitelistTest(t *testing.T) { func TestPostgresqlDatabaseWhitelistTestIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -216,7 +216,7 @@ func TestPostgresqlDatabaseWhitelistTest(t *testing.T) {
assert.False(t, foundTemplate1) assert.False(t, foundTemplate1)
} }
func TestPostgresqlDatabaseBlacklistTest(t *testing.T) { func TestPostgresqlDatabaseBlacklistTestIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }

View File

@ -3,15 +3,16 @@ package postgresql
import ( import (
"database/sql" "database/sql"
"fmt" "fmt"
"github.com/jackc/pgx"
"github.com/jackc/pgx/pgtype"
"github.com/jackc/pgx/stdlib"
"net" "net"
"net/url" "net/url"
"regexp" "regexp"
"sort" "sort"
"strings" "strings"
"github.com/jackc/pgx"
"github.com/jackc/pgx/pgtype"
"github.com/jackc/pgx/stdlib"
"github.com/influxdata/telegraf" "github.com/influxdata/telegraf"
"github.com/influxdata/telegraf/internal" "github.com/influxdata/telegraf/internal"
) )

View File

@ -32,7 +32,7 @@ func queryRunner(t *testing.T, q query) *testutil.Accumulator {
return &acc return &acc
} }
func TestPostgresqlGeneratesMetrics(t *testing.T) { func TestPostgresqlGeneratesMetricsIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -99,7 +99,7 @@ func TestPostgresqlGeneratesMetrics(t *testing.T) {
assert.Equal(t, len(floatMetrics)+len(intMetrics)+len(int32Metrics)+len(stringMetrics), metricsCounted) assert.Equal(t, len(floatMetrics)+len(intMetrics)+len(int32Metrics)+len(stringMetrics), metricsCounted)
} }
func TestPostgresqlQueryOutputTests(t *testing.T) { func TestPostgresqlQueryOutputTestsIntegration(t *testing.T) {
const measurement = "postgresql" const measurement = "postgresql"
if testing.Short() { if testing.Short() {
@ -148,7 +148,7 @@ func TestPostgresqlQueryOutputTests(t *testing.T) {
} }
} }
func TestPostgresqlFieldOutput(t *testing.T) { func TestPostgresqlFieldOutputIntegration(t *testing.T) {
const measurement = "postgresql" const measurement = "postgresql"
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
@ -237,7 +237,7 @@ func TestPostgresqlSqlScript(t *testing.T) {
require.NoError(t, acc.GatherError(p.Gather)) require.NoError(t, acc.GatherError(p.Gather))
} }
func TestPostgresqlIgnoresUnwantedColumns(t *testing.T) { func TestPostgresqlIgnoresUnwantedColumnsIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }

View File

@ -10,7 +10,7 @@ import (
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
) )
func TestGather_RealPattern(t *testing.T) { func TestGather_RealPatternIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -22,7 +22,7 @@ func TestGather_RealPattern(t *testing.T) {
assert.Equal(t, len(pids) > 0, true) assert.Equal(t, len(pids) > 0, true)
} }
func TestGather_RealFullPattern(t *testing.T) { func TestGather_RealFullPatternIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -34,7 +34,7 @@ func TestGather_RealFullPattern(t *testing.T) {
assert.Equal(t, len(pids) > 0, true) assert.Equal(t, len(pids) > 0, true)
} }
func TestGather_RealUser(t *testing.T) { func TestGather_RealUserIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }

View File

@ -99,7 +99,7 @@ func TestPrometheusGeneratesMetricsWithHostNameTag(t *testing.T) {
assert.True(t, acc.TagValue("test_metric", "url") == ts.URL) assert.True(t, acc.TagValue("test_metric", "url") == ts.URL)
} }
func TestPrometheusGeneratesMetricsAlthoughFirstDNSFails(t *testing.T) { func TestPrometheusGeneratesMetricsAlthoughFirstDNSFailsIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }

View File

@ -28,7 +28,7 @@ func (t *testClient) Do(returnType string, args ...interface{}) (interface{}, er
return 2, nil return 2, nil
} }
func TestRedisConnect(t *testing.T) { func TestRedisConnectIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }

View File

@ -113,12 +113,11 @@ func TestSqlServer_ParseMetrics(t *testing.T) {
} }
} }
func TestSqlServer_MultipleInstance(t *testing.T) { func TestSqlServer_MultipleInstanceIntegration(t *testing.T) {
// Invoke Gather() from two separate configurations and // Invoke Gather() from two separate configurations and
// confirm they don't interfere with each other // confirm they don't interfere with each other
if testing.Short() { t.Skip("Skipping as unable to open tcp connection with host '127.0.0.1:1433")
t.Skip("Skipping integration test in short mode")
}
testServer := "Server=127.0.0.1;Port=1433;User Id=SA;Password=ABCabc01;app name=telegraf;log=1" testServer := "Server=127.0.0.1;Port=1433;User Id=SA;Password=ABCabc01;app name=telegraf;log=1"
s := &SQLServer{ s := &SQLServer{
Servers: []string{testServer}, Servers: []string{testServer},
@ -139,7 +138,6 @@ func TestSqlServer_MultipleInstance(t *testing.T) {
require.NoError(t, err) require.NoError(t, err)
assert.Equal(t, s.isInitialized, true) assert.Equal(t, s.isInitialized, true)
assert.Equal(t, s2.isInitialized, true) assert.Equal(t, s2.isInitialized, true)
// acc includes size metrics, and excludes memory metrics // acc includes size metrics, and excludes memory metrics
assert.False(t, acc.HasMeasurement("Memory breakdown (%)")) assert.False(t, acc.HasMeasurement("Memory breakdown (%)"))
assert.True(t, acc.HasMeasurement("Log size (bytes)")) assert.True(t, acc.HasMeasurement("Log size (bytes)"))

View File

@ -8,13 +8,14 @@ import (
"testing" "testing"
"time" "time"
"strings"
"github.com/influxdata/telegraf/testutil" "github.com/influxdata/telegraf/testutil"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"strings"
) )
func TestWinPerformanceQueryImpl(t *testing.T) { func TestWinPerformanceQueryImplIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -116,7 +117,7 @@ func TestWinPerformanceQueryImpl(t *testing.T) {
} }
func TestWinPerfcountersConfigGet1(t *testing.T) { func TestWinPerfcountersConfigGet1Integration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -150,7 +151,7 @@ func TestWinPerfcountersConfigGet1(t *testing.T) {
require.NoError(t, err) require.NoError(t, err)
} }
func TestWinPerfcountersConfigGet2(t *testing.T) { func TestWinPerfcountersConfigGet2Integration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -196,7 +197,7 @@ func TestWinPerfcountersConfigGet2(t *testing.T) {
} }
} }
func TestWinPerfcountersConfigGet3(t *testing.T) { func TestWinPerfcountersConfigGet3Integration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -245,7 +246,7 @@ func TestWinPerfcountersConfigGet3(t *testing.T) {
} }
} }
func TestWinPerfcountersConfigGet4(t *testing.T) { func TestWinPerfcountersConfigGet4Integration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -294,7 +295,7 @@ func TestWinPerfcountersConfigGet4(t *testing.T) {
} }
} }
func TestWinPerfcountersConfigGet5(t *testing.T) { func TestWinPerfcountersConfigGet5Integration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -342,7 +343,7 @@ func TestWinPerfcountersConfigGet5(t *testing.T) {
} }
} }
func TestWinPerfcountersConfigGet6(t *testing.T) { func TestWinPerfcountersConfigGet6Integration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -376,7 +377,7 @@ func TestWinPerfcountersConfigGet6(t *testing.T) {
require.NoError(t, err) require.NoError(t, err)
} }
func TestWinPerfcountersConfigGet7(t *testing.T) { func TestWinPerfcountersConfigGet7Integration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -424,7 +425,7 @@ func TestWinPerfcountersConfigGet7(t *testing.T) {
} }
} }
func TestWinPerfcountersConfigError1(t *testing.T) { func TestWinPerfcountersConfigError1Integration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -458,7 +459,7 @@ func TestWinPerfcountersConfigError1(t *testing.T) {
require.Error(t, err) require.Error(t, err)
} }
func TestWinPerfcountersConfigError2(t *testing.T) { func TestWinPerfcountersConfigError2Integration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -494,7 +495,7 @@ func TestWinPerfcountersConfigError2(t *testing.T) {
require.Error(t, err) require.Error(t, err)
} }
func TestWinPerfcountersConfigError3(t *testing.T) { func TestWinPerfcountersConfigError3Integration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -528,7 +529,7 @@ func TestWinPerfcountersConfigError3(t *testing.T) {
require.Error(t, err) require.Error(t, err)
} }
func TestWinPerfcountersCollect1(t *testing.T) { func TestWinPerfcountersCollect1Integration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -572,7 +573,7 @@ func TestWinPerfcountersCollect1(t *testing.T) {
} }
} }
func TestWinPerfcountersCollect2(t *testing.T) { func TestWinPerfcountersCollect2Integration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }

View File

@ -13,7 +13,7 @@ import (
var InvalidServices = []string{"XYZ1@", "ZYZ@", "SDF_@#"} var InvalidServices = []string{"XYZ1@", "ZYZ@", "SDF_@#"}
var KnownServices = []string{"LanmanServer", "TermService"} var KnownServices = []string{"LanmanServer", "TermService"}
func TestList(t *testing.T) { func TestListIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -33,7 +33,7 @@ func TestList(t *testing.T) {
require.Equal(t, services[1], KnownServices[1]) require.Equal(t, services[1], KnownServices[1])
} }
func TestEmptyList(t *testing.T) { func TestEmptyListIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -51,7 +51,7 @@ func TestEmptyList(t *testing.T) {
require.Condition(t, func() bool { return len(services) > 20 }, "Too few service") require.Condition(t, func() bool { return len(services) > 20 }, "Too few service")
} }
func TestGatherErrors(t *testing.T) { func TestGatherErrorsIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }

View File

@ -27,10 +27,8 @@ var pki = testutil.NewPKI("../../../testutil/pki")
// Make sure X509Cert implements telegraf.Input // Make sure X509Cert implements telegraf.Input
var _ telegraf.Input = &X509Cert{} var _ telegraf.Input = &X509Cert{}
func TestGatherRemote(t *testing.T) { func TestGatherRemoteIntegration(t *testing.T) {
if testing.Short() { t.Skip("Skipping network-dependent test due to race condition when test-all")
t.Skip("Skipping network-dependent test in short mode.")
}
tmpfile, err := ioutil.TempFile("", "example") tmpfile, err := ioutil.TempFile("", "example")
if err != nil { if err != nil {
@ -333,7 +331,7 @@ func TestStrings(t *testing.T) {
} }
} }
func TestGatherCert(t *testing.T) { func TestGatherCertIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }

View File

@ -8,7 +8,7 @@ import (
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
) )
func TestZookeeperGeneratesMetrics(t *testing.T) { func TestZookeeperGeneratesMetricsIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }

View File

@ -2,6 +2,7 @@ package cratedb
import ( import (
"database/sql" "database/sql"
"fmt"
"os" "os"
"strings" "strings"
"testing" "testing"
@ -14,17 +15,15 @@ import (
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
) )
func TestConnectAndWrite(t *testing.T) { func TestConnectAndWriteIntegration(t *testing.T) {
if testing.Short() { t.Skip("Skipping due to trust authentication failure")
t.Skip("Skipping integration test in short mode")
}
if os.Getenv("CIRCLE_PROJECT_REPONAME") != "" { if os.Getenv("CIRCLE_PROJECT_REPONAME") != "" {
t.Skip("Skipping test on CircleCI due to docker failures") t.Skip("Skipping test on CircleCI due to docker failures")
} }
url := testURL() url := testURL()
table := "test" table := "test-1"
// dropSQL drops our table before each test. This simplifies changing the // dropSQL drops our table before each test. This simplifies changing the
// schema during development :). // schema during development :).
@ -94,10 +93,8 @@ VALUES
} }
} }
func Test_escapeValue(t *testing.T) { func Test_escapeValueIntegration(t *testing.T) {
if testing.Short() { t.Skip("Skipping due to trust authentication failure")
t.Skip("Skipping integration test in short mode")
}
if os.Getenv("CIRCLE_PROJECT_REPONAME") != "" { if os.Getenv("CIRCLE_PROJECT_REPONAME") != "" {
t.Skip("Skipping test on CircleCI due to docker failures") t.Skip("Skipping test on CircleCI due to docker failures")
@ -135,6 +132,7 @@ func Test_escapeValue(t *testing.T) {
} }
url := testURL() url := testURL()
fmt.Println("url", url)
db, err := sql.Open("pgx", url) db, err := sql.Open("pgx", url)
require.NoError(t, err) require.NoError(t, err)
defer db.Close() defer db.Close()

View File

@ -11,7 +11,7 @@ import (
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
) )
func TestConnectAndWrite(t *testing.T) { func TestConnectAndWriteIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -38,7 +38,7 @@ func TestConnectAndWrite(t *testing.T) {
} }
func TestTemplateManagementEmptyTemplate(t *testing.T) { func TestTemplateManagementEmptyTemplateIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -61,7 +61,7 @@ func TestTemplateManagementEmptyTemplate(t *testing.T) {
} }
func TestTemplateManagement(t *testing.T) { func TestTemplateManagementIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -87,7 +87,7 @@ func TestTemplateManagement(t *testing.T) {
require.NoError(t, err) require.NoError(t, err)
} }
func TestTemplateInvalidIndexPattern(t *testing.T) { func TestTemplateInvalidIndexPatternIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }

View File

@ -6,18 +6,15 @@ import (
"testing" "testing"
"time" "time"
"github.com/stretchr/testify/require"
"github.com/influxdata/telegraf" "github.com/influxdata/telegraf"
"github.com/influxdata/telegraf/internal" "github.com/influxdata/telegraf/internal"
"github.com/influxdata/telegraf/plugins/serializers" "github.com/influxdata/telegraf/plugins/serializers"
"github.com/influxdata/telegraf/testutil" "github.com/influxdata/telegraf/testutil"
"github.com/stretchr/testify/require"
) )
func TestExec(t *testing.T) { func TestExec(t *testing.T) {
if testing.Short() { t.Skip("Skipping test due to OS/executable dependencies and race condition when ran as part of a test-all")
t.Skip("Skipping test due to OS/executable dependencies")
}
tests := []struct { tests := []struct {
name string name string

View File

@ -17,7 +17,7 @@ type topicSuffixTestpair struct {
expectedTopic string expectedTopic string
} }
func TestConnectAndWrite(t *testing.T) { func TestConnectAndWriteIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -43,7 +43,7 @@ func TestConnectAndWrite(t *testing.T) {
k.Close() k.Close()
} }
func TestTopicSuffixes(t *testing.T) { func TestTopicSuffixesIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
@ -90,7 +90,7 @@ func TestTopicSuffixes(t *testing.T) {
} }
} }
func TestValidateTopicSuffixMethod(t *testing.T) { func TestValidateTopicSuffixMethodIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }

View File

@ -9,7 +9,7 @@ import (
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
) )
func TestConnectAndWrite(t *testing.T) { func TestConnectAndWriteIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }

View File

@ -8,7 +8,7 @@ import (
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
) )
func TestConnectAndWrite(t *testing.T) { func TestConnectAndWriteIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }

View File

@ -8,7 +8,7 @@ import (
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
) )
func TestConnectAndWrite(t *testing.T) { func TestConnectAndWriteIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }

View File

@ -164,41 +164,38 @@ func BenchmarkHttpSend(b *testing.B) {
o.Write(metrics) o.Write(metrics)
} }
} }
func TestWriteIntegration(t *testing.T) {
t.Skip("Skip as OpenTSDB not running")
// func TestWrite(t *testing.T) { o := &OpenTSDB{
// if testing.Short() { Host: testutil.GetLocalHost(),
// t.Skip("Skipping integration test in short mode") Port: 4242,
// } Prefix: "prefix.test.",
}
// o := &OpenTSDB{ // Verify that we can connect to the OpenTSDB instance
// Host: testutil.GetLocalHost(), err := o.Connect()
// Port: 4242, require.NoError(t, err)
// Prefix: "prefix.test.",
// }
// // Verify that we can connect to the OpenTSDB instance // Verify that we can successfully write data to OpenTSDB
// err := o.Connect() err = o.Write(testutil.MockMetrics())
// require.NoError(t, err) require.NoError(t, err)
// // Verify that we can successfully write data to OpenTSDB // Verify positive and negative test cases of writing data
// err = o.Write(testutil.MockMetrics()) metrics := testutil.MockMetrics()
// require.NoError(t, err) metrics = append(metrics, testutil.TestMetric(float64(1.0),
"justametric.float"))
metrics = append(metrics, testutil.TestMetric(int64(123456789),
"justametric.int"))
metrics = append(metrics, testutil.TestMetric(uint64(123456789012345),
"justametric.uint"))
metrics = append(metrics, testutil.TestMetric("Lorem Ipsum",
"justametric.string"))
metrics = append(metrics, testutil.TestMetric(float64(42.0),
"justametric.anotherfloat"))
metrics = append(metrics, testutil.TestMetric(float64(42.0),
"metric w/ specialchars"))
// // Verify positive and negative test cases of writing data err = o.Write(metrics)
// metrics := testutil.MockMetrics() require.NoError(t, err)
// metrics = append(metrics, testutil.TestMetric(float64(1.0), }
// "justametric.float"))
// metrics = append(metrics, testutil.TestMetric(int64(123456789),
// "justametric.int"))
// metrics = append(metrics, testutil.TestMetric(uint64(123456789012345),
// "justametric.uint"))
// metrics = append(metrics, testutil.TestMetric("Lorem Ipsum",
// "justametric.string"))
// metrics = append(metrics, testutil.TestMetric(float64(42.0),
// "justametric.anotherfloat"))
// metrics = append(metrics, testutil.TestMetric(float64(42.0),
// "metric w/ specialchars"))
// err = o.Write(metrics)
// require.NoError(t, err)
// }

View File

@ -8,9 +8,7 @@ import (
) )
func TestConnectAndWrite(t *testing.T) { func TestConnectAndWrite(t *testing.T) {
if testing.Short() { t.Skip("Skipping legacy integration test")
t.Skip("Skipping integration test in short mode")
}
url := testutil.GetLocalHost() + ":5555" url := testutil.GetLocalHost() + ":5555"

View File

@ -16,9 +16,7 @@ import (
) )
func TestTable(t *testing.T) { func TestTable(t *testing.T) {
if testing.Short() { t.Skip("Skipping test due to connect failures")
t.Skip("Skipping integration test in short mode")
}
d := IfName{} d := IfName{}
d.Init() d.Init()
@ -43,10 +41,9 @@ func TestTable(t *testing.T) {
require.NotEmpty(t, m) require.NotEmpty(t, m)
} }
func TestIfName(t *testing.T) { func TestIfNameIntegration(t *testing.T) {
if testing.Short() { t.Skip("Skipping test due to connect failures")
t.Skip("Skipping integration test in short mode")
}
d := IfName{ d := IfName{
SourceTag: "ifIndex", SourceTag: "ifIndex",
DestTag: "ifName", DestTag: "ifName",