From 15aeef74da9aebc99d7aaea19eec21956ab2b4e8 Mon Sep 17 00:00:00 2001 From: "A. Unique TensorFlower" <gardener@tensorflow.org> Date: Mon, 13 Apr 2020 17:34:49 -0700 Subject: [PATCH] Fixing bug in cast_op test: A case study in the danger of default arguments. PiperOrigin-RevId: 306345213 Change-Id: I2dfdaf0565774f22766b5b0f1633ce3c99d416e4 --- tensorflow/core/kernels/cast_op_test.cc | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/tensorflow/core/kernels/cast_op_test.cc b/tensorflow/core/kernels/cast_op_test.cc index 97d843432bc..c8da7c55ae8 100644 --- a/tensorflow/core/kernels/cast_op_test.cc +++ b/tensorflow/core/kernels/cast_op_test.cc @@ -41,7 +41,7 @@ static Graph* Cast(int num) { class CastOpTest : public OpsTestBase { protected: - void MakeOp(DataType src, DataType dst, bool trunc = false) { + void MakeOp(DataType src, DataType dst, bool trunc) { if (trunc) { TF_EXPECT_OK(NodeDefBuilder("cast_op", "Cast") .Input(FakeInput(src)) @@ -61,10 +61,10 @@ class CastOpTest : public OpsTestBase { } template <typename INPUT, typename OUTPUT> - void CheckCast(bool trunc = false) { + void CheckCast(bool trunc) { DataType in_type = DataTypeToEnum<INPUT>::v(); DataType out_type = DataTypeToEnum<OUTPUT>::v(); - MakeOp(in_type, out_type); + MakeOp(in_type, out_type, trunc); AddInputFromArray<INPUT>(TensorShape({1, 2, 2, 1}), {INPUT(1), INPUT(2), INPUT(3), INPUT(4)}); TF_ASSERT_OK(RunOpKernel()); @@ -75,9 +75,11 @@ class CastOpTest : public OpsTestBase { } }; -#define TEST_CAST(in, out) \ - TEST_F(CastOpTest, TestCast##_##in##_##out) { CheckCast<in, out>(); } \ - TEST_F(CastOpTest, TestCast2##_##in##_##out) { CheckCast<in, out>(true); } +#define TEST_CAST(in, out) \ + TEST_F(CastOpTest, TestCast##_##in##_##out) { CheckCast<in, out>(false); } \ + TEST_F(CastOpTest, TestCastTruncate_##_##in##_##out) { \ + CheckCast<in, out>(true); \ + } #define TEST_ALL_CASTS_FROM(in) \ TEST_CAST(in, uint8); \