diff options
author | Kristina Chodorow <kchodorow@google.com> | 2016-03-23 21:20:22 +0000 |
---|---|---|
committer | Damien Martin-Guillerez <dmarting@google.com> | 2016-03-24 10:31:46 +0000 |
commit | 96df361ac0fe25d908515234bff944bad3269216 (patch) | |
tree | c477e47b57f6d998a1cddc9bc981e2ee1e29e450 /src/test/shell/bazel/bazel_go_example_test.sh | |
parent | 1325cc1ba2f5e9318df8d673bab4f440c595cac0 (diff) |
Remove deprecated Skylark rules
--
MOS_MIGRATED_REVID=117968196
Diffstat (limited to 'src/test/shell/bazel/bazel_go_example_test.sh')
-rwxr-xr-x | src/test/shell/bazel/bazel_go_example_test.sh | 283 |
1 files changed, 0 insertions, 283 deletions
diff --git a/src/test/shell/bazel/bazel_go_example_test.sh b/src/test/shell/bazel/bazel_go_example_test.sh deleted file mode 100755 index f4dd395321..0000000000 --- a/src/test/shell/bazel/bazel_go_example_test.sh +++ /dev/null @@ -1,283 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 The Bazel Authors. All arights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# Tests the examples provided in Bazel -# - -# Load test environment -source $(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/test-setup.sh \ - || { echo "test-setup.sh not found!" >&2; exit 1; } - -function setup_go() { - copy_examples - - GO_REPO=$PWD/tools/build_rules/go/toolchain - - cat <<EOF > WORKSPACE -new_local_repository( - name = "bazel_tools", - path = __workspace_dir__, - build_file = __workspace_dir__ + "/BUILD", -) -new_local_repository( - name = "golang_linux_amd64", - path = "$GO_REPO", - build_file = "$GO_REPO/BUILD" -) -new_local_repository( - name = "golang_darwin_amd64", - path = "$GO_REPO", - build_file = "$GO_REPO/BUILD" -) -EOF - - # avoid trying to download the SDK from within the test. - rm -rf tools/build_rules/go/toolchain - for p in golang_linux_amd64 golang_darwin_amd64 ; do - d=$TEST_SRCDIR/external/${p} - if [[ -d "${d}" ]]; then - for f in $(cd ${d}; find -L . -type f -print ) ; do - mkdir -p tools/build_rules/go/toolchain/$(dirname $f) - ln -s ${d}/$f tools/build_rules/go/toolchain/$f - done - fi - done - cat <<'EOF' >tools/build_rules/go/toolchain/BUILD -package( - default_visibility = [ "//visibility:public" ]) - -filegroup( - name = "toolchain", - srcs = glob(["go/bin/*", "go/pkg/**", ]), -) - -filegroup( - name = "go_tool", - srcs = [ "go/bin/go" ], -) -EOF - cat <<EOF > BUILD -load("/tools/build_rules/go/def", "go_prefix") -go_prefix("prefix") -EOF - -} - -function test_basic() { - setup_go - mkdir -p ex/ - cat <<EOF > ex/m.go -package main -import ( - "fmt" - - "prefix/ex" -) -func main() { - fmt.Println("F", ex.F()) -} - -EOF - cat <<EOF > ex/l.go -package ex -func F() int { return 42 } -EOF - - cat <<EOF > ex/BUILD -load("/tools/build_rules/go/def", "go_library", "go_binary") -go_library(name = "go_default_library", - srcs = [ "l.go"]) -go_binary(name = "m", - srcs = [ "m.go" ], - deps = [ ":go_default_library" ]) -EOF - - assert_build //ex:m - test -x ./bazel-bin/ex/m || fail "binary not found" - (./bazel-bin/ex/m > out) || fail "binary does not execute" - grep "F 42" out || fail "binary output suspect" -} - -function test_runfiles() { - setup_go - mkdir -p ex/ - -# Note this binary is also a test (for the correct handling of runfiles by -# Bazel's go_binary rule). - cat <<EOF > ex/rf.go -package main -import ( - "fmt" - "log" - "io/ioutil" -) - -func main() { - rfcontent, err := ioutil.ReadFile("ex/runfile") - if err != nil { - log.Fatalf("Runfiles test binary: Error reading from runfile: %v", err) - } - - fmt.Printf("Runfile: %s\n", rfcontent) -} - -EOF - - cat <<EOF > ex/rf_test.go -package main -import ( - "fmt" - "io/ioutil" - "testing" -) - -func TestRunfiles(t *testing.T) { - rfcontent, err := ioutil.ReadFile("runfile") - if err != nil { - t.Errorf("TestRunfiles: Error reading from runfile: %v", err) - } - - if string(rfcontent) != "12345\n" { - t.Errorf("TestRunfiles: Read incorrect value from runfile: %s", rfcontent) - } - - fmt.Printf("Runfile: %s\n", rfcontent) -} -EOF - - cat <<EOF > ex/runfile -12345 -EOF - - cat <<EOF > ex/BUILD -load("/tools/build_rules/go/def", "go_binary", "go_test") -go_binary(name = "runfiles_bin", - srcs = [ "rf.go" ], - data = [ "runfile" ]) -go_test(name = "runfiles_test", - srcs = [ "rf_test.go" ], - data = [ "runfile" ]) -EOF - - assert_build //ex:runfiles_bin - test -x ./bazel-bin/ex/runfiles_bin || fail "binary not found" - (./bazel-bin/ex/runfiles_bin > out) || fail "binary does not execute" - grep "Runfile: 12345" out || fail "binary output suspect" - - assert_build //ex:runfiles_test - test -x ./bazel-bin/ex/runfiles_test || fail "binary not found" - (./bazel-bin/ex/runfiles_test > out) || fail "binary does not execute" - grep "Runfile: 12345" out || fail "binary output suspect" -} - -function test_runfiles_lib() { - setup_go - mkdir -p ex/ - cat <<EOF > ex/m.go -package main -import ( - "fmt" - "io/ioutil" - "log" - - "prefix/ex" -) -func main() { - rfcontent, err := ioutil.ReadFile(ex.RunfilePath()) - if err != nil { - log.Fatalf("Runfiles test binary: Error reading from runfile: %v", err) - } - - fmt.Printf("Runfile: %s\n", rfcontent) -} - -EOF - - cat <<EOF > ex/l.go -package ex -func RunfilePath() string { return "ex/runfile" } -EOF - - cat <<EOF > ex/runfile -12345 -EOF - - cat <<EOF > ex/BUILD -load("/tools/build_rules/go/def", "go_library", "go_binary") -go_library(name = "go_default_library", - data = [ "runfile" ], - srcs = [ "l.go"]) -go_binary(name = "m", - srcs = [ "m.go" ], - deps = [ ":go_default_library" ]) -EOF - - assert_build //ex:m - test -x ./bazel-bin/ex/m || fail "binary not found" - (./bazel-bin/ex/m > out) || fail "binary does not execute" - grep "Runfile: 12345" out || fail "binary output suspect" -} - - -function test_empty_prefix() { - setup_go - - cat <<EOF > BUILD -load("/tools/build_rules/go/def", "go_prefix") -go_prefix("") -EOF - - rm -rf ex - mkdir -p ex/ - cat <<EOF > ex/m.go -package main -import ( - "fmt" - - "library" -) -func main() { - fmt.Println(library.F()) -} -EOF - cat <<EOF > ex/BUILD -load("/tools/build_rules/go/def", "go_library", "go_binary") -go_binary(name = "m", - srcs = [ "m.go" ], - deps = [ "//library:go_default_library" ]) -EOF - - mkdir -p library - - cat <<EOF > library/BUILD -package(default_visibility=["//visibility:public"]) -load("/tools/build_rules/go/def", "go_library", "go_binary") -go_library(name = "go_default_library", - srcs = [ "l.go"]) -EOF - - cat <<EOF > library/l.go -package library -func F() int { return 42 } -EOF - - assert_build //ex:m - test -x ./bazel-bin/ex/m || fail "binary not found" - (./bazel-bin/ex/m > out) || fail "binary does not execute" - grep "42" out || fail "binary output suspect" -} - -run_suite "go_examples" |