#!/bin/bash -e
# checkTools.sh
#
# Check tools

required_node=$(<.node-version)
required_yarn=$(<.yarn-version)
required_xcode=$(<.xcode-version)

current_node=$(node -v)
current_yarn=$(yarn -v)
current_xcode=$(xcodebuild -version | grep 'Xcode' | sed 's/Xcode //')

if [[ $current_node != *"$required_node"* ]]; then
  echo "Error: Node version mismatch. Expected to find version $required_node, got $current_node."
  exit 1
fi

# if [[ $current_yarn != *"$required_yarn"* ]]; then
#   echo "Error: Yarn version mismatch. Expected to find version $required_yarn, got $current_yarn."
#   exit 1
# fi

if [[ $current_xcode != $required_xcode ]]; then
  echo "Error: Xcode version mismatch. Expected $required_xcode, got $current_xcode."
  exit 1
fi

if command -v pod &>/dev/null && brew list cocoapods &>/dev/null 2>&1; then
  echo "Warning: CocoaPods is installed via Homebrew. This project manages CocoaPods through Bundler (bundle exec pod) — the Homebrew version will be ignored, but it may cause confusion. Consider running: brew uninstall cocoapods"
fi

echo "Correct tools are installed"

# TODO: need to test on every team member machine and on Jenkins
#required_ruby=$(<.ruby-version)
#required_bundle=$(<.bundle-version)
#required_java=$(<.java-version)
#
#current_ruby=$(ruby --version)
#current_bundle=$(bundle -v)
#current_java=$(java -version 2>&1 | awk -F '"' '/version/ {print $2}')
#
#if [[ $current_ruby != *"$required_ruby"* ]]; then
#  echo "Error: Ruby version mismatch. Expected to find version $required_ruby, got $current_ruby."
#  exit 1
#fi
#
#if [[ $current_bundle != *"$required_bundle"* ]]; then
#  echo "Error: Bundle version mismatch. Expected to find version $required_bundle, got $current_bundle."
#  exit 1
#fi
#
#if [[ $current_java != *"$required_java"* ]]; then
#  echo "Error: Java version mismatch. Expected to find version $required_java, got $current_java."
#  exit 1
#fi
