This is preview!
Click on Join Now to Sign Up
FuncUnit users and newcomers, We've had a few exciting developments in the past few months and I think it is time to clarify what exactly is happening with FuncUnit.js. For those of you that are familiar with FuncUnit, you may have become accustomed to the following features: - Simple, event simulation syntax with jQuery selectors - CLI tools to run tests in PhantomJS - CLI tools to trigger browser running - Test coverage integration for Steal users These were all features we desired when we started the project back in early 2010. At the time, NodeJS had just started development, but wasn't yet released or in the public view, so our main focus was rhino integration(eg: the ./js script). Mainly due to NodeJS's release and popularity, we've had an explosion of innovation in JS tools, such as GruntJS. Rather than try to be an all-in-one testing solution, we decided in favor of modularity. This is akin to when we broke up JMVC last year to be individual pieces. jQueryMX was split into CanJS & jQuery++ and StealJS has upcoming stable releases for node & bower support, respectively. The new direction for FuncUnit is to be the best at one thing: Simple, event simulation with jQuery style selectors. We've reduced using FuncUnit from downloading a larger project, to a single file, ~145k uncompressed. We've added full Jasmine support and are in the process of supporting other testing frameworks. There are a growing number of test runners on the market and we've chosen to favor TesteeJS to run our tests. This is not to say you must use TesteeJS, but you should be free to integrate any parts you may or may not have with FuncUnit going forward. We may provide a Yeoman generator for our scaffold of a testing setup, however that's a talking point on the roadmap currently. Repo direction: Now, with any drastic project redirection, there are some growing pains. In our case, this will reside in the repos. We just released JMVC 3.3 recently and chose not to prohibit 3.3 users from using the older FuncUnit. This is currently: bitovi/funcunit. bitovi/funcunit.js is the new library, focusing only on the testing syntax itself. Overview: bitovi/funcunit - v3.2.3 tagged, follows revolution.major.minor versioning(matches JMVC) - includes runners(rhino, selenium, phantomjs support) - includes test coverage for steal - requires steal - requires jquery bitovi/funcunit.js - v2.0.x tagged, follows semantic versioning(original FuncUnit was 1.x from inception) - requires jquery - bower support There is plans to consolidate the repositories with bitovi/funcunit being the final destination. Roadmap: - Setup a github redirect from bitovi/funcunit.js -> bitovi/funcunit - Setup an orphan branch for v3.2.3 users - We'll be overriding the history in the master branch of bitovi/funcunit due to the size of the repo(~200Mb of older jar references) Feel free to respond to this thread or on GitHub with any questions/issues you may have! Developer Bitovi