1// Copyright 2019 The Prometheus Authors 2// Licensed under the Apache License, Version 2.0 (the "License"); 3// you may not use this file except in compliance with the License. 4// You may obtain a copy of the License at 5// 6// http://www.apache.org/licenses/LICENSE-2.0 7// 8// Unless required by applicable law or agreed to in writing, software 9// distributed under the License is distributed on an "AS IS" BASIS, 10// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11// See the License for the specific language governing permissions and 12// limitations under the License. 13 14package procfs 15 16import "testing" 17 18func TestProcEnviron(t *testing.T) { 19 p, err := getProcFixtures(t).Proc(26231) 20 if err != nil { 21 t.Fatal(err) 22 } 23 24 environments, err := p.Environ() 25 if err != nil { 26 t.Fatal(err) 27 } 28 29 expectedEnvironments := []string{ 30 "PATH=/go/bin:/usr/local/go/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", 31 "HOSTNAME=cd24e11f73a5", 32 "TERM=xterm", 33 "GOLANG_VERSION=1.12.5", 34 "GOPATH=/go", 35 "HOME=/root", 36 } 37 38 if want, have := len(expectedEnvironments), len(environments); want != have { 39 t.Errorf("want %d parsed environments, have %d", want, have) 40 } 41 42 for i, environment := range environments { 43 if want, have := expectedEnvironments[i], environment; want != have { 44 t.Errorf("%d: want %v, have %v", i, want, have) 45 } 46 } 47} 48