Importação de tabelas
A minha importação de tabelas sobrevive ao que ferramentas reais exportam?
O preset tabular-import monta com um único comando um conjunto inteiro de arquivos de teste
reais para esta pergunta, e um manifest.json ao lado dizendo como seu sistema deve
reagir a cada arquivo. Tudo abaixo é lido do programa, com os valores padrão desta versão.
O que ele costuma encontrar?
- um arquivo com ponto e vírgula lido como uma coluna só, porque o delimitador foi presumido em vez de procurado
- um arquivo CRLF dividido em linhas com uma linha vazia depois de cada uma
- uma tabela sem cabeçalho cuja primeira linha de dados é engolida como nomes de coluna
- uma importação que mantém as colunas que consegue mostrar e descarta o resto sem dizer nada
- um leitor que lê registros JSON uma linha por vez e para no primeiro documento indentado
O que há no conjunto?
Com os valores padrão, como o tfg preset show tabular-import informa:
| Arquivos | 13 |
|---|---|
| Targets na sua receita | 13 |
| Tamanho total | 3 080 060 B |
| Formatos | csv, json, xlsx |
E o que o manifesto desse conjunto espera do seu sistema:
| Esperado | Significado | Arquivos |
|---|---|---|
accept | Seu sistema deve aceitar o arquivo. | 8 |
unspecified | Depende das regras do seu sistema. Você decide e depois confere se o que acontece é o que você queria. | 5 |
O que você pode mudar?
| Configuração | Aceita | Padrão | O que faz |
|---|---|---|---|
--rows |
1 - 200000 linhas | 1000 |
Quantas linhas a planilha tem. Ela é escrita exatamente no tamanho que essas linhas ocupam, então o orçamento acima muda com este valor. |
--columns |
1 - 32768 colunas | 10 |
Quantas colunas cada linha da planilha tem. Linhas vezes colunas tem um teto, e pedir além disso é recusado antes de escrever qualquer coisa. |
Como executar?
Veja quanto o conjunto custaria, monte-o ou pegue a receita dele para editar:
tfg preset show tabular-import
tfg generate --preset tabular-import --out ./tabular-import
tfg preset eject tabular-import > tabular-import.yaml
Ou construa sobre ele em uma receita sua, ao lado dos seus testes:
version: 1
extends: preset:tabular-import