Passando parâmetros em testes de trufas

Oct 22 2020

Eu tenho este parâmetro para uma função:

type modify_list is 
| Add of list(address)
| Remove of list(address)

type modify_list_michelson is michelson_or_right_comb(modify_list)

Quando tento fornecer o parâmetro em meus testes de trufas assim:

{ add: [account1, account2], remove: [] }

Eu recebo este erro:

Received 1 arguments while expecting one of the following signatures ([["add","list"],["remove","list"]])

Alguém pode me dizer como fornecer os argumentos corretamente? Tentei simplificar o parâmetro com endereços em vez de uma lista e tentei quase todas as estruturas de dados que pude pensar no teste JS, mas sem sucesso ainda.

Respostas

2 ClaudeBarde Oct 27 2020 at 21:54

A sintaxe correta para o parâmetro é a seguinte: "remove", [account1, account2](2 parâmetros diferentes, nenhum objeto).
Eu construí um contrato simples para emular seu caso, implantei-o e escrevi um pequeno script para testá-lo . Depois de chamar o ponto de entrada de sua escolha, você deve fornecer 2 parâmetros: 1- o campo que deseja definir o valor de união com 2- seus parâmetros (se houver).
Avise-me se tiver outras perguntas :)

1 RoxaneLétourneau Oct 24 2020 at 00:56

Acredito que o erro é você passar os 2 parâmetros (adicionar e remover), mas só deve passar o escolhido. Eu sugiro que você tente:{ add: [account1, account2] }