code: def test_gdsc_incorrect_type_weight_error(self):
      with self.cached_session():
          with self.assertRaises(ValueError) as cm:
              predicted = tf.constant(
                  [[0, 10], [10, 0], [10, 0], [10, 0]],
                  dtype=tf.float32,
                  name="predicted",
              )
              labels = tf.constant(
                  [1, 0, 0, 0], dtype=tf.int64, name="labels"
              )
              predicted, labels = [
                  tf.expand_dims(x, axis=0) for x in (predicted, labels)
              ]
  
              test_loss_func = LossFunction(
                  2,
                  loss_type="GDSC",
                  loss_func_params={"type_weight": "unknown"},
              )
              one_minus_generalised_dice_score = test_loss_func(
                  predicted, labels
              )
  
imports: from __future__ import absolute_import, print_function
  import numpy
  import tensorflow
  from niftynet.layer.loss_segmentation import LossFunction, labels_to_one_hot
  from tests.niftynet_testcase import NiftyNetTestCase
label_desc: Use image node_id 2 for calling the GeneralisedDiceTest obj's underlying member method code with example usage: obj.test_gdsc_incorrect_type_weight_error() without return types