Aula 05 – Mini curso de Git

GIT – CONTROLE DE VERSÃO DISTRIBUÍDO

MINI CURSO DE GIT

Link do Meu Github

GIT

GIT

Voltar para página principal do blog

Todas as aulas desse curso

Aula 04                       Aula 06

Se gostarem do conteúdo dêem um joinha 👍 na página do Código Fluente no
Facebook

Esse é o link do código fluente no Pinterest

Meus links de afiliados:

Hostinger

Digital Ocean

One.com

VAMOS CRIAR UMA NOVA BRANCH setup_program_and_tests

git checkout -b setup_program_and_tests

CRIAREMOS O PRIMEIRO TESTE DO NOSSO PROGRAMA, NO ARQUIVO test_noel.py.

INSIRA NELE O SEGUINTE CONTEÚDO:


# -*- coding: utf-8 -*-
"""
@author: toti.cavalcanti
"""
import unittest
from noel import solution

class TestNoel(unittest.TestCase):
    def test_one_Ho(self):
        self.assertEqual(solution(1), "Ho!")

unittest.main()

AGORA O ARQUIVO noel.py.


# -*- coding: utf-8 -*-
"""
@author: toti.cavalcanti
"""
def solution():
    pass

VAMOS RODAR O TESTE

  • DENTRO DA PASTA hohoho DIGITE python test_noel.py
  • VEJA A MENSAGEM DE ERRO DIZENDO QUE None != ‘Ho!’ None É DIFERENTE DA STRING ‘Ho!’
  • AGORA IREMOS CORRIGIR O ERRO REFERENTE AO PRIMEIRO TESTE

# -*- coding: utf-8 -*-
"""
@author: toti.cavalcanti
"""
def solution(num):
    return 'Ho!'

RODE O TESTE NOVAMENTE python test_noel.py E VEJA QUE AGORA O PRIMEIRO TESTE VAI PASSAR

HORA DE ADICIONAR A MODIFICAÇÃO A STAGING AREA, COMMITAR E FAZER O PUSH PARA O GITHUB

git add .

git commit "insert return Ho! in noel.py"

git push origin initial_set_files

VAMOS CONSTRUIR UM NOVO TESTE, AGORA COM DOIS HO ( ‘Ho Ho!’)


# -*- coding: utf-8 -*-
"""
@author: toti.cavalcanti
"""
import unittest
from noel import solution

class TestNoel(unittest.TestCase):
    def test_one_Ho(self):
        self.assertEqual(solution(1), "Ho!")

    def test_two_Ho(self):
        self.assertEqual(solution(2), "Ho Ho!")

unittest.main()

RODE NOVAMENTE O ARQUIVO DE TESTE test_noel.py E VEJA QUE UM TESTE VAI PASSAR, MAS O NOVO TESTE NÃO.

PODEMOS AGORA ADICIONAR A MUDANÇA NO ARQUIVO DE TESTE A STAGING AREA, DEPOIS COMIITAR E SE QUISER, PODE FAZER LOGO O PUSH PRO GITHUB.

git add .

git commit -m "create a second test with 2 as parameter and expected Ho Ho! as return"

git add push origin initial_set_files

AGORA VAMOS CORRIGIR NOSSO PROGRAMA noel.py PARA QUE ELE CONSIGA RESOLVER NOSSO SEGUNDO CASO DE TESTE SEM QUEBRAR O PRIMEIRO TESTE.


# -*- coding: utf-8 -*-
"""
@author: toti.cavalcanti
"""
def solution(num):
    if num == 1:
        return 'Ho!'
    return 'Ho Ho!'

VAMOS ADICIONAR AS MUDANÇAS NO ARQUIVO noel.py A STAGING AREA, DEPOIS COMMITAR E FAZER O PUSH PARA O GITHUB.

git add .

git commit -m "change the noel code to fix the second test case"

git add push origin initial_set_files

TEMOS DOIS TESTE, E O NOSSO PROGRAMA TÁ FUNCIONANDO PARA ESSES DOIS TESTES, VAMOS CRIAR UM OUTRO TESTE QUE QUEBRE NOSSO PROGRAMA.


# -*- coding: utf-8 -*-
"""
@author: toti.cavalcanti
"""
import unittest
from noel import solution

class TestNoel(unittest.TestCase):
    def test_one_Ho(self):
        self.assertEqual(solution(1), "Ho!")

    def test_two_Ho(self):
        self.assertEqual(solution(2), "Ho Ho!")
    
    def test_five_Ho(self):
        self.assertEqual(solution(5), "Ho Ho Ho Ho Ho!")

unittest.main()

NOSSO TERCEIRO TESTE NÃO IRÁ PASSAR

VAMOS AGORA TENTAR UMA SOLUÇÃO QUE RESOLVA O CASO MAIS GERAL POSSÍVEL, QUE PASSANDO QUALQUER NÚMERO ENTRE ZERO e 1.000.000 (10⁶ ou 10^6) ELE TRAGA A RESPOSTA CORRETA.

VAMOS PRIMEIRO ADICIONAR AS MUDANÇAS NO test_noel.py A STAGING AREA, COMMITAR E FAZER O PUSH.

git add .

git commit -m "create a third test with 5 as parameter and expected Ho Ho Ho Ho Ho! as return"

git add push origin initial_set_files

AGORA VAMOS RETIRAR TODO O HARDCODE QUE FIZEMOS NO NOSSO PROGRAMA E COLOCAR A SOLUÇÃO DEFINITIVA PARA TODOS OS CASOS POSSÍVEIS DE TESTE.


# -*- coding: utf-8 -*-
"""
@author: toti.cavalcanti
"""
def solution(num):
    return "Ho " * (num - 1) + "Ho!" 

AGORA PARA FINALIZAR, JÁ QUE NOSSO PROGRAMA ESTÁ PRONTO, VAMOS ADICIONAR AS MUDANÇAS A STAGING AREA, COMMITAR, FAZER O PUSH PARA O GITHUB, SAIR DA BRANCH initial_set_files E VOLTAR PARA A master, FAZER O MERGE COM A BRANCH initial_set_files E FAZER O PUSH PARA A MASTER.

git add .
git commit -m "change the noel.py file to resolve any possible test"
git add push origin initial_set_files
git checkout master
git merge initial_set_files
git push origin master

CONCLUSÃO:

COM ESSES COMANDOS E ENTENDIMENTO BÁSICOS DO GIT, VOCÊ JÁ CONSEGUE FAZER O CONTROLE DE VERSÃO DE SEUS PROJETOS.

CLARO QUE EXISTE MUITO MAIS COISAS A APRENDER, MAS O INTUITO DESSE PEQUENO TUTORIAL SOBRE O GIT, É MAIS PARA DÁ UMA BASE PRA QUEM QUER COMEÇAR A USAR ESSES RECURSOS NA PRÁTICA.

Ficamos por aqui, até mais. 🙂

Aula 04                       Aula 06

Todas as aulas desse curso

Voltar para página principal do blog

Se gostarem do conteúdo dêem um joinha 👍 na página do Código Fluente no
Facebook

Esse é o link do código fluente no Pinterest

Meus links de afiliados:

Hostinger

Digital Ocean

One.com

Meu github:

https://github.com/toticavalcanti

Obrigado, até a próxima e bons estudos. 😉

Category: Curso de Git, DevOps
About The Author
-

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>