Complementizer makes it easy to create and fill out automated forms for interactions with APIs.
Project description
Complementizer 🛠️
Autor: Ismael Guedes
O Complementizer facilita a criação e preenchimento de formulários automatizados para interações com APIs. Vamos analisar os diferentes componentes e seu funcionamento.
Instalação
pip install complementizer
1. Complementizer Class 🔑
-
Complementizeré uma classe que se conecta a uma API e autentica o usuário. Se a API requer um token de autenticação, ela faz uma requisição para obter o token e o armazena.-
Atributos principais:
url_base: URL base da API. 🌐usernameepassword: Credenciais de autenticação. 🔐has_tokenepath_auth: Determina se a autenticação requer um token e o caminho da autenticação. 📜
-
Método
populate:- Este método envia uma requisição POST para um endpoint específico, utilizando os dados gerados a partir de um formulário (
Form). Ele imprime os dados gerados e a resposta da API. 📨
- Este método envia uma requisição POST para um endpoint específico, utilizando os dados gerados a partir de um formulário (
-
2. Form Class 📝
-
Formé uma classe que representa um formulário vinculado a uma tabela específica. Ela utiliza a bibliotecaFakerpara gerar dados fictícios (como nomes, endereços, etc.) conforme o tipo do campo (TypeField).-
Método
createField:- Cria um campo no formulário com base no tipo (
TypeField) e outros parâmetros opcionais (info). O método retorna o campo criado. ✏️
- Cria um campo no formulário com base no tipo (
-
Método
createDefault:- Cria um campo com valor padrão que não depende de geração de dados fictícios. 🏷️
-
Método
createDependency:- Cria uma dependência que busca dados a partir de uma API e armazena os valores possíveis. 🔄
-
Método
generate:- Gera um dicionário com os dados de todos os campos, padrões e dependências do formulário. 📊
-
3. Field Class 📋
-
Fieldrepresenta um campo no formulário, comonome_completo,cpf,data_nascimento, etc. A classe utiliza a bibliotecaFakerpara gerar valores para esses campos dependendo do tipo (TypeField).- Construtor:
- O campo é inicializado com um nome, tipo e um valor gerado automaticamente pelo
Faker, dependendo do tipo do campo (ex.: nome, endereço, CPF, etc.). ⚙️
- O campo é inicializado com um nome, tipo e um valor gerado automaticamente pelo
- Construtor:
4. TypeField Enum 🔢
TypeFieldé um enumerador que define os diferentes tipos de campos que podem ser gerados no formulário, comoNAME_FULL,ADDRESS,DATE_OF_BIRTH,CPF, etc. 📋
5. Uso do Complementizer 🚀
No código principal:
-
Instância de
Complementizer:- Cria uma instância de
Complementizerque conecta a uma API. 🌐
- Cria uma instância de
-
Laço
for:- Para cada iteração, cria um novo formulário (
Form) para a tabelaparticipante. 📝 - Adiciona diversos campos ao formulário, como
nome_completo,cpf,data_nascimento, etc. 📋 - Usa a função
populatepara enviar os dados gerados para a API. 📤
- Para cada iteração, cria um novo formulário (
Resumo 📑
Este código é projetado para automatizar o preenchimento e envio de formulários para uma API. Ele facilita a criação de dados fictícios para testes, gerenciamento de dependências entre campos, e autenticação da API, tornando-o útil para cenários onde é necessário simular múltiplas submissões de formulários com dados variados. ✅
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for complementizer-1.2.2-py3-none-any.whl
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 | ed73ebe69aa18f39a87aa74ece8cf0e7695d5cb200b69fb0cf81199c69648e66 |
|
| MD5 | d42076db714c579db835e2a2e3c97a48 |
|
| BLAKE2b-256 | 4e0f7179a856af6c6c16dcb3c80af029378322c4e20a35a84f86e6724ca7bd04 |