def METHOD_NAME(self):
    self.step_name('sigtool run cdiff test')
    # In addition to testing that running a cdiff works, this also tests a regression.
    # Applying test-3.cdiff was failing because UNLINK wasn't properly implemented (since 0.105.0).
    # We didn't notice it because logging wasn't enabled, and leniency in our freshclam cdiff process
    # allowed the test to pass without noticing the bug.
    self.log.warning('VG: {}'.format(os.getenv("VG")))
    (TC.path_tmp / 'run_cdiff').mkdir()
    os.chdir(str(TC.path_tmp / 'run_cdiff'))
    command = '{valgrind} {valgrind_args} {sigtool} --unpack {cvd}'.format(
        valgrind=TC.valgrind, valgrind_args=TC.valgrind_args, sigtool=TC.sigtool,
        cvd=TC.path_source / 'unit_tests' / 'input' / 'freshclam_testfiles' / 'test-1.cvd'
    )
    output = self.execute_command(command)
    assert output.ec == 0  # success
    # Apply 1st cdiff.
    command = '{valgrind} {valgrind_args} {sigtool} --run-cdiff={cdiff}'.format(
        valgrind=TC.valgrind, valgrind_args=TC.valgrind_args, sigtool=TC.sigtool,
        cdiff=TC.path_source / 'unit_tests' / 'input' / 'freshclam_testfiles' / 'test-2.cdiff'
    )
    output = self.execute_command(command)
    # Apply 2nd cdiff. This one failed because the CLOSE operation should create a file
    # if it didn't exist, and it was only appending but not creating.
    command = '{valgrind} {valgrind_args} {sigtool} --run-cdiff={cdiff}'.format(
        valgrind=TC.valgrind, valgrind_args=TC.valgrind_args, sigtool=TC.sigtool,
        cdiff=TC.path_source / 'unit_tests' / 'input' / 'freshclam_testfiles' / 'test-3.cdiff'
    )
    output = self.execute_command(command)
    assert output.ec == 0  # success