github.com/getgauge/gauge@v1.6.9/runner/runner_test.go (about)

     1  /*----------------------------------------------------------------
     2   *  Copyright (c) ThoughtWorks, Inc.
     3   *  Licensed under the Apache License, Version 2.0
     4   *  See LICENSE in the project root for license information.
     5   *----------------------------------------------------------------*/
     6  
     7  package runner
     8  
     9  import (
    10  	"os"
    11  	"reflect"
    12  	"strings"
    13  	"testing"
    14  
    15  	"github.com/getgauge/common"
    16  )
    17  
    18  func TestGetCleanEnvRemovesGAUGE_INTERNAL_PORTAndSetsPortNumber(t *testing.T) {
    19  	HELLO := "HELLO"
    20  	portVariable := common.GaugeInternalPortEnvName + "=1234"
    21  	PORT_NAME_WITH_EXTRA_WORD := "b" + common.GaugeInternalPortEnvName
    22  	PORT_NAME_WITH_SPACES := "      " + common.GaugeInternalPortEnvName + "         "
    23  	env := []string{HELLO, common.GaugeInternalPortEnvName + "=", common.GaugeInternalPortEnvName,
    24  		PORT_NAME_WITH_SPACES, PORT_NAME_WITH_EXTRA_WORD}
    25  	want := []string{HELLO, portVariable, portVariable, portVariable, PORT_NAME_WITH_EXTRA_WORD}
    26  	got := getCleanEnv("1234", env, false, []string{})
    27  
    28  	if !reflect.DeepEqual(got, want) {
    29  		t.Errorf("Did not clean env.\n\tWant: %v\n\tGot: %v", want, got)
    30  	}
    31  }
    32  
    33  func TestGetCleanEnvWithDebugging(t *testing.T) {
    34  	env := getCleanEnv("1234", []string{}, true, []string{})
    35  
    36  	if env[1] != "debugging=true" {
    37  		t.Errorf("getCleanEnv failed. Did not add debugging env")
    38  	}
    39  }
    40  
    41  func TestGetCleanEnvAddsToPath(t *testing.T) {
    42  	env := getCleanEnv("1234", []string{"PATH=PATH"}, false, []string{"path1", "path2"})
    43  
    44  	want := "path1" + string(os.PathListSeparator) + "path2"
    45  	if !strings.Contains(env[0], want) {
    46  		t.Errorf("getCleanEnv failed. Did not append to path.\n\tWanted PATH to contain: `%s`", want)
    47  	}
    48  }