(self, true_fn, false_fn, train_vals, feed_dict=None)
| 51 | class CondV2Test(test.TestCase): |
| 52 | |
| 53 | def _testCond(self, true_fn, false_fn, train_vals, feed_dict=None): |
| 54 | if not feed_dict: |
| 55 | feed_dict = {} |
| 56 | with self.session(graph=ops.get_default_graph()) as sess: |
| 57 | pred = array_ops.placeholder(dtypes.bool, name="pred") |
| 58 | |
| 59 | expected = control_flow_ops.cond( |
| 60 | array_ops.squeeze_v2(pred), true_fn, false_fn, name="expected") |
| 61 | actual = cond_v2.cond_v2(pred, true_fn, false_fn, name="actual") |
| 62 | |
| 63 | expected_grad = gradients_impl.gradients(expected, train_vals) |
| 64 | actual_grad = gradients_impl.gradients(actual, train_vals) |
| 65 | |
| 66 | sess_run_args = {pred: True} |
| 67 | sess_run_args.update(feed_dict) |
| 68 | expected_val, actual_val, expected_grad_val, actual_grad_val = sess.run( |
| 69 | (expected, actual, expected_grad, actual_grad), sess_run_args) |
| 70 | self.assertEqual(expected_val, actual_val) |
| 71 | self.assertEqual(expected_grad_val, actual_grad_val) |
| 72 | |
| 73 | sess_run_args = {pred: [[True]]} |
| 74 | sess_run_args.update(feed_dict) |
| 75 | expected_val, actual_val, expected_grad_val, actual_grad_val = sess.run( |
| 76 | (expected, actual, expected_grad, actual_grad), sess_run_args) |
| 77 | self.assertEqual(expected_val, actual_val) |
| 78 | self.assertEqual(expected_grad_val, actual_grad_val) |
| 79 | |
| 80 | sess_run_args = {pred: False} |
| 81 | sess_run_args.update(feed_dict) |
| 82 | expected_val, actual_val, expected_grad_val, actual_grad_val = sess.run( |
| 83 | (expected, actual, expected_grad, actual_grad), sess_run_args) |
| 84 | self.assertEqual(expected_val, actual_val) |
| 85 | self.assertEqual(expected_grad_val, actual_grad_val) |
| 86 | |
| 87 | sess_run_args = {pred: [[False]]} |
| 88 | sess_run_args.update(feed_dict) |
| 89 | expected_val, actual_val, expected_grad_val, actual_grad_val = sess.run( |
| 90 | (expected, actual, expected_grad, actual_grad), sess_run_args) |
| 91 | self.assertEqual(expected_val, actual_val) |
| 92 | self.assertEqual(expected_grad_val, actual_grad_val) |
| 93 | |
| 94 | @test_util.run_deprecated_v1 |
| 95 | def testBasic(self): |
no test coverage detected