9.27.2006

Updates 09.27.2006

The unit tests are now complete. A unit test for the content assistance processor available from the tcl editor has been finished. Expect the refactoring process to begin over the next week.

9.26.2006

Updates 09.26.2006

Added TUnitEditorTest to the test suite. Currently the unit test only tests auto indentation, but will soon add a test for content assistance. Expect an update in the next few days.

9.24.2006

Introduction added to Paper

An introduction has been added to my paper. The pdf file though is not complete, and the last paragraph of the Introduction contains bad section numbers. This is due to the fact that the paper is being written using Latex and those sections have not been created yet.

9.23.2006

TUnit.paper Added to TUnit Project

A new subdirectory has been created to house the paper that is associated with the TUnit project. This will allow for versioning of the paper now as well. Look for more TUnit unit tests later this week.

9.19.2006

Delay in Updates

This week I plan on spending more time on the paper aspect of the project. As a result, there will probably be a delay in unit tests for the TUnit Editor. However, the unit tests are still on my schedule and there is a good chance that an update will still occur. I will be sure to keep all my fans posted. Until later. See Ya!

9.14.2006

Updates 09.14.2006

Added TUnitNamespaceViewTest. This test actually caught an error where a few files were not closed after being read from. This is exactly the reason I wanted to create unit tests. The last unit test to create now is the Editor unit test. Expect further updates over the weekend.

9.13.2006

Updates 09.13.2006

Added a unit test to test t-unit test script execution. Next up is a unit test for Namespace Explorer. Not much else to report though.

9.11.2006

Updates 09.11.2006

Updated code so that resource files are compared to on a line by line basis. Now the tests can be run completely automated with no need for manually updating files.

9.10.2006

Robot API Update

The unit tests can now be run on all platforms assuming /temp/tunitprojecttest2 exists and is a writable directory. For this week, I am hoping to develop of unit tests for the tclsh and results dialog. Should be fairly simple to do. Expect further updates during the week.

9.09.2006

Robot API

The Robot API is now being used to fill in all the user input within the unit tests. However, this resulted in the test only being able to run on a Window's machine with C:\Temp\TUnitProjectTest2 directory available. Also, the Robot takes control of the computer, so do not try and run anything else while it is working. This will cause you problems.

Another problem I have run into is that since the date is automatically put into some files under test, the comparison files need to have their date changed before every run (on a new day). This is ugly and I may need to update my tests to do this automatically.

9.07.2006

Updates 09.07.2006

TUnitProjectTest has been completed as well as two new unit tests: TUnitPackageTest and TUnitFileTest. All four tests that exist are passing at this time. This also completes the wizard unit test stage. However, the wizard unit tests are requiring user input. My advisor on this project has suggested looking at the Robot API in order to fully automate the tests. That will likely happen sometime this weekend.

The second piece of advice I received from my advisor was to change the packages associated with the project from edu.lmu.tUnit to edu.lmu.cs.tUnit. I created an issue for this and made the changes. I manually tested and ran the current set of unit tests and did not see a problem. However, a problem could show up so I gave the issue a status of Open-Verification. This status will remind me that if a problem comes up, to take a look at this issue. Eventually this will be closed when I feel that the unit tests developed can fully verify that there is no issue needed.

9.06.2006

Updates 09.06.2006

Added TUnitProjectTest to test the "New Tcl Project" wizard. The testcase is not complete, but passes for right now. Two more cases need to be added to be fully functional. This testcase will also help in the creation of the other two wizard-related unit tests. More to come tomorrow hopefully.

9.05.2006

Updates for 09.05.2006

Logging capabilities have been added to the TUnit plugin. Whenever the perspective is changed or one of the TUnit-related wizards is used, the log is updated. Also, any exceptions that are thrown are also logged. This was fairly easily to implement with the help of "eclipse: Building Commercial-Quality Plug-ins."

Secondly, TUnit.test has been created and added to the t-unit project repository hosted by Google. TUnit.test contains a test suite to unit test the TUnit plugin. Currently, the test suite only contains a unit test for the TUnit Perspective, but it passes and is a good start for future tests. More tests are to come over the next few weeks. Once again, "eclipse: Building Commercial-Quality Plug-ins" was used as a resource.

Logging Capabilities

In order to be compliant with IBM's Ready for Rational Software (RFRS) certification program, logging capabilities need to be added to the plugin. RFRS ensures that high-quality add-ons to Eclipse and the IBM Software Development Platform are being developed.

RFRS requirements indicate that exceptions and other servie-related information should be appended to a log file. Section 3.6 of "eclipse: Building Commercial-Quality Plug-ins" offers a good sample class that can be used for logging.

A new issue was generated with the need for logging specified. Later today, a new class will be implemented and compiled for logging capabilities. Expect an update tonight with the logging issue closed and new unit test(s) in place.

9.04.2006

Source Code and Issues Generated

The source code for the TUnit plugin has been put into Google's Subversion repository. The source can be viewed from the TUnit Hompeage. In addition, two issues have been generated. The first issue is regarding the lack of unit tests for the plugin. Two books are being looked at for a better understanding of PDE JUnit. Hopefully, the unit tests will be started by tomorrow. The second issue has to do with some refactoring of code that should take place. Once the unit tests are generated and passing, I will begin the refactoring process. The issues may also be viewed at the TUnit Hompeage.

What is TUnit?

TUnit is a plugin for the Eclipse IDE. TUnit makes use of the t-unit package that was developed for the tcl language. The t-unit package provides an automated unit testing framework modeled after the "JUnit" Java test suite. All calls are "asserts"; such as "assertTrue" checks for result boolean TRUE.

Features:
- Tcl Perspective
- Tcl Project Wizard
- Tcl Package Creator
- Tcl File Creator
- Syntax Highlighting
- Auto Indentation
- Content Assistance (i.e. completion of a command name)
- Preferences menu
- Namespace Explorer (looks at tclIndex and allows opening of files based on procedure names)
- Execution of t-unit scripts

TUnit Hompeage

Credits:
Thanks to BJ Johnson for the motivation and help in the design and implementation of TUnit. Without your idea, none of this would have been possible. Special thanks to Mark James for the icons used in the plugin. Visit his site for more information.

Blog Creation

This blog will host updates made to my TUnit Eclipse plugin. More information to come shortly.