Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pauloanalista/prmtoolkit.argumentsvalidator
prmToolkit É um projeto responsável por dar apoio a outros projetos.
https://github.com/pauloanalista/prmtoolkit.argumentsvalidator
Last synced: about 1 month ago
JSON representation
prmToolkit É um projeto responsável por dar apoio a outros projetos.
- Host: GitHub
- URL: https://github.com/pauloanalista/prmtoolkit.argumentsvalidator
- Owner: pauloanalista
- Created: 2017-05-02T23:12:54.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2022-06-22T18:16:13.000Z (over 2 years ago)
- Last Synced: 2023-02-28T22:36:32.487Z (almost 2 years ago)
- Language: C#
- Size: 326 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# prmToolkit
# ArgumentsValidator
Classe responsável por gerenciar validações de argumentos.Podemos realizar validações indivíduais ou em grupos.
É possível levantar uma exceção ou captura-las.
### Installation - ArgumentsValidator
Para instalar, abra o prompt de comando Package Manager Console do seu Visual Studio e digite o comando abaixo:
Para adicionar somente a referencia a dll
```sh
Install-Package prmToolkit.ArgumentsValidator
```Para adicionar somente as classes
```sh
Install-Package prmToolkit.ArgumentsValidator-Source
```
### Exemplo de como usar```sh
namespace prmToolkit.Test
{
[TestClass]
public class ValidationTest
{
///
/// Este método captura as mensagens das exceções lançadas pelos argumentos
/// mas não é lançada uma exceção para o usuário
///
[TestMethod]
public void ObterListaDeMensagensDasExcecoes()
{
List result = ArgumentsValidator.GetMessagesFromExceptions(
RaiseException.IfNull(null, "object is required"),
RaiseException.IfNotEmail("email_invalid", "email invalid")
);Assert.IsNotNull(result, "object required");
Assert.IsTrue(result.Count == 2, "There should be two exceptions");
}
///
/// Este método captura as exceções lançadas pelos os argumentos
/// mas não é lançada uma exceção para o usuário
///
[TestMethod]
public void ObterListaDeExecoesSemLancar()
{
List result = ArgumentsValidator.GetExceptionList(
RaiseException.IfNull(null, "object is required"),
RaiseException.IfNotEmail("email_invalid", "email invalid")
);Assert.IsNotNull(result, "object required");
Assert.IsTrue(result.Count == 2, "There should be two exceptions");
}///
/// Este método lança uma única exceção, com as mensagens das exceções geradas pelos os argumentos
///
[TestMethod]
public void LancarUnicaExcecaoComMensagensDoGrupoDeExcecoes()
{
try
{
ArgumentsValidator.RaiseExceptionOfInvalidArguments(
RaiseException.IfNull(null, "object is required"),
RaiseException.IfNotEmail("email_invalid", "email invalid")
);
}
catch (Exception ex)
{Assert.IsTrue(ex.Message.Contains("object is required") && ex.Message.Contains("email invalid"), "There should be two exceptions");
}
}///
/// Este método lança uma única exceção, com uma única mensagem que represanta as exceções geradas pelos os argumentos
///
[TestMethod]
public void LancarUnicaExcecaoComUnicaMensagemDoGrupoDeExcecoes()
{
try
{
bool existe = true;ArgumentsValidator.RaiseExceptionOfInvalidArguments("Dados inválidos",
RaiseException.IfTrue(existe),
RaiseException.IfNotEmail("paulo.com.br")
);}
catch (Exception ex)
{Assert.IsTrue(ex.Message.Contains("Dados inválidos"), "There should be two exceptions");
}
}///
/// Este método lança uma exceção indivídual para o usuário
///
[TestMethod]
public void LancarExcecaoIndividual()
{
try
{
RaiseException.IfNotNull(null, "object is required", true);
}
catch (Exception ex)
{
Assert.AreEqual(ex.Message, "object is required", "is expected value not null");
}
}
}
}```
# VEJA TAMBÉM
## Grupo de Estudo no Telegram
- [Participe gratuitamente do grupo de estudo](https://t.me/blogilovecode)## Cursos baratos!
- [Meus cursos](https://olha.la/udemy)## Novidades, cupons de descontos e cursos gratuitos
https://olha.la/ilovecode-receber-cupons-novidades