nucypher/taco-web

Add unit test for findParamWithAuthentication method in Condition class

オープン

#695 opened on 2025/08/20

 (1 件のコメント) (0 件のリアクション) (0 人の担当者)TypeScript (25 件のフォーク)auto 404
good first issuetesting

Repository metrics

Stars
 (35 個のスター)
PR merge metrics
 (PR metrics pending)

説明

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

コントリビューターガイド