code: def test_grad_zca_with_fit(self, device, dtype):
      data = torch.tensor(
          [[2, 0], [0, 1], [-2, 0], [0, -1]], device=device, dtype=dtype
      )
  
      data = utils.tensor_to_gradcheck_var(data)
  
      def zca_fit(x):
          zca = kornia.enhance.ZCAWhitening(detach_transforms=False)
          return zca(x, include_fit=True)
  
      assert gradcheck(zca_fit, (data,), raise_exception=True)
  
imports: import pytest
  import torch
  from torch.autograd import gradcheck
  import kornia
  import kornia.testing
  from kornia.testing import BaseTester
label_desc: Use image node_id 5 for calling the TestZCA obj's underlying member method code with example usage: obj.test_grad_zca_with_fit(device, dtype) and returns: zca