All Projects β†’ islomar β†’ tcr-workshop

islomar / tcr-workshop

Licence: other
Information and instructions for trying TCR workflow (test && commit || revert)

Programming Languages

ruby
36898 projects - #4 most used programming language
shell
77523 projects
elixir
2628 projects
java
68154 projects - #9 most used programming language
C#
18002 projects
go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to tcr-workshop

ginkgo4j
A Java BDD Testing Framework (based on RSpec and Ginkgo)
Stars: ✭ 25 (-24.24%)
Mutual labels:  tdd
immunarch
🧬 Immunarch by ImmunoMind: R Package for Fast and Painless Exploration of Single-cell and Bulk T-cell/Antibody Immune Repertoires
Stars: ✭ 204 (+518.18%)
Mutual labels:  tcr
karma-reporter
A plugin for running clojurescript tests with Karma.
Stars: ✭ 23 (-30.3%)
Mutual labels:  tdd
mocha-cakes-2
A BDD plugin for Mocha testing framework
Stars: ✭ 44 (+33.33%)
Mutual labels:  tdd
extreme-carpaccio
Slicing and coding game
Stars: ✭ 116 (+251.52%)
Mutual labels:  coding-dojo
TDDWeatherApp
Android App trying to apply TDD and using MVVM, Kotlin Coroutines
Stars: ✭ 38 (+15.15%)
Mutual labels:  tdd
refactoring-koans-js
Refactoring Koans to help you learn to refactor code smells in javascript
Stars: ✭ 15 (-54.55%)
Mutual labels:  software-crafters
vscode-jest-runner
Simple way to run or debug a single (or multiple) tests from context menu
Stars: ✭ 189 (+472.73%)
Mutual labels:  tdd
Build-A-Laravel-App-With-TDD
It's time to take the techniques we learned in Laravel From Scratch, and put them to good use building your first real-world application. Together, we'll leverage TDD to create Birdboard: a minimal Basecamp-like project management app. This series will give us a wide range of opportunities to pull up our sleeves and test our Laravel chops. As al…
Stars: ✭ 36 (+9.09%)
Mutual labels:  tdd
substrate-tcr-ui
A react.js frontend for Substrate TCR runtime.
Stars: ✭ 14 (-57.58%)
Mutual labels:  tcr
baserepo
Base repository
Stars: ✭ 71 (+115.15%)
Mutual labels:  tdd
pgxmock
pgx mock driver for golang to test database interactions
Stars: ✭ 97 (+193.94%)
Mutual labels:  tdd
meteor-video-chat
Simple id based video calling in meteor
Stars: ✭ 33 (+0%)
Mutual labels:  tdd
cukinia
A simple on-target system test framework for Linux
Stars: ✭ 24 (-27.27%)
Mutual labels:  tdd
the-solo-developers-manifesto
This guide will help solo developers achieve what could be achieved by teams by God's mercy
Stars: ✭ 97 (+193.94%)
Mutual labels:  tdd
bdd-for-all
Flexible and easy to use library to enable your behavorial driven development (BDD) teams to easily collaborate while promoting automation, transparency and reporting.
Stars: ✭ 42 (+27.27%)
Mutual labels:  tdd
spec
Unit testing Vapor 4 applications through declarative specifications.
Stars: ✭ 32 (-3.03%)
Mutual labels:  tdd
SimplyVBUnit
The SimplyVBUnit framework provides powerful unit-testing capabilities for VB6.
Stars: ✭ 28 (-15.15%)
Mutual labels:  tdd
oletus
Minimal ECMAScript Module test runner
Stars: ✭ 43 (+30.3%)
Mutual labels:  tdd
book-fullstack-react-with-typescript
Working through the code samples from Fullstack React with Typescript by Maksim Ivanov and Alex Bespoyasov
Stars: ✭ 52 (+57.58%)
Mutual labels:  tdd

TCR workshop

Information and instructions for trying the TCR workflow (test && commit || revert) as first described here.

This repository contains scripts for Python, Java, NetCore, Elixir, Ruby and Rust examples, each of them in their own folders.

Here you can find the slides used for a workshop facilitated with Joe Bew in Stockholm.

There is also a generic folder with scripts that could be easily adapted to your specific language (/tcr-generic).

Prerequisites

  • You need Git installed.
  • A basic test running (see "How to set up a basic test" section if you're having problems).

How to set up a basic test

Here you can find lots of templates for different languages. Plus, you have tcr-python, tcr-java, tcr-csharp, tcr-elixir, tcr-rust, tcr-ruby and tcr-go folders ready in this repo.

IDE configuration

  • VERY IMPORTANT: Disable the "Auto-save".
  • Be sure the file is being automatically refreshed (to see the file reverted when the tests fail).
    • VS Studio Code. Several options:
      • enable "experimental file watcher" from File -> Settings. Unfortunately, it doesn't seem to work "too well".
      • Reload Window: Ctl + 5
      • Or configure a shortcut for "File revert" (e.g. "Alt + Shift + r")

How to configure your environment for TCR

There are several options for configuring your local environment so that you code gets automatically committed or reverted:

  • Option 1: IDE
  • Option 2: scripts
    • A more agnostic solution: use the scripts included under the folder /scripts of each java/python/generic folder of this repo (or create your own). The scripts are based on these.
    • You can either:
      • install inotifywait or something similar depending on your OS:
      • install the watch utility (it exists in both Linux and Mac OSX), and use the watch-generic.sh script included under the folder tcr-generic
    • To run the scripts, go to your specific folder (e.g. tcr-python), and run ./watch.sh or watch-generic.sh (if using the generic one with watch)

Proposed exercise

  • You can try the TCR workflow with the Fibonacci kata, included here
  • Another simple exercise to practice it is the substring kata

Bonus track

How to squash

Scripts examples for JavaScript

https://medium.com/@itortv/i-implemented-the-mars-rover-kata-through-tcr-test-commit-revert-and-these-are-my-7e11c40983a6

Interesting links

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].