nucypher/taco-web

Add unit test for findParamWithAuthentication method in Condition class

Offen

#695 geöffnet am 20.08.2025

 (1 Kommentar) (0 Reaktionen) (0 zugewiesene Personen)TypeScript (25 Forks)auto 404
good first issuetesting

Repository-Metriken

Stars
 (35 Sterne)
PR-Merge-Metriken
 (PR-Metriken ausstehend)

Beschreibung

Overview

The findParamWithAuthentication method in the Condition class has a TODO comment indicating it needs to be fixed and tested. Currently, there are no tests for this method.

Context

Located in packages/taco/src/conditions/condition.ts:42-49:

// TODO: Fix this method and add a test for it
public findParamWithAuthentication(): string | null {
  const serialized = toJSON(this.value);
  for (const param of USER_ADDRESS_PARAMS) {
    if (serialized.includes(param)) {
      return param;
    }
  }
  return null;
}

Tasks

  1. Understand what the method is supposed to do (find user address parameters in conditions)
  2. Write comprehensive unit tests covering:
    • Finding various USER_ADDRESS_PARAMS in conditions
    • Returning null when no params are found
    • Edge cases with nested conditions
  3. Fix any issues discovered during testing
  4. Remove the TODO comment once complete

Files to Change

  • Create new test cases in packages/taco/test/conditions/base/condition.test.ts or appropriate test file
  • Update packages/taco/src/conditions/condition.ts if fixes are needed

Test Cases to Include

  • Test with conditions containing :userAddress
  • Test with conditions containing :userAddressExternalWallet
  • Test with conditions containing no user address params
  • Test with nested/compound conditions
  • Test with multiple user address params (should return the first one found)

Definition of Done

  • Comprehensive test suite for findParamWithAuthentication
  • All tests passing
  • TODO comment removed
  • Method behavior documented if any fixes were needed

Contributor Guide