Categorygithub.com/probuborka/go_final_project
module
0.0.0-20250205123046-3e0311ffd55b
Repository: https://github.com/probuborka/go_final_project.git
Documentation: pkg.go.dev

# README

TODO-лист

Описание проекта

Веб-сервер, который реализует функциональность простейшего планировщика задач.

Список выполенных заданий со звёздочкой

Все задания выполнены

  • Возможность определять порт из переменной окружения TODO_PORT.
  • Возможность определять путь к файлу базы данных через переменную окружения TODO_DBFILE.
  • Правила повторения задач W и M.
  • Возможность выбрать задачи через строку поиска.
  • Аутентификация
  • Создание докер образа

Инструкция по запуску кода локально

Запуск кода

go run ./cmd/todo/main.go

По умолчанию порт "7540", его можно задать переменной окружения TODO_PORT

export TODO_PORT=<порт>

По умолчанию путь к файлу БД "./db/scheduler.db", его можно задать переменной окружения TODO_DBFILE

export TODO_DBFILE=<путь к файлу БД>

Для использования механизма аутентификации необходимо задать пароль в переменную окружения TODO_PASSWORD

export TODO_PASSWORD=<пароль>

Открываем TODO-лист в браузере

http://localhost:7540

Инструкция по сборке и запуску проекта через докер

docker build -t todo-list . 
docker run -d -p 7540:7540 todo-list  
http://localhost:7540

Инструкция по запуску тестов

Параметры для теста (tests/settings.go)

Port = 7540
DBFile = "../db/scheduler.db"
FullNextDate = true
Search = true
Token = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.e30.P4Lqll22jQQJ1eMJikvNg5HKG-cKB0hUZA9BZFIG7Jk"

Запуск тестов

go test ./tests
go test -run ^TestApp$ ./tests
go test -run ^TestDB$ ./tests
go test -run ^TestNextDate$ ./tests
go test -run ^TestAddTask$ ./tests
go test -run ^TestTasks$ ./tests
go test -run ^TestTask$ ./tests
go test -run ^TestEditTask$ ./tests
go test -run ^TestDone$ ./tests
go test -run ^TestDelTask$ ./tests

# Packages

No description provided by the author
No description provided by the author
No description provided by the author