#!/bin/bash # # Copyright 2018 The Bazel Authors. All rights 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 verbosity behavior on workspace initialization CURRENT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" source "${CURRENT_DIR}/../integration_test_setup.sh" \ || { echo "integration_test_setup.sh not found!" >&2; exit 1; } function test_execute() { create_new_workspace cat > BUILD <> repos.bzl <> WORKSPACE < $TEST_log || fail "could not build //:test" executes=`grep "location: .*repos.bzl:2:3" $TEST_log | wc -l` if [ "$executes" -ne "1" ] then fail "Expected exactly 1 occurrence of the given command, got $executes" fi # Cached executions are not replayed bazel build //:test --experimental_workspace_rules_logging=yes &> output || fail "could not build //:test" cat output &> $TEST_log executes=`grep "location: .*repos.bzl:2:3" output | wc -l` if [ "$executes" -ne "0" ] then fail "Expected exactly 0 occurrence of the given command, got $executes" fi } function test_reexecute() { create_new_workspace cat > BUILD <> repos.bzl <> WORKSPACE < $TEST_log || fail "could not build //:test" executes=`grep "location: .*repos.bzl:2:3" $TEST_log | wc -l` if [ "$executes" -le "2" ] then fail "Expected at least 2 occurrences of the given command, got $executes" fi } run_suite "workspaces_tests"