github.com/deemoprobe/k8s-first-commit@v0.0.0-20230430165612-a541f1982be3/src/scripts/test-go.sh (about)

     1  #!/bin/bash
     2  
     3  # Copyright 2014 Google Inc. All rights reserved.
     4  #
     5  # Licensed under the Apache License, Version 2.0 (the "License");
     6  # you may not use this file except in compliance with the License.
     7  # You may obtain a copy of the License at
     8  #
     9  #     http://www.apache.org/licenses/LICENSE-2.0
    10  #
    11  # Unless required by applicable law or agreed to in writing, software
    12  # distributed under the License is distributed on an "AS IS" BASIS,
    13  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    14  # See the License for the specific language governing permissions and
    15  # limitations under the License.
    16  
    17  
    18  set -e
    19  
    20  source $(dirname $0)/config-go.sh
    21  
    22  
    23  find_test_dirs() {
    24    (
    25      cd src/${KUBE_GO_PACKAGE}
    26      find . -not \( \
    27          \( \
    28            -wholename './third_party' \
    29            -o -wholename './release' \
    30            -o -wholename './target' \
    31          \) -prune \
    32        \) -name '*_test.go' -print0 | xargs -0n1 dirname | sort -u
    33    )
    34  }
    35  
    36  
    37  cd "${KUBE_TARGET}"
    38  for package in $(find_test_dirs); do
    39    go test -cover -coverprofile="tmp.out" "${KUBE_GO_PACKAGE}/${package}"
    40  done