docstr: Tests the put payoff function for a batch of strikes.
code: def test_put_payoff_function(self, dtype):
      """Tests the put payoff function for a batch of strikes."""
      # Create payoff functions for 2 different strike values
      payoff_fn = lsm_algorithm.make_basket_put_payoff(
          [1.1, 1.2], dtype=dtype
      )
      sample_paths = tf.convert_to_tensor(_SAMPLES, dtype=dtype)
      sample_paths = tf.expand_dims(sample_paths, -1)
      # Actual payoff
      payoff = payoff_fn(sample_paths, 3)
      # Expected payoffs at the final time
      expected_payoff = [
          [0, 0],
          [0, 0],
          [0.07, 0.17],
          [0.18, 0.28],
          [0, 0],
          [0.2, 0.3],
          [0.09, 0.19],
          [0, 0],
      ]
      self.assertAllClose(expected_payoff, payoff, rtol=1e-6, atol=1e-6)
  
file_path: tf-quant-finance/tf_quant_finance/models/longstaff_schwartz/payoff_utils_test.py
imports: from absl.testing import parameterized
  import numpy
  import tensorflow.compat.v2
  import tf_quant_finance
  from tensorflow.python.framework import test_util
label_desc: Use image node_id 1 for calling the PayoffTest obj's underlying member method code with example usage: obj.test_put_payoff_function(dtype) without return types