- Renato Penha - Professor orientador
- Victor Hayashi - Professor de programação
Este projeto envolve a implementação de um contrato inteligente em Solidity para gerenciar a idade de uma pessoa. O contrato inclui funcionalidades para definir e obter a idade de uma pessoa, garantindo que apenas o proprietário do contrato possa modificar essa idade.
- Variável de estado
idade
: Representa a idade de uma pessoa, que por padrão é inicializada em 18 anos. - Função
setIdade
: Permite que o proprietário do contrato defina a idade para um novo valor. - Função
getIdade
: Retorna o valor atual da idade armazenada no contrato. - Controle de acesso: Somente o proprietário do contrato pode alterar a idade, garantindo segurança e controle.
ContratoAnac/
contract_Anac.sol
: Contrato inteligente em Solidity para gerenciar a idade.
images/
: Pasta com as imagens dos testesREADME.md
: Documentação do projeto.
- Solidity: Linguagem de programação utilizada para desenvolver o contrato inteligente.
- Remix IDE: Ambiente de desenvolvimento integrado para compilar e implantar contratos inteligentes Solidity.
Os casos de teste foram desenvolvidos para verificar o funcionamento correto do contrato inteligente de gerenciamento de idade.
-
Testar a obtenção da idade padrão:
- Descrição: Após a implantação do contrato, ao chamar a função
getIdade
, deve-se retornar 18, confirmando que a idade padrão está corretamente configurada.
- Descrição: Após a implantação do contrato, ao chamar a função
-
Testar a modificação da idade por um não-dono:
- Descrição: Tentativa de chamar a função
setIdade
de um endereço que não é o dono do contrato. A modificação deve ser negada, preservando a integridade dos dados.
- Descrição: Tentativa de chamar a função
-
Testar a modificação e obtenção da idade pelo dono:
- Descrição: O dono do contrato chama a função
setIdade
para mudar a idade para um novo valor, como 25. Em seguida, ao chamargetIdade
, o contrato deve retornar o novo valor 25, confirmando que a modificação foi bem-sucedida.
- Descrição: O dono do contrato chama a função