xref: /aosp_15_r20/external/grpc-grpc/src/objective-c/tests/build_tests.sh (revision cc02d7e222339f7a4f6ba5f422e6413f4bd931f2)
1*cc02d7e2SAndroid Build Coastguard Worker#!/bin/bash
2*cc02d7e2SAndroid Build Coastguard Worker# Copyright 2015 gRPC authors.
3*cc02d7e2SAndroid Build Coastguard Worker#
4*cc02d7e2SAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License");
5*cc02d7e2SAndroid Build Coastguard Worker# you may not use this file except in compliance with the License.
6*cc02d7e2SAndroid Build Coastguard Worker# You may obtain a copy of the License at
7*cc02d7e2SAndroid Build Coastguard Worker#
8*cc02d7e2SAndroid Build Coastguard Worker#     http://www.apache.org/licenses/LICENSE-2.0
9*cc02d7e2SAndroid Build Coastguard Worker#
10*cc02d7e2SAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software
11*cc02d7e2SAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS,
12*cc02d7e2SAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13*cc02d7e2SAndroid Build Coastguard Worker# See the License for the specific language governing permissions and
14*cc02d7e2SAndroid Build Coastguard Worker# limitations under the License.
15*cc02d7e2SAndroid Build Coastguard Worker
16*cc02d7e2SAndroid Build Coastguard Worker# Don't run this script standalone. Instead, run from the repository root:
17*cc02d7e2SAndroid Build Coastguard Worker# ./tools/run_tests/run_tests.py -l objc
18*cc02d7e2SAndroid Build Coastguard Worker
19*cc02d7e2SAndroid Build Coastguard Workerset -ex
20*cc02d7e2SAndroid Build Coastguard Worker
21*cc02d7e2SAndroid Build Coastguard Worker# CocoaPods requires the terminal to be using UTF-8 encoding.
22*cc02d7e2SAndroid Build Coastguard Workerexport LANG=en_US.UTF-8
23*cc02d7e2SAndroid Build Coastguard Worker
24*cc02d7e2SAndroid Build Coastguard Workercd "$(dirname "$0")"
25*cc02d7e2SAndroid Build Coastguard Worker
26*cc02d7e2SAndroid Build Coastguard Worker# Check that required tools are available.
27*cc02d7e2SAndroid Build Coastguard Workerhash pod 2>/dev/null || { echo >&2 "Cocoapods needs to be installed."; exit 1; }
28*cc02d7e2SAndroid Build Coastguard Workerhash xcodebuild 2>/dev/null || {
29*cc02d7e2SAndroid Build Coastguard Worker    echo >&2 "XCode command-line tools need to be installed."
30*cc02d7e2SAndroid Build Coastguard Worker    exit 1
31*cc02d7e2SAndroid Build Coastguard Worker}
32*cc02d7e2SAndroid Build Coastguard Worker
33*cc02d7e2SAndroid Build Coastguard Worker# clean pod cache and prior pods
34*cc02d7e2SAndroid Build Coastguard Workerrm -Rf Pods Podfile.lock Tests.xcworkspace
35*cc02d7e2SAndroid Build Coastguard Workerrm -f RemoteTestClient/*.{h,m}
36*cc02d7e2SAndroid Build Coastguard Workerpod cache clean --all
37*cc02d7e2SAndroid Build Coastguard Worker
38*cc02d7e2SAndroid Build Coastguard Workertime pod install --verbose
39*cc02d7e2SAndroid Build Coastguard Worker
40*cc02d7e2SAndroid Build Coastguard Worker# verify pod header installation
41*cc02d7e2SAndroid Build Coastguard Workerif [ -d "./Pods/Headers/Public/gRPC-Core/grpc/impl/codegen" ]
42*cc02d7e2SAndroid Build Coastguard Workerthen
43*cc02d7e2SAndroid Build Coastguard Worker    echo "grpc/impl/codegen/ has been imported."
44*cc02d7e2SAndroid Build Coastguard Worker    number_of_files=$(find Pods/Headers/Public/gRPC-Core/grpc/impl/codegen -name "*.h" | wc -l)
45*cc02d7e2SAndroid Build Coastguard Worker    echo "The number of files in Pods/Headers/Public/gRPC-Core/grpc/impl/codegen/ is $number_of_files"
46*cc02d7e2SAndroid Build Coastguard Workerelse
47*cc02d7e2SAndroid Build Coastguard Worker    echo "Error: grpc/impl/codegen/ hasn't been imported."
48*cc02d7e2SAndroid Build Coastguard Workerfi
49