Skip to content

Add unit test for findParamWithAuthentication method in Condition class #695

@theref

Description

@theref

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions