Giter Club home page Giter Club logo

tdd-mooc-tetris's Introduction

TDD MOOC: Tetris

In this exercise you will be implementing a Tetris game using Test-Driven Development (TDD). The first couple dozen tests have already been written for you - just uncomment them one by one. This should help to get over the initial hurdle of knowing what tests to write when getting started with TDD. After that the training wheels are removed, and it's time to write your own tests in the latter part of this exercise.

The instructions on what to do are in the docs directory. This exercise is split into 10 "levels" which you should implement in order. They represent a realistic TDD approach of adding features incrementally.

This exercise uses JavaScript (ES6/ECMAScript 2015), Mocha testing framework and Chai assertions, but the concepts are language agnostic. It would be quite easy to translate the example tests to another programming language as you go. There also exists an older Java-based predecessor of this exercise.

Refer to the course material to learn more about TDD.


This exercise is part of the TDD MOOC at the University of Helsinki, brought to you by Esko Luontola and Nitor.

Prerequisites

You'll need a recent Node.js version. Then download this project's dependencies with:

npm install

Developing

Run tests once

npm run test

Run tests continuously

npm run autotest

Code reformat

npm run format

tdd-mooc-tetris's People

Contributors

luontola avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.