Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/eccb7/ruby-tdd

This project is designed to help you learn and practice Test-Driven Development (TDD) in Ruby. You will create a class called Solver and implement various methods while following the TDD approach.
https://github.com/eccb7/ruby-tdd

rspec rspec-tests ruby

Last synced: about 1 month ago
JSON representation

This project is designed to help you learn and practice Test-Driven Development (TDD) in Ruby. You will create a class called Solver and implement various methods while following the TDD approach.

Awesome Lists containing this project

README

        


Ruby Test Driven Development (TDD) Project


# 📗 Table of Contents

- [📖 About the Project](#about-project)
- [🛠 Built With](#built-with)
- [Tech Stack](#tech-stack)
- [Key Features](#key-features)
- [💻 Getting Started](#getting-started)
- [Prerequisites](#prerequisites)
- [Setup](#setup)
- [Install](#install)
- [Usage](#usage)
- [Run Tests](#run-tests)
- [👥 Authors](#authors)
- [🔭 Future Features](#future-features)
- [🤝 Contributing](#contributing)
- [⭐️ Show Your Support](#support)
- [🙏 Acknowledgements](#acknowledgements)

# 📖 About the Project

Welcome to the **Ruby TDD Project**! This project is designed to help you learn and practice Test-Driven Development (TDD) in Ruby. You will create a class called `Solver` and implement various methods while following the TDD approach.

## 🛠 Built With

### Tech Stack

Language

### Key Features

- Implement a class called `Solver`.
- Create a `factorial` method that calculates the factorial of a given integer `N`, handling edge cases and raising exceptions for negative integers.
- Implement a `reverse` method that reverses a given string.
- Create a `fizzbuzz` method that follows specific rules for returning strings based on divisibility by 3 and 5.
- Emphasize the TDD approach by writing tests first for all methods.

# 💻 Getting Started

To get started with the Ruby TDD Project, follow these steps:

### Prerequisites

Before you begin, ensure you have Ruby installed on your system. You can check if Ruby is installed by running the following command in your terminal:

```sh
ruby -v
```

### Setup

Example commands:

```sh
cd my-folder
git clone https://github.com/Eccb7/Ruby-TDD
```
-
### Install

Example command:

```sh
cd Ruby-TDD
```

### Run tests

Example command:

```sh
rspec
```
## 👥 Authors

👤 **Ojwang Briton**

- GitHub: [@Eccb7](https://github.com/Eccb7)
- Twitter: [@briton_otieno4](https://twitter.com/briton_otieno4)
- LinkedIn: [briton-otieno](https://linkedin.com/in/briton-otieno)

## 🔭 Future Features

1. **Behavior-Driven Development (BDD)**: Extend TDD to include BDD principles, using tools like Cucumber or RSpec with feature tests and scenarios written in plain language.
2. **Test Data Management**: Implement strategies for managing test data effectively, including fixtures, factories, or database snapshots, to ensure consistent and repeatable tests.

## 🤝 Contributing
Contributions, issues, and feature requests are welcome!

Feel free to check the issues page.

## ⭐️ Show your support
If you like this project, give it a ⭐️

## 🙏 Acknowledgements
I would like to thank microverse for the support they have provided

## 📝 License

This project is [MIT](./LICENSE) licensed.

(back to top)