TDD (4) 썸네일형 리스트형 [GO] Todo list - sqlite 기본 구조는 아래와 같습니다. 이번에는 sqlliteHandler.go 파일을 마무리하고 디비파일 위치와 이름을 파라미터로 처리하게 변경하였음. 그래서 테스트시에는 test.db 를 사용하고 실제 운영시에는 todo.db 를 사용하게 처리 가능하였음. ./model/sqlliteHandler.go - 완료 package model import ( "database/sql" "time" _ "github.com/mattn/go-sqlite3" ) type sqliteHandler struct { db *sql.DB } func (s *sqliteHandler) GetTodos() []*Todo { todos := []*Todo{} sql_string := "SELECT id, name, completed,.. [GO] Todo list - interface 구현2 sqllite 로 변경하는 중간과정으로 interface 구조를 구현하던중, DB 의 Close 기능은 main.go 까지 전달해야해서 변경사항이 예상보다 많았습니다. 1. 기존에 model 에서 처리하던 interface 이름을 공개하여 app.go -> main.go 까지 전달함. 2. 해당 interface 이름을 공개하며 인터페이스 및 매소드명을 대문자로 모두 변경함. 기본 구조는 아래와 같음. model.go package model import ( "time" ) type Todo struct { ID int `json:"id"` Name string `json:"name"` Completed bool `json:"completed"` CreatedAt time.Time `json:"creat.. [GO] Todo list - refactoring(구조변경) 지난 게시글에서 만든 todo list 를 refactoring 하였습니다. refactoring 을 쉽게 하기 위해서 테스트 코드를 먼저 작성하여 현재의 기능을 검증하고 코드를 수정하면 refactoring 으로 인한 오류를 쉽게 검증할 수 있습니다. 기본구조는 아래와 같다. 1. 테스트 코드를 먼저 만들어서 기존 기능을 검증하겠습니다 ./myapp/app_test.go package myapp import ( // 모델은 검증코드 이후, refactoring 에서 추가한 부분입니다 "GO/tuckersGo/goWeb/web16-todo_refactoring/model" "encoding/json" "log" "net/http" "net/http/httptest" "net/url" "strconv" ".. [GO] Web - 테스트 코드 작성방법(TDD) 기존에 작업한 "Web - Text, json, URL 쿼리 방식" 코드에 대한 테스트 코드입니다. 테스트 코드를 작성하기 전에 2개의 패키지를 설치해야 함. 설치 위치 - 본인의 프로젝트 폴더에서 실행. 설치방법 1. go get github.com/smartystreets/goconvey 2. 환경변수 path에 추가 ===> "%GOPATH%\bin" 3. go get github.com/stretchr/testify/assert ./myapp/app_test.go - 5가지의 테스트 경우를 점검함. package myapp import ( "encoding/json" "github.com/stretchr/testify/assert" "io/ioutil" "net/http" "net/http/htt.. 이전 1 다음