Skip to content

Conversation

@GSpaki
Copy link

@GSpaki GSpaki commented Jun 29, 2023

Description

When setting arguments using RedirectRoute, a ModularArguments is passed instead of the actual argument.

This caused the following error:
The following _TypeError was thrown building Builder:
type 'ModularArguments' is not a subtype of type 'XPTO'

Checklist

  • The title of my PR starts with a Conventional Commit prefix (fix:, feat:, docs: etc).
  • I have read the Contributor Guide and followed the process outlined for submitting PRs.
  • I have updated/added tests for ALL new/updated/fixed functionality.
  • I have updated/added relevant documentation in docs and added dartdoc comments with ///.
  • I have updated/added relevant examples in examples.

Breaking Change

  • Yes, this is a breaking change.
  • No, this is not a breaking change.

Related Issues

@toshiossada
Copy link
Contributor

não entendi a modificaçao, so mudou o nome da variavel?
image

@GSpaki
Copy link
Author

GSpaki commented Jul 6, 2023

não entendi a modificaçao, so mudou o nome da variavel? image

@toshiossada
Não, mudei de arguments pra modularArguments pra tentar deixar um pouco mais claro que não é o argumento propriamente dito, esse fica no modularArguments.data.

O select route espera o argumento da rota, não o modularArgument
Por exemplo, se usasse uma string de argumento junto com o redirectRoute, não era passada para rota a string em si, mas um modularArguments com um .data com a string

O que daria erro ao tratar o argumento => type 'ModularArguments' is not a subtype of type 'String'

Por isso no selectRoute agora passa modularArguments.data em vez de apenas modularArguments

@toshiossada
Copy link
Contributor

pode criar um test para esse cenário?

@GSpaki
Copy link
Author

GSpaki commented Jul 7, 2023

pode criar um test para esse cenário?

Eu tentei kkkkk
Eu não compreendo bem o funcionamento do modular pra criar um teste que verifique o parâmetro usando o RedirectRoute. No caso de teste que eu modifiquei, estava mockado o retorno do getArgument.
Precisaria usar o redirectRoute e pegar o argumento real passado, sem mock

Foi mal pela falta da descrição melhor e do teste, eu nunca tinha tentado contribuir pra um package.
Vou tentar ver dnv se consigo o caso de teste

@jacobaraujo7 jacobaraujo7 merged commit f7c3201 into Flutterando:master Jul 30, 2023
@GSpaki
Copy link
Author

GSpaki commented Oct 19, 2023

@jacobaraujo7 isso ainda entra no modular 5? Ou entrou no 6?
Talvez eu tenha apontado pro lugar errado o merge.
Tô com um projeto que precisaria disso

@allanwolski
Copy link

This is not working with dynamic routes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants