Thursday, December 6, 2018

Start Coding the Server

Full Stack Software Development Blog

Starting to code the server APIs.

See https://github.com/gpratte/texastoc-v2-spring-boot

I am following Test Driven Development (TDD) writing the business logic. Mocking out the persistence.

I am employing Cucumber tests for the endpoints. Persistence is provided by an embedded H2 in memory database.

As usual I number the branches. Here are the branches (copied from the readme).

branch 02-create-season

SeasonRestController POST endpoint to create a season.
New SeasonService.
Junit test (followed TDD) for the controller that passes through to the service. No persistence yet.

branch 03-create-season-repository

JdbcTemplate based SeasonRepository. Use the @MockBean for the SeasonServiceTest unit test.

branch 04-bdd-cucumber

Added cucumber BDD test. These tests bring up the server and use Spring's RestTempate to call the endpoint to create a season. Also uses an embedded H2 database. Uses a command line runner to create the season table.

branch 05-tdd-get-season

Implement the GET method on the season service using TDD.

branch 06-bdd-get-season