Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fmanimashaun/tdd_project
The Test-Driven Development (TDD) Project is a hands-on exercise in implementing the principles of TDD using Ruby. The project involves creating a Solver class with methods such as factorial, reverse, and fizzbuzz, with the unique aspect being that tests are written before the code. This project serves as a practical experience in writing tests fir
https://github.com/fmanimashaun/tdd_project
rspec ruby
Last synced: 14 days ago
JSON representation
The Test-Driven Development (TDD) Project is a hands-on exercise in implementing the principles of TDD using Ruby. The project involves creating a Solver class with methods such as factorial, reverse, and fizzbuzz, with the unique aspect being that tests are written before the code. This project serves as a practical experience in writing tests fir
- Host: GitHub
- URL: https://github.com/fmanimashaun/tdd_project
- Owner: fmanimashaun
- License: mit
- Created: 2023-11-18T12:41:40.000Z (12 months ago)
- Default Branch: dev
- Last Pushed: 2023-11-18T18:57:27.000Z (12 months ago)
- Last Synced: 2024-10-16T11:03:23.762Z (28 days ago)
- Topics: rspec, ruby
- Language: Ruby
- Homepage:
- Size: 17.6 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 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)
- [Usage](#usage)
- [👥 Authors](#authors)
- [🔭 Future Features](#future-features)
- [🤝 Contributing](#contributing)
- [⭐️ Show your support](#support)
- [🙏 Acknowledgements](#acknowledgements)
- [📝 License](#license)The Test-Driven Development (TDD) Project is a hands-on exercise in implementing the principles of TDD using Ruby. The project involves creating a Solver class with methods such as factorial, reverse, and fizzbuzz, with the unique aspect being that tests are written before the code. This project serves as a practical experience in writing tests first and then developing software that passes these tests, adhering to best practices for Ruby and professional documentation.
- Ruby
Server
- Ruby
Test Suite
- Rspec
- **Test-Driven Development:** This project is built using the principles of Test-Driven Development (TDD), ensuring robust and reliable code.
- **Solver Class:** The Solver class includes methods for common operations such as factorial calculation, string reversal, and the FizzBuzz problem.
- **Factorial Method:** The factorial method calculates the factorial of a number, handling edge cases such as negative numbers and zero.
- **Reverse Method:** The reverse method takes a string and returns it reversed, providing a handy utility for string manipulation.
- **FizzBuzz Method:** The fizzbuzz method implements the popular FizzBuzz problem, returning ‘fizz’, ‘buzz’, ‘fizzbuzz’, or the number itself based on the input.
- **Error Handling:** The project includes error handling for invalid inputs, raising exceptions where appropriate.
Comprehensive Testing: Each method in the Solver class has corresponding tests, ensuring that all functionalities work as expected.
- **Best Practices:** The project follows best practices for Ruby, including consistent naming conventions, clear code comments, and proper use of data structures.
To get started with the project, follow the steps below.
### Prerequisites
To run this project, ensure you have the following installed:
- [Git](https://git-scm.com/)
- [Ruby](https://www.ruby-lang.org/en/)
- A code editor (e.g., [VsCode](https://code.visualstudio.com/))
### Setup
Clone the repository to your local machine:
```bash
git clone https://github.com/fmanimashaun/tdd_project.git
```
### Usage
To run the program, you can use a Ruby interpreter. For example, to interact with the code, use the following:
```ruby
irb
```
Then, load the required files and start using the classes.
👤 **Fisayo Michael Animashaun**
- GitHub: [@fmanimashaun](https://github.com/fmanimashaun)
- Twitter: [@fmanimashaun](https://twitter.com/fmanimashaun)
- LinkedIn: [Fisayo Michael Animashaun ](https://linkedin.com/in/fmanimashaun)
- [Add your future feature ideas here.]
Contributions, issues, and feature requests are welcome!
Feel free to check the issues page.
https://github.com/fmanimashaun/school_library/issues
If you like this project leave a start for it.
I'd like to thank Microverse for helping us in the journey to become a Fullstack developer.
This project is [MIT](./LICENSE) licensed.