github.com/peteretelej/iso8583@v0.0.0-20170605053616-4ee92c44e299/server_test.go (about)

     1  package iso8583
     2  
     3  import (
     4  	"io/ioutil"
     5  	"os"
     6  	"path/filepath"
     7  	"strings"
     8  	"testing"
     9  )
    10  
    11  func TestServer(t *testing.T) {
    12  	_, err := WebServer("localhost:9999")
    13  	if err != nil {
    14  		t.Errorf("WebServer returned wrong error value: expected nil, got %v", err)
    15  	}
    16  	tmpdir, err := ioutil.TempDir("", "")
    17  	if err != nil {
    18  		t.Fatalf("unable to get temp dir for testing: %v", err)
    19  	}
    20  	defer func() {
    21  		if err := os.RemoveAll(tmpdir); err != nil {
    22  			t.Fatalf("unable to delete tmpdir: %v", err)
    23  		}
    24  	}()
    25  	if err := os.Mkdir(filepath.Join(tmpdir, "web"), 0755); err != nil {
    26  		t.Fatalf("unable to create web/ in temp dir: %v", err)
    27  	}
    28  	if err := os.Chdir(tmpdir); err != nil {
    29  		t.Fatalf("unable to change into tempdir: %v", err)
    30  	}
    31  	_, err = WebServer("localhost:9999")
    32  	if err == nil {
    33  		t.Fatalf("Webserver returned wrong error value, expected error, got %v", err)
    34  	}
    35  	if !strings.Contains(err.Error(), "missing web/") {
    36  		t.Errorf("Webserver returned wrong error got %v, expected 'missing web/'", err)
    37  	}
    38  }