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. 🌐username
epassword
: Credenciais de autenticação. 🔐has_token
epath_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 bibliotecaFaker
para 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 📋
-
Field
representa um campo no formulário, comonome_completo
,cpf
,data_nascimento
, etc. A classe utiliza a bibliotecaFaker
para 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
Complementizer
que 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
populate
para 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
File details
Details for the file complementizer-1.2.2.tar.gz
.
File metadata
- Download URL: complementizer-1.2.2.tar.gz
- Upload date:
- Size: 5.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 23ab10fdd9fe6b54029cdd770a630e290814fb0a3f86da7e03e997c622fe87de |
|
MD5 | 45df5218114010bca0874844a32236c1 |
|
BLAKE2b-256 | 0424e4c7bca6863fb0efc9633c7cdec4c48e77e4f5bfb3f0c8015e5a2e3d7f73 |
File details
Details for the file complementizer-1.2.2-py3-none-any.whl
.
File metadata
- Download URL: complementizer-1.2.2-py3-none-any.whl
- Upload date:
- Size: 6.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ed73ebe69aa18f39a87aa74ece8cf0e7695d5cb200b69fb0cf81199c69648e66 |
|
MD5 | d42076db714c579db835e2a2e3c97a48 |
|
BLAKE2b-256 | 4e0f7179a856af6c6c16dcb3c80af029378322c4e20a35a84f86e6724ca7bd04 |