Skip to content

Commit

Permalink
Merge pull request #55 from larien/ponteiros-e-erros
Browse files Browse the repository at this point in the history
Ponteiros e erros
  • Loading branch information
larien authored Dec 25, 2019
2 parents ce9388a + a393b37 commit 9ebe2e8
Show file tree
Hide file tree
Showing 21 changed files with 955 additions and 960 deletions.
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

![Build Status](https://travis-ci.org/larien/learn-go-with-tests.svg?branch=master) [![Go Report Card](https://goreportcard.com/badge/github.com/larien/learn-go-with-tests)](https://goreportcard.com/report/github.com/quii/learn-go-with-tests)

- Formatos: [Gitbook](https://larien.gitbook.io/aprenda-go-com-testes), [EPUB or PDF](https://github.com/larien/learn-go-with-tests/releases)
- Formatos: [Gitbook](https://larien.gitbook.io/aprenda-go-com-testes), [EPUB ou PDF](https://github.com/larien/learn-go-with-tests/releases)
- Versão original: [English](https://quii.gitbook.io/learn-go-with-tests/)
- Traduções: [中文](https://studygolang.gitbook.io/learn-go-with-tests)

Expand All @@ -27,7 +27,7 @@
4. [Iteração](primeiros-passos-com-go/iteracao.md) - Aprenda sobre `for` e benchmarking.
5. [Arrays e slices](primeiros-passos-com-go/arrays-e-slices.md) - Aprenda sobre arrays, slices, `len`, variáveis recebidas como argumentos, `range` e cobertura de testes.
6. [Estruturas, métodos e interfaces](primeiros-passos-com-go/structs-methods-and-interfaces.md) - Aprenda sobre `structs`, métodos, `interface` e testes orientados a tabela \(table driven tests\).
7. [Ponteiros e erros](primeiros-passos-com-go/pointers-and-errors.md) - Aprenda sobre ponteiros e erros.
7. [Ponteiros e erros](primeiros-passos-com-go/ponteiros-e-erros.md) - Aprenda sobre ponteiros e erros.
8. [Maps](primeiros-passos-com-go/maps.md) - Aprenda sobre armazenamento de valores na estrutura de dados `map`.
9. [Injeção de dependência](primeiros-passos-com-go/injecao-de-dependencia.md) - Aprenda sobre injeção de dependência, qual sua relação com interfaces e uma introdução a I/O.
10. [Mocking](primeiros-passos-com-go/mocks.md) - Use injeção de dependência com mocking para testar um código sem nenhum teste.
Expand All @@ -37,7 +37,7 @@
14. [Sync](primeiros-passos-com-go/sync.md) - Conheça algumas funcionalidades do pacote `sync`, como `WaitGroup` e `Mutex`.
15. [Context](primeiros-passos-com-go/context.md) - Use o pacote `context` para gerenciar e cancelar processos de longa duração.

### Crie uma aplicação
### Criando uma aplicação

Agora que você já deu seus _Primeiros Passos com Go_, esperamos que você tenha uma base sólida das principais funcionalidades da linguagem e como TDD funciona.

Expand Down
2 changes: 1 addition & 1 deletion SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
- [Iteração](primeiros-passos-com-go/iteracao.md)
- [Arrays e slices](primeiros-passos-com-go/arrays-e-slices.md)
- [Structs, métodos e interfaces](primeiros-passos-com-go/structs-methods-and-interfaces.md)
- [Ponteiros e erros](primeiros-passos-com-go/pointers-and-errors.md)
- [Ponteiros e erros](primeiros-passos-com-go/ponteiros-e-erros.md)
- [Maps](primeiros-passos-com-go/maps.md)
- [Injeção de dependência](primeiros-passos-com-go/dependency-injection.md)
- [Mocking](primeiros-passos-com-go/mocks.md)
Expand Down
4 changes: 2 additions & 2 deletions build.books.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ docker run -v `pwd`:/source jagregory/pandoc -o aprenda-go-com-testes.pdf --late
primeiros-passos-com-go/iteracao.md \
primeiros-passos-com-go/arrays-e-slices.md \
primeiros-passos-com-go/structs-methods-and-interfaces.md \
primeiros-passos-com-go/pointers-and-errors.md \
primeiros-passos-com-go/ponteiros-e-erros.md \
primeiros-passos-com-go/maps.md \
primeiros-passos-com-go/injecao-de-dependencia.md \
primeiros-passos-com-go/mocks.md \
Expand Down Expand Up @@ -39,7 +39,7 @@ docker run -v `pwd`:/source jagregory/pandoc -o aprenda-go-com-testes.epub --lat
primeiros-passos-com-go/iteracao.md \
primeiros-passos-com-go/arrays-e-slices.md \
primeiros-passos-com-go/structs-methods-and-interfaces.md \
primeiros-passos-com-go/pointers-and-errors.md \
primeiros-passos-com-go/ponteiros-e-erros.md \
primeiros-passos-com-go/maps.md \
primeiros-passos-com-go/injecao-de-dependencia.md \
primeiros-passos-com-go/mocks.md \
Expand Down
25 changes: 0 additions & 25 deletions pointers/v1/wallet.go

This file was deleted.

20 changes: 0 additions & 20 deletions pointers/v1/wallet_test.go

This file was deleted.

30 changes: 0 additions & 30 deletions pointers/v2/wallet.go

This file was deleted.

30 changes: 0 additions & 30 deletions pointers/v2/wallet_test.go

This file was deleted.

39 changes: 0 additions & 39 deletions pointers/v3/wallet.go

This file was deleted.

47 changes: 0 additions & 47 deletions pointers/v3/wallet_test.go

This file was deleted.

42 changes: 0 additions & 42 deletions pointers/v4/wallet.go

This file was deleted.

59 changes: 0 additions & 59 deletions pointers/v4/wallet_test.go

This file was deleted.

25 changes: 25 additions & 0 deletions ponteiros/v1/carteira.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
package main

import "fmt"

// Bitcoin representa o número de Bitcoins
type Bitcoin int

func (b Bitcoin) String() string {
return fmt.Sprintf("%d BTC", b)
}

// Carteira armazena o número de bitcoins que uma pessoa tem
type Carteira struct {
saldo Bitcoin
}

// Depositar vai adicionar Bitcoins à carteira
func (c *Carteira) Depositar(quantidade Bitcoin) {
c.saldo += quantidade
}

// Saldo retorna o número de Bitcoins que uma carteira tem
func (c *Carteira) Saldo() Bitcoin {
return c.saldo
}
19 changes: 19 additions & 0 deletions ponteiros/v1/carteira_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
package main

import (
"testing"
)

func TestCarteira(t *testing.T) {
carteira := Carteira{}

carteira.Depositar(Bitcoin(10))

resultado := carteira.Saldo()

esperado := Bitcoin(10)

if resultado != esperado {
t.Errorf("resultado %s, esperado %s", resultado, esperado)
}
}
Loading

0 comments on commit 9ebe2e8

Please sign in to comment.