GithubHelp home page GithubHelp logo

brybott / rooibos Goto Github PK

View Code? Open in Web Editor NEW

This project forked from rokucommunity/rooibos

0.0 0.0 0.0 3.73 MB

simple, flexible, fun brightscript test framework for roku scenegraph apps

License: MIT License

Makefile 9.53% JavaScript 1.70% Brightscript 66.69% CSS 16.21% TypeScript 5.59% Shell 0.29%

rooibos's Introduction

Rooibos test framework

Simple, mocha-inspired, flexible, fun Brightscript test framework for ROKU apps

Mocha test framework

Build Status GitHub

Links

Development

Rooibos is an independent open-source project, maintained exclusively by volunteers.

You might want to help! Get in touch via the slack group, or raise issues.

Thanks

Rooibos was hacked together from the official roku unit testing framework. I'd like to say a big thank you to the guys at roku who gave me permission to build upon their work. The original framework can be found here : https://github.com/rokudev/unit-testing-framework

Also thanks to the guys who made and maintain mochaJs, on which many of my changes are based upon, as well as the structure of the documentation.

FAQ

Is Rooibos ready for production use?

Rooibos is the test framework used by several of my clients, running CI with over 3000 tests between them. It started life as rewrite of the official roku unit testing framework, which has been in circulation for several years.

Is Rooibos actively maintained?

I am actively invovled in Rooibos's development, and add more features and fixes on a weekly basis. You can expect rapid responses to issues.

Why did you not just merge back your changes to roku's unit testing framework

  1. It does rewrite quite a lot of the original unit test framework code, so I doubt that roku would've merged it all back any time soon
  2. It's conceptually entirely different: e.g. using annotations instead of naming conventions and boiler-plate code, completely different test reporting output, assertions and test cases maintain their own state, runs in a scenegraph scene, to name but a few
  3. It has many more features than the original framework, not limited to : node specific assertions, exact assertion line failure reporting, better error messaging, easier setup, groupings, only and ignore for tests, mocks and stubs, etc, etc
  4. Being completely frank, I enjoy roku work and want to do more of it, so it's useful to me to own this project, rather than lose control and wait on other's to merge my changes. On that note, email me at george[AT]tantawowa.com, or pm me (georgejecook) on the roku slack group to discuss any roku development requirements
  5. I poured a lot of work into the project (> 100 hours and counting), and expect to continue to do so. If I own the project, then I can do what I want, when I want. That goes for you guys as well, so get in touch with feature requests and PR's :)

Is Rooibos itself unit tested?

At this point, it's WIP. I keep adding tests as bugs come up, and will continue to improve the test coverage.

Why 2.0.0?

The latest version of Rooibos introduces a preprocessor which is a requirement for running all tests. I thought that was a significant enough departure to warrant a whole version bump.

rooibos's People

Contributors

georgejecook avatar bvisin avatar cazacutudor avatar twig2let avatar blockscoped 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.