From 792682590cc1e05ec1cde241cda620253a1d28f6 Mon Sep 17 00:00:00 2001
From: Cameron Sparr <cameronsparr@gmail.com>
Date: Wed, 31 Aug 2016 12:17:06 +0100
Subject: [PATCH] Remove snmp_legacy unit tests and docker image

---
 Makefile                                      |   6 +-
 .../inputs/snmp_legacy/snmp_legacy_test.go    | 482 ------------------
 plugins/inputs/snmp_legacy/testdata/oids.txt  |  32 --
 3 files changed, 2 insertions(+), 518 deletions(-)
 delete mode 100644 plugins/inputs/snmp_legacy/snmp_legacy_test.go
 delete mode 100644 plugins/inputs/snmp_legacy/testdata/oids.txt

diff --git a/Makefile b/Makefile
index 121dbfd4..10ddbef6 100644
--- a/Makefile
+++ b/Makefile
@@ -56,7 +56,6 @@ docker-run:
 	docker run --name nsq -p "4150:4150" -d nsqio/nsq /nsqd
 	docker run --name mqtt -p "1883:1883" -d ncarlier/mqtt
 	docker run --name riemann -p "5555:5555" -d blalor/riemann
-	docker run --name snmp -p "31161:31161/udp" -d titilambert/snmpsim
 
 # Run docker containers necessary for CircleCI unit tests
 docker-run-circle:
@@ -69,12 +68,11 @@ docker-run-circle:
 	docker run --name nsq -p "4150:4150" -d nsqio/nsq /nsqd
 	docker run --name mqtt -p "1883:1883" -d ncarlier/mqtt
 	docker run --name riemann -p "5555:5555" -d blalor/riemann
-	docker run --name snmp -p "31161:31161/udp" -d titilambert/snmpsim
 
 # Kill all docker containers, ignore errors
 docker-kill:
-	-docker kill nsq aerospike redis rabbitmq postgres memcached mysql kafka mqtt riemann snmp
-	-docker rm nsq aerospike redis rabbitmq postgres memcached mysql kafka mqtt riemann snmp
+	-docker kill nsq aerospike redis rabbitmq postgres memcached mysql kafka mqtt riemann
+	-docker rm nsq aerospike redis rabbitmq postgres memcached mysql kafka mqtt riemann
 
 # Run full unit tests using docker containers (includes setup and teardown)
 test: vet docker-kill docker-run
diff --git a/plugins/inputs/snmp_legacy/snmp_legacy_test.go b/plugins/inputs/snmp_legacy/snmp_legacy_test.go
deleted file mode 100644
index a6bf2922..00000000
--- a/plugins/inputs/snmp_legacy/snmp_legacy_test.go
+++ /dev/null
@@ -1,482 +0,0 @@
-package snmp_legacy
-
-import (
-	"testing"
-
-	"github.com/influxdata/telegraf/testutil"
-
-	"github.com/stretchr/testify/assert"
-	"github.com/stretchr/testify/require"
-)
-
-func TestSNMPErrorGet1(t *testing.T) {
-	get1 := Data{
-		Name: "oid1",
-		Unit: "octets",
-		Oid:  ".1.3.6.1.2.1.2.2.1.16.1",
-	}
-	h := Host{
-		Collect: []string{"oid1"},
-	}
-	s := Snmp{
-		SnmptranslateFile: "bad_oid.txt",
-		Host:              []Host{h},
-		Get:               []Data{get1},
-	}
-
-	var acc testutil.Accumulator
-	err := s.Gather(&acc)
-	require.Error(t, err)
-}
-
-func TestSNMPErrorGet2(t *testing.T) {
-	get1 := Data{
-		Name: "oid1",
-		Unit: "octets",
-		Oid:  ".1.3.6.1.2.1.2.2.1.16.1",
-	}
-	h := Host{
-		Collect: []string{"oid1"},
-	}
-	s := Snmp{
-		Host: []Host{h},
-		Get:  []Data{get1},
-	}
-
-	var acc testutil.Accumulator
-	err := s.Gather(&acc)
-	require.NoError(t, err)
-	assert.Equal(t, 0, len(acc.Metrics))
-}
-
-func TestSNMPErrorBulk(t *testing.T) {
-	bulk1 := Data{
-		Name: "oid1",
-		Unit: "octets",
-		Oid:  ".1.3.6.1.2.1.2.2.1.16",
-	}
-	h := Host{
-		Address: testutil.GetLocalHost(),
-		Collect: []string{"oid1"},
-	}
-	s := Snmp{
-		Host: []Host{h},
-		Bulk: []Data{bulk1},
-	}
-
-	var acc testutil.Accumulator
-	err := s.Gather(&acc)
-	require.NoError(t, err)
-	assert.Equal(t, 0, len(acc.Metrics))
-}
-
-func TestSNMPGet1(t *testing.T) {
-	if testing.Short() {
-		t.Skip("Skipping integration test in short mode")
-	}
-	get1 := Data{
-		Name: "oid1",
-		Unit: "octets",
-		Oid:  ".1.3.6.1.2.1.2.2.1.16.1",
-	}
-	h := Host{
-		Address:   testutil.GetLocalHost() + ":31161",
-		Community: "telegraf",
-		Version:   2,
-		Timeout:   2.0,
-		Retries:   2,
-		Collect:   []string{"oid1"},
-	}
-	s := Snmp{
-		Host: []Host{h},
-		Get:  []Data{get1},
-	}
-
-	var acc testutil.Accumulator
-	err := s.Gather(&acc)
-	require.NoError(t, err)
-
-	acc.AssertContainsTaggedFields(t,
-		"oid1",
-		map[string]interface{}{
-			"oid1": uint(543846),
-		},
-		map[string]string{
-			"unit":      "octets",
-			"snmp_host": testutil.GetLocalHost(),
-		},
-	)
-}
-
-func TestSNMPGet2(t *testing.T) {
-	if testing.Short() {
-		t.Skip("Skipping integration test in short mode")
-	}
-	get1 := Data{
-		Name: "oid1",
-		Oid:  "ifNumber",
-	}
-	h := Host{
-		Address:   testutil.GetLocalHost() + ":31161",
-		Community: "telegraf",
-		Version:   2,
-		Timeout:   2.0,
-		Retries:   2,
-		Collect:   []string{"oid1"},
-	}
-	s := Snmp{
-		SnmptranslateFile: "./testdata/oids.txt",
-		Host:              []Host{h},
-		Get:               []Data{get1},
-	}
-
-	var acc testutil.Accumulator
-	err := s.Gather(&acc)
-	require.NoError(t, err)
-
-	acc.AssertContainsTaggedFields(t,
-		"ifNumber",
-		map[string]interface{}{
-			"ifNumber": int(4),
-		},
-		map[string]string{
-			"instance":  "0",
-			"snmp_host": testutil.GetLocalHost(),
-		},
-	)
-}
-
-func TestSNMPGet3(t *testing.T) {
-	if testing.Short() {
-		t.Skip("Skipping integration test in short mode")
-	}
-	get1 := Data{
-		Name:     "oid1",
-		Unit:     "octets",
-		Oid:      "ifSpeed",
-		Instance: "1",
-	}
-	h := Host{
-		Address:   testutil.GetLocalHost() + ":31161",
-		Community: "telegraf",
-		Version:   2,
-		Timeout:   2.0,
-		Retries:   2,
-		Collect:   []string{"oid1"},
-	}
-	s := Snmp{
-		SnmptranslateFile: "./testdata/oids.txt",
-		Host:              []Host{h},
-		Get:               []Data{get1},
-	}
-
-	var acc testutil.Accumulator
-	err := s.Gather(&acc)
-	require.NoError(t, err)
-
-	acc.AssertContainsTaggedFields(t,
-		"ifSpeed",
-		map[string]interface{}{
-			"ifSpeed": uint(10000000),
-		},
-		map[string]string{
-			"unit":      "octets",
-			"instance":  "1",
-			"snmp_host": testutil.GetLocalHost(),
-		},
-	)
-}
-
-func TestSNMPEasyGet4(t *testing.T) {
-	if testing.Short() {
-		t.Skip("Skipping integration test in short mode")
-	}
-	get1 := Data{
-		Name:     "oid1",
-		Unit:     "octets",
-		Oid:      "ifSpeed",
-		Instance: "1",
-	}
-	h := Host{
-		Address:   testutil.GetLocalHost() + ":31161",
-		Community: "telegraf",
-		Version:   2,
-		Timeout:   2.0,
-		Retries:   2,
-		Collect:   []string{"oid1"},
-		GetOids:   []string{"ifNumber"},
-	}
-	s := Snmp{
-		SnmptranslateFile: "./testdata/oids.txt",
-		Host:              []Host{h},
-		Get:               []Data{get1},
-	}
-
-	var acc testutil.Accumulator
-	err := s.Gather(&acc)
-	require.NoError(t, err)
-
-	acc.AssertContainsTaggedFields(t,
-		"ifSpeed",
-		map[string]interface{}{
-			"ifSpeed": uint(10000000),
-		},
-		map[string]string{
-			"unit":      "octets",
-			"instance":  "1",
-			"snmp_host": testutil.GetLocalHost(),
-		},
-	)
-
-	acc.AssertContainsTaggedFields(t,
-		"ifNumber",
-		map[string]interface{}{
-			"ifNumber": int(4),
-		},
-		map[string]string{
-			"instance":  "0",
-			"snmp_host": testutil.GetLocalHost(),
-		},
-	)
-}
-
-func TestSNMPEasyGet5(t *testing.T) {
-	if testing.Short() {
-		t.Skip("Skipping integration test in short mode")
-	}
-	get1 := Data{
-		Name:     "oid1",
-		Unit:     "octets",
-		Oid:      "ifSpeed",
-		Instance: "1",
-	}
-	h := Host{
-		Address:   testutil.GetLocalHost() + ":31161",
-		Community: "telegraf",
-		Version:   2,
-		Timeout:   2.0,
-		Retries:   2,
-		Collect:   []string{"oid1"},
-		GetOids:   []string{".1.3.6.1.2.1.2.1.0"},
-	}
-	s := Snmp{
-		SnmptranslateFile: "./testdata/oids.txt",
-		Host:              []Host{h},
-		Get:               []Data{get1},
-	}
-
-	var acc testutil.Accumulator
-	err := s.Gather(&acc)
-	require.NoError(t, err)
-
-	acc.AssertContainsTaggedFields(t,
-		"ifSpeed",
-		map[string]interface{}{
-			"ifSpeed": uint(10000000),
-		},
-		map[string]string{
-			"unit":      "octets",
-			"instance":  "1",
-			"snmp_host": testutil.GetLocalHost(),
-		},
-	)
-
-	acc.AssertContainsTaggedFields(t,
-		"ifNumber",
-		map[string]interface{}{
-			"ifNumber": int(4),
-		},
-		map[string]string{
-			"instance":  "0",
-			"snmp_host": testutil.GetLocalHost(),
-		},
-	)
-}
-
-func TestSNMPEasyGet6(t *testing.T) {
-	if testing.Short() {
-		t.Skip("Skipping integration test in short mode")
-	}
-	h := Host{
-		Address:   testutil.GetLocalHost() + ":31161",
-		Community: "telegraf",
-		Version:   2,
-		Timeout:   2.0,
-		Retries:   2,
-		GetOids:   []string{"1.3.6.1.2.1.2.1.0"},
-	}
-	s := Snmp{
-		SnmptranslateFile: "./testdata/oids.txt",
-		Host:              []Host{h},
-	}
-
-	var acc testutil.Accumulator
-	err := s.Gather(&acc)
-	require.NoError(t, err)
-
-	acc.AssertContainsTaggedFields(t,
-		"ifNumber",
-		map[string]interface{}{
-			"ifNumber": int(4),
-		},
-		map[string]string{
-			"instance":  "0",
-			"snmp_host": testutil.GetLocalHost(),
-		},
-	)
-}
-
-func TestSNMPBulk1(t *testing.T) {
-	if testing.Short() {
-		t.Skip("Skipping integration test in short mode")
-	}
-	bulk1 := Data{
-		Name:          "oid1",
-		Unit:          "octets",
-		Oid:           ".1.3.6.1.2.1.2.2.1.16",
-		MaxRepetition: 2,
-	}
-	h := Host{
-		Address:   testutil.GetLocalHost() + ":31161",
-		Community: "telegraf",
-		Version:   2,
-		Timeout:   2.0,
-		Retries:   2,
-		Collect:   []string{"oid1"},
-	}
-	s := Snmp{
-		SnmptranslateFile: "./testdata/oids.txt",
-		Host:              []Host{h},
-		Bulk:              []Data{bulk1},
-	}
-
-	var acc testutil.Accumulator
-	err := s.Gather(&acc)
-	require.NoError(t, err)
-
-	acc.AssertContainsTaggedFields(t,
-		"ifOutOctets",
-		map[string]interface{}{
-			"ifOutOctets": uint(543846),
-		},
-		map[string]string{
-			"unit":      "octets",
-			"instance":  "1",
-			"snmp_host": testutil.GetLocalHost(),
-		},
-	)
-
-	acc.AssertContainsTaggedFields(t,
-		"ifOutOctets",
-		map[string]interface{}{
-			"ifOutOctets": uint(26475179),
-		},
-		map[string]string{
-			"unit":      "octets",
-			"instance":  "2",
-			"snmp_host": testutil.GetLocalHost(),
-		},
-	)
-
-	acc.AssertContainsTaggedFields(t,
-		"ifOutOctets",
-		map[string]interface{}{
-			"ifOutOctets": uint(108963968),
-		},
-		map[string]string{
-			"unit":      "octets",
-			"instance":  "3",
-			"snmp_host": testutil.GetLocalHost(),
-		},
-	)
-
-	acc.AssertContainsTaggedFields(t,
-		"ifOutOctets",
-		map[string]interface{}{
-			"ifOutOctets": uint(12991453),
-		},
-		map[string]string{
-			"unit":      "octets",
-			"instance":  "36",
-			"snmp_host": testutil.GetLocalHost(),
-		},
-	)
-}
-
-// TODO find why, if this test is active
-// Circle CI stops with the following error...
-// bash scripts/circle-test.sh died unexpectedly
-// Maybe the test is too long ??
-func dTestSNMPBulk2(t *testing.T) {
-	bulk1 := Data{
-		Name:          "oid1",
-		Unit:          "octets",
-		Oid:           "ifOutOctets",
-		MaxRepetition: 2,
-	}
-	h := Host{
-		Address:   testutil.GetLocalHost() + ":31161",
-		Community: "telegraf",
-		Version:   2,
-		Timeout:   2.0,
-		Retries:   2,
-		Collect:   []string{"oid1"},
-	}
-	s := Snmp{
-		SnmptranslateFile: "./testdata/oids.txt",
-		Host:              []Host{h},
-		Bulk:              []Data{bulk1},
-	}
-
-	var acc testutil.Accumulator
-	err := s.Gather(&acc)
-	require.NoError(t, err)
-
-	acc.AssertContainsTaggedFields(t,
-		"ifOutOctets",
-		map[string]interface{}{
-			"ifOutOctets": uint(543846),
-		},
-		map[string]string{
-			"unit":      "octets",
-			"instance":  "1",
-			"snmp_host": testutil.GetLocalHost(),
-		},
-	)
-
-	acc.AssertContainsTaggedFields(t,
-		"ifOutOctets",
-		map[string]interface{}{
-			"ifOutOctets": uint(26475179),
-		},
-		map[string]string{
-			"unit":      "octets",
-			"instance":  "2",
-			"snmp_host": testutil.GetLocalHost(),
-		},
-	)
-
-	acc.AssertContainsTaggedFields(t,
-		"ifOutOctets",
-		map[string]interface{}{
-			"ifOutOctets": uint(108963968),
-		},
-		map[string]string{
-			"unit":      "octets",
-			"instance":  "3",
-			"snmp_host": testutil.GetLocalHost(),
-		},
-	)
-
-	acc.AssertContainsTaggedFields(t,
-		"ifOutOctets",
-		map[string]interface{}{
-			"ifOutOctets": uint(12991453),
-		},
-		map[string]string{
-			"unit":      "octets",
-			"instance":  "36",
-			"snmp_host": testutil.GetLocalHost(),
-		},
-	)
-}
diff --git a/plugins/inputs/snmp_legacy/testdata/oids.txt b/plugins/inputs/snmp_legacy/testdata/oids.txt
deleted file mode 100644
index 1a351be9..00000000
--- a/plugins/inputs/snmp_legacy/testdata/oids.txt
+++ /dev/null
@@ -1,32 +0,0 @@
-org			1.3
-dod			1.3.6
-internet			1.3.6.1
-directory			1.3.6.1.1
-mgmt			1.3.6.1.2
-mib-2			1.3.6.1.2.1
-interfaces			1.3.6.1.2.1.2
-ifNumber			1.3.6.1.2.1.2.1
-ifTable			1.3.6.1.2.1.2.2
-ifEntry			1.3.6.1.2.1.2.2.1
-ifIndex			1.3.6.1.2.1.2.2.1.1
-ifDescr			1.3.6.1.2.1.2.2.1.2
-ifType			1.3.6.1.2.1.2.2.1.3
-ifMtu			1.3.6.1.2.1.2.2.1.4
-ifSpeed			1.3.6.1.2.1.2.2.1.5
-ifPhysAddress			1.3.6.1.2.1.2.2.1.6
-ifAdminStatus			1.3.6.1.2.1.2.2.1.7
-ifOperStatus			1.3.6.1.2.1.2.2.1.8
-ifLastChange			1.3.6.1.2.1.2.2.1.9
-ifInOctets			1.3.6.1.2.1.2.2.1.10
-ifInUcastPkts			1.3.6.1.2.1.2.2.1.11
-ifInNUcastPkts			1.3.6.1.2.1.2.2.1.12
-ifInDiscards			1.3.6.1.2.1.2.2.1.13
-ifInErrors			1.3.6.1.2.1.2.2.1.14
-ifInUnknownProtos			1.3.6.1.2.1.2.2.1.15
-ifOutOctets			1.3.6.1.2.1.2.2.1.16
-ifOutUcastPkts			1.3.6.1.2.1.2.2.1.17
-ifOutNUcastPkts			1.3.6.1.2.1.2.2.1.18
-ifOutDiscards			1.3.6.1.2.1.2.2.1.19
-ifOutErrors			1.3.6.1.2.1.2.2.1.20
-ifOutQLen			1.3.6.1.2.1.2.2.1.21
-ifSpecific			1.3.6.1.2.1.2.2.1.22
-- 
GitLab