#!/usr/bin/env bash

set -euxo pipefail

if [[ ! -d "${FUCHSIA_BUILD_DIR}" ]]; then
  echo "FUCHSIA_DIR environment variable not a directory"
  exit 1
fi

GOFMT="${FUCHSIA_BUILD_DIR}/tools/goroot/bin/gofmt"
if [ ! -x "${GOFMT}" ]; then
    echo "error: unable to find gofmt; did the path change?" 1>&2
    exit 1
fi

FIDLC="${FUCHSIA_BUILD_DIR}/host_x64/fidlc"
if [ ! -x "${FIDLC}" ]; then
    echo "error: fidlc missing; did you build?" 1>&2
    exit 1
fi

FIDLGEN="${FUCHSIA_BUILD_DIR}/host_x64/fidlgen"
if [ ! -x "${FIDLGEN}" ]; then
    echo "error: fidlgen missing; did you build?" 1>&2
    exit 1
fi

GIDL="${FUCHSIA_BUILD_DIR}/tools/gidl"
if [ ! -x "${GIDL}" ]; then
    echo "error: gidl missing; did you build?" 1>&2
    exit 1
fi

EXAMPLE_DIR="${FUCHSIA_DIR}/tools/fidl/gidl-conformance-suite"
GO_LIB_DIR="${FUCHSIA_DIR}/third_party/go/src/syscall/zx/fidl/conformance"
GO_TEST_DIR="${FUCHSIA_DIR}/third_party/go/src/syscall/zx/fidl/fidl_test"

# TODO(FIDL-621): Support multiple .gidl sources.
gidl_path="${EXAMPLE_DIR}/conformance.gidl"

tmpout=$( mktemp -d 2>/dev/null || mktemp -d -t 'tmpout' )
trap "rm -rf ${tmpout}" EXIT
json_path=$( mktemp ${tmpout}/tmp.XXXXXXXX )
fidlc_args="--json ${json_path} --files "
for fidl_path in `find "${EXAMPLE_DIR}" -name '*.fidl'`; do
    fidlc_args="${fidlc_args} ${fidl_path}"
done

${FIDLC} ${fidlc_args}

${FIDLGEN} \
    --generators go \
    --json "${json_path}" \
    --output-base "${tmpout}" \
    --include-base "${tmpout}"
cat << EOF > "${GO_LIB_DIR}/impl.go"
// Copyright 2019 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// Code generated by tools/fidl/gidl-conformance-suite/regen.sh; DO NOT EDIT.

// +build fuchsia

EOF
cat "${tmpout}/impl.go" >> "${GO_LIB_DIR}/impl.go"
${GOFMT} -s -w "${GO_LIB_DIR}/impl.go"

cat << EOF > "${GO_TEST_DIR}/conformance_test.go"
// Copyright 2019 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// Code generated by tools/fidl/gidl-conformance-suite/regen.sh; DO NOT EDIT.

// +build fuchsia

EOF
${GIDL} \
    --json "${json_path}" \
    --gidl "${gidl_path}" | ${GOFMT} >> "${GO_TEST_DIR}/conformance_test.go"
