Hi everybody,

I just updated UnitKit 1.1 version in Étoilé cvs to work with GNUstep.

http://cvs.gna.org/viewcvs/etoile/Etoile/Frameworks/UnitKit/
http://cvs.gna.org/viewcvs/etoile/Etoile/Services/Developer/UnitTests/
http://www.unitkit.org

Nicolas Roard ported UnitKit 1.0 to GNUstep, but UnitKit 1.1 was broken in many ways sadly and Nicolas forgot to implement support for tested classes with categories ;-) That should be fixed now.

New features :
- support to use AppKit objects in your tests
- support for -initForTest and -releaseForTest methods like JUnit -setUp and -tearDown (makes testing easier when you need to test a singleton object or an object which imperatively needs to be created with designated initialiser)

Bugs :
- exceptions which happen in your tests cannot be handled --> you get a crash :-/

I'm working currently on improving UnitTests, the application written by Nicolas to run tests and check the results more conveniently. The main new improvement is the possibility to define "Tests sets", when you run a Tests set, UnitKit tool run "tests suite" for your active tests bundles list. You can specify various tests bundles predefined list in Preferences and switch between them on the fly.
UnitTests is currently buggy, many things could not work very well.

A screenshot : http://www.dromasoftware.com/etoile/experimental/screenshots/ UnitTests2.tiff

Here is a GNUmakefile example to use UnitKit, with this GNUmakefile to run your tests, you just need to do :
make test=yes
ukrun myProject.bundle

***

include $(GNUSTEP_MAKEFILES)/common.make

ADDITIONAL_OBJCFLAGS = -Wno-import

#
# Main application
#

GNUSTEP_INSTALLATION_DIR = $(GNUSTEP_SYSTEM_ROOT)

PACKAGE_NAME = ServicesBarKit   
ifeq ($(test), yes)
BUNDLE_NAME = libServicesBarKit
ADDITIONAL_LDFLAGS = -lUnitKit -lgnustep-gui -lgnustep-base
else
LIBRARY_NAME = libServicesBarKit
endif
VERSION = 0.1

libServicesBarKit_LIB_DIRS = -L../$(GNUSTEP_LIBRARIES_ROOT)

#
# Resource files
#
libServicesBarKit_MAIN_MODEL_FILE =
libServicesBarKit_RESOURCE_FILES =

libServicesBarKit_LOCALIZED_RESOURCE_FILES =

#
# Languages we're localized for
#
libServicesBarKit_LANGUAGES = \
        English

#
# Header files
#
libServicesBarKit_HEADERS = \
        SBServicesBarItem.h \
        SBServicesBar.h
        
ifeq ($(test), no)
libServicesBarKit_HEADER_FILES_INSTALL_DIR = /ServicesBarKit
endif

#
# Class files
#
libServicesBarKit_OBJC_FILES = \
        SBServicesBarItem.m \
        SBServicesBar.m


ifeq ($(test), yes)
include $(GNUSTEP_MAKEFILES)/bundle.make
else
include $(GNUSTEP_MAKEFILES)/library.make
endif


***

I hope it will help you Yen-Ju :-)

Quentin.

--
Quentin Mathé
[EMAIL PROTECTED]


Reply via email to