FUEL CMS Adds Testing and User Guide Modules

It’s been a while since our initial announcement regarding our CodeIgniter content management system, FUEL CMS. However, we’ve been making some steady progress fixing bugs, adding some features and creating the ever important documentation. Some of the biggest strides we’ve made have been in the form of a new User Guide and a Tester module.

User Guide

One of CodeIgniter’s greatest strengths is its documentation. Commenting code is one thing, but creating nicely organized, styled documentation with plenty of examples for users to quickly digest takes a lot more work. We’ve taken a cue from Ellis Labs and their great documentation style guide they used for CodeIgniter to create an extensible user guide module to make documentation almost fun to write.

FUEL CMS: User Guide Module Table of Contents


When FUEL CMS becomes available, adding a views/_docs folder to your module to hold all your documentation is all you need to do for it to get included into the FUEL CMS User Guide. The FUEL CMS User Guide module styles will automatically be included for your documentation to use. You can also create a application/views/_docs folder to display a link to site specific documentation for your clients which will appear in your FUEL Dashboard.

Tester

Since our work on FUEL has been transitioning more into the documentation and testing of the code, we decided that an elegant FUEL module to run tests was essential. Our requirements were:

     
  • We needed a simple UI interface to control which tests to run
  •  
  • We needed to do both unit testing to test our functions and classes as well as integration testing to test our controller and view output
  •  
  • We wanted it use the existing Unit_test class

CodeIgniter’s Unit_test Class seemed simple enough and got us part of the way there but the testing of the controllers and view files was going to be a bit more of a challenge. We started thinking about simple solutions to do this that didn’t require installing something like Selenium and realized that jQuery would be perfect for querying the HTML from a page. That’s when we ran across a project called phpQuery:

Below is an example of a method that gets executed by the Tester module and uses phpQuery to query the contents of the page:

public function test_goto_page()
{
 //http://code.google.com/p/phpquery/wiki/Manual
 $post['test']= 'test';
 $home = $this->load_page('home', $post);

 $test = pq("#content")->size();
 $expected = 1;
 $this->run($test, $expected, 'Test for content node');

 $test = pq("#logo")->size();
 $expected = 1;
 $this->run($test, $expected, 'Test for logo node');
}


The results:


Thank you to all who have expressed interest in FUEL CMS — we’ve been pleasantly surprised. If you’d like to stay up to date, please don’t forget to sign up for our FUEL newsletter. We’ll be sending out periodic updates on the FUEL front so stay tuned.

9 COMMENTS

I’m thrilled to see the docs module! In my own work with public libraries I keep thinking that there needs to be some simple form creating docs and that looks like a very good solution!

Looking very forward to the chance to work with this and start coding modules for it. Will this be released as an open-source project? That won’t affect my use of it, just curious. :)

Lonnie, 02:00PM / Aug 10, 2010

We are still evaluating different licensing options including the various open source flavors.

David McReynolds, 02:07PM / Aug 10, 2010

It was hardly wait for its release, i think it would be cool.,

Barock, 11:17PM / Aug 13, 2010

Are you going to put out a public beta soon?
I’m holding out to use fuelcms, from what i have seen, it looks like a real winner.
Do you have a rough release for it (3-6mths).
Thanks.

James, 09:40PM / Sep 26, 2010

We are indeed looking to release something within that timeframe and hopefully sooner.

David McReynolds, 09:28AM / Sep 27, 2010

When will you post a new blog entry updating everyone on the progress of Fuelcms?

james, 11:13PM / Oct 11, 2010

I guess we are past due for an update. We’ll try and carve some time out in the next week or two to give an official update on the progress of the project. Thanks for the interest.

David McReynolds, 08:57AM / Oct 12, 2010

I am just about to give it a try and I will let you know!!!
A question, How can we build an e-commerce site using fuel cms with paypal integration?

David Oster, 12:18AM / Oct 28, 2010

That’s a bigger question we will try and address in another blog post. We have done exactly that with FUEL but if you are familiar with CodeIgniter, you should be able to create your own Models, Views and Controllers and put them in your normal applications folder or perhaps a modules folder (e.g. a module named “shop”)

David McReynolds, 09:08AM / Nov 03, 2010

Comments have been closed.

ABOUTAUTHOR

David McReynolds leads Daylight’s interface design and application development services. He’s been working in Web application design and Web development for more than 10 years. David’s specialty is creating elegant Web interfaces for e-commerce, content management, learning management and online selection/catalog systems.