Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FEA] Programa para criar interfaces para o programa geomodel #4

Closed
Dirack opened this issue Mar 23, 2020 · 0 comments · Fixed by #5 or #11
Closed

[FEA] Programa para criar interfaces para o programa geomodel #4

Dirack opened this issue Mar 23, 2020 · 0 comments · Fixed by #5 or #11
Assignees
Labels
enhancement New feature or request

Comments

@Dirack
Copy link
Collaborator

Dirack commented Mar 23, 2020

🎉 Solicitar nova Feature

Sua solicitação de nova feature está relacionada a algum problema?

Uma clara e concisa descrição de qual problema é.

Descreva qual a solução que você gostaria

Uma clara e concisa descrição sobre oque você quer que aconteça.

Descreva as alternativas de solução que você considera

Uma clara e concisa descrição das alternativas de soluções ou features que você considerou
para o problema proposto

Adione contexto

Adicione o contexto ao qual sua nova feature se aplica e, se necessário
adicione imagens descritivas aqui.

@Dirack Dirack added the enhancement New feature or request label Mar 23, 2020
@Dirack Dirack added this to the proSU v1.0-beta.1 milestone Mar 23, 2020
@Dirack Dirack self-assigned this Mar 23, 2020
Dirack added a commit that referenced this issue Mar 23, 2020
A opção '-a' do programa interfaceBuilder serve para adicionar
interfaces a um arquivo .itf no formato lido pelo trimodel. O arquivo de
interfaces deve existir previamente. O programa cria um arquivo
temporário a partir do arquivo pré existente e adiciona a nova interface
seguindo o formato adequado.

Por fim substitui o arquivo antigo pela nova versão criada, com uma
interface a mais adicionada a pilha de interfaces.
Dirack added a commit that referenced this issue Mar 23, 2020
Dirack added a commit that referenced this issue Mar 23, 2020
A opção -s do programa interfaceBuilder permite ver as interfaces e
camadas descritas no arquivo '.itf' de maneira mais amigável.
Dirack added a commit that referenced this issue Mar 23, 2020
A correta remoção da interface envolve a remoção de 3 linhas que a
descrevem, isto é de LINHA_IN (linha inicial da descrição da interface)
até LINHA_OUT=LINHA_IN+2 (linha final da descrição da interface).

O bug ocorreu pela utilização de LINHA_OUT=LINHA_IN+3, oque resultou em
apagar uma linha extra que descrevia as camadas.
Dirack added a commit that referenced this issue Mar 23, 2020
A opção '-r' não permite a remoção da última interface da pilha no
arquivo de interfaces. Esta primeira interface é a própria superfície de
aquisição e não faria sentido remover tal interface. Por isto o programa
sugere ao usuário que crie um novo modelo
Dirack added a commit that referenced this issue Mar 23, 2020
A opção '-c' permite ao usuário criar um novo modelo do zero. O programa
interfaceBuilder verifica se o usuário forneceu o nome de arquivo de
modelo e se este já existe, para não permitir sobreescrever modelos já
existentes.

Depois o programa pede ao usuário as informações básicas do modelo, como
dimensão e parâmetros de plotagem e gera o arquivo .itf correspondente
com a primeira interface (A primeira interface é a superfície de
aquisição).
Dirack added a commit that referenced this issue Mar 23, 2020
Quando tem apenas uma interface no arquivo de interfaces lido pelo
programa interfaceBuilder, não é possível exibir informação sobre
camadas (precisa de no mínimo duas interfaces para formar uma camada).

Este commit adapta a lógica do programa para este caso
Dirack added a commit that referenced this issue Mar 23, 2020
O comando sed estava interpretando incorretamente a regex de
substituição, retirar o caractere '$' da regex impede a interpretação
da barra '/' de fechamento como parte da variável. Basta o conjunto '.*'
para fazer referência a qualquer conjunto de caracteres depois de
'kedge='
@Dirack Dirack mentioned this issue Mar 23, 2020
4 tasks
@Dirack Dirack linked a pull request Mar 23, 2020 that will close this issue
4 tasks
Dirack added a commit that referenced this issue Apr 3, 2020
Roda os testes automáticos para o programa interfaceBuilder. No futuro
será integrado ao Travis CI para deploy automatizado das versões desta
biblioteca
Dirack added a commit that referenced this issue Apr 3, 2020
A biblioteca tdd_lib.sh possui funções para testes simples de verificação de
condições 'error' e para verificação de instalação de listas de arquivos em
'verificaInstalacao'.
Dirack added a commit that referenced this issue Apr 3, 2020
Pasta com arquivos no formato ITF lido pelo programa interfaceBuilder
Dirack added a commit that referenced this issue Apr 3, 2020
A opção -c de interfaceBuilder agora é não interativa, pois tal abordagem
prejudica a lógica dos testes automatizados. Todos os parâmetros são
passados pela linha de comandos
Dirack added a commit that referenced this issue Apr 3, 2020
A variável DIR serve para garantir que o teste possa ser realizado tanto
de dentro da pasta TDD, chamando '../interfaceBuilder_tdd.sh' quanto de dentro
da pasta da proSU, chamando './interfaceBuilder_tdd.sh'.

O teste cria um modelo em um arquivo temporário e apaga ao sair o script de teste
ou ao atingir algum erro fatal
Dirack added a commit that referenced this issue Apr 3, 2020
Testa a opção -a para adicionar interfaces a um modelo ITF. Este teste
adiciona 7 interfaces em um looping, utilizando os arrays xedge, zedge e
sfill para adicionar uma interface por vez ao modelo
Dirack added a commit that referenced this issue Apr 3, 2020
Testa a opção -r que remove uma interface da pilha, e a opção -s que
permite visualizar informações sobre o modelo. Estas opções podem ser
combinadas em um teste que armazena o número de interfaces antes da
remoção e compara com o número de interfaces depois da remoção
Dirack added a commit that referenced this issue Apr 4, 2020
Estes manuais de uso são lidos com o programa man do Shell
Dirack added a commit that referenced this issue Apr 4, 2020
O programa interfaceBuilder depende apenas do shell bash para gerar
os arquivos de interfaces '.itf'. Os programas que parseam estes arquivos
para gerar modelos para o programa trimodel do SU é que precisam do pacote
SU instalado
Dirack added a commit that referenced this issue Apr 4, 2020
Travis CI roda os testes automatizaos do diretório TDD a partir de um Makefile.
Dirack added a commit that referenced this issue Apr 4, 2020
O arquivo Makefile estava ignorando os testes automatizados. Chamando
diretamente os arquivos de teste, no alvo test, faz com que os testes
não sejam ignorados
@Dirack Dirack closed this as completed in #11 Apr 4, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
1 participant