[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qsos-commits] qsos/apps/querysos/src/tests TestCommandInterpr...
From: |
Romain PELISSE |
Subject: |
[Qsos-commits] qsos/apps/querysos/src/tests TestCommandInterpr... |
Date: |
Wed, 30 Aug 2006 12:34:15 +0000 |
CVSROOT: /sources/qsos
Module name: qsos
Changes by: Romain PELISSE <rpelisse> 06/08/30 12:34:15
Added files:
apps/querysos/src/tests: TestCommandInterpreter.rb
TestFileManager.rb
TestXMLCommandConfigurator.rb
commandConf.xml kollab.xml
Log message:
Unit test for QuerySOS ( initial commit )
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/qsos/apps/querysos/src/tests/TestCommandInterpreter.rb?cvsroot=qsos&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/qsos/apps/querysos/src/tests/TestFileManager.rb?cvsroot=qsos&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/qsos/apps/querysos/src/tests/TestXMLCommandConfigurator.rb?cvsroot=qsos&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/qsos/apps/querysos/src/tests/commandConf.xml?cvsroot=qsos&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/qsos/apps/querysos/src/tests/kollab.xml?cvsroot=qsos&rev=1.1
Patches:
Index: TestCommandInterpreter.rb
===================================================================
RCS file: TestCommandInterpreter.rb
diff -N TestCommandInterpreter.rb
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ TestCommandInterpreter.rb 30 Aug 2006 12:34:15 -0000 1.1
@@ -0,0 +1,38 @@
+#
+# Created by RPELISSE
+#
+#
+#
+#
+#
+module QuerySOS
+
+require 'test/unit'
+require 'querysos/CommandInterpreter'
+require 'querysos/XMLCommandConfigurator'
+require 'querysos/FileManager'
+require 'querysos/Worker'
+
+class TestCommandInterpreter < Test::Unit::TestCase
+
+ attr_accessor :interpreter
+ def setup
+ @interpreter = QuerySOS::CommandInterpreter.new
+ @interpreter.configurator = QuerySOS::XMLCommandConfigurator.new
+ w = QuerySOS::Worker.new
+ w.filemanager= QuerySOS::FileManager.new
+ @interpreter.worker = w
+ @interpreter.init
+ end
+
+ def testOpen
+# @interpreter.current_cmd =
+ end
+
+ def teardown
+
+ end
+
+end
+
+end
Index: TestFileManager.rb
===================================================================
RCS file: TestFileManager.rb
diff -N TestFileManager.rb
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ TestFileManager.rb 30 Aug 2006 12:34:15 -0000 1.1
@@ -0,0 +1,68 @@
+require 'test/unit'
+require 'querysos/FileManager'
+
+class TestFileManager < Test::Unit::TestCase
+
+ attr_reader :FILENAME
+ attr_reader :manager
+
+ def initialize(arg)
+ super arg
+ @FILENAME = "./tests/kollab.xml"
+ @manager = nil
+ end
+
+ def setup
+ @manager = QuerySOS::FileManager.new
+ assert_not_nil @manager
+ end
+
+ def testOpenWithNoFile
+ # trying to open an empty file
+ begin
+ @manager.open ""
+ rescue
+ # exception is thrown : good behavior
+ return
+ end
+ fail
+ end
+
+ def testValidOpen
+ # opening an correct file, no exception thrown
+ @manager.open @FILENAME
+ assert_not_nil @manager.filename
+ assert_equal(@FILENAME,@manager.filename)
+ assert_not_nil @manager.current_sheet
+ end
+
+ def testInvalidClose
+ begin
+ @manager.close
+ rescue
+ # good behavior
+ return
+ end
+ fail
+ end
+
+ def testValidClose
+ @manager.open @FILENAME
+ @manager.close
+ assert_not_nil @manager.filename
+ assert_equal("",@manager.filename)
+ assert_nil @manager.current_sheet
+ end
+
+ def testSave
+ @manager.open @FILENAME
+ @manager.save
+ end
+
+ def teardown
+ if @manager.current_sheet != nil
+ @manager.close
+ end
+ end
+
+end
\ No newline at end of file
Index: TestXMLCommandConfigurator.rb
===================================================================
RCS file: TestXMLCommandConfigurator.rb
diff -N TestXMLCommandConfigurator.rb
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ TestXMLCommandConfigurator.rb 30 Aug 2006 12:34:15 -0000 1.1
@@ -0,0 +1,32 @@
+#
+# Created by RPELISSE
+#
+#
+#
+#
+#
+module QuerySOS
+require 'test/unit'
+require 'querysos/XMLCommandConfigurator'
+
+class TestXMLCommandConfigurator < Test::Unit::TestCase
+
+ def testParsingOneCommand
+ data = "./tests/commandConf.xml"
+ configurator = QuerySOS::XMLCommandConfigurator.new
+ configurator.configFilePath= data
+ command = configurator.load
+ assert_not_nil command
+ puts command.inspect
+ assert_equal(Array,command.class)
+ assert_equal(1,command.size)
+ assert_equal(QuerySOS::Command,command[0].class)
+ assert_equal("o",command[0].id)
+ assert_equal("open",command[0].name)
+ assert_equal("1",command[0].minArgs)
+ assert_equal("1",command[0].maxArgs)
+ end
+
+end
+
+end
\ No newline at end of file
Index: commandConf.xml
===================================================================
RCS file: commandConf.xml
diff -N commandConf.xml
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ commandConf.xml 30 Aug 2006 12:34:15 -0000 1.1
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<querysos-interpreter>
+ <command id="o"
+ name="open">
+ <documentation>
+ </documentation>
+ <args min="1"
+ max="1">
+ </args>
+ <script></script>
+ </command>
+</querysos-interpreter>
\ No newline at end of file
Index: kollab.xml
===================================================================
RCS file: kollab.xml
diff -N kollab.xml
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ kollab.xml 30 Aug 2006 12:34:15 -0000 1.1
@@ -0,0 +1,555 @@
+<document>
+
+
+
+
+
+
+
+
+
+<desc></desc><desc><desc></desc></desc><header>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <desc></desc><desc><desc></desc></desc><authors>
+
+
+
+
+ <desc></desc><desc><desc></desc></desc><author>
+
+
+
<desc></desc><desc><desc></desc></desc><email>address@hidden<desc></desc><desc><desc></desc></desc></email><name>Goneri
Le Bouder<desc></desc><desc><desc></desc></desc></name></author><author>
+
+
<desc></desc><desc><desc></desc></desc><email>address@hidden<desc></desc><desc><desc></desc></desc></email><name>Romain
PELISSE<desc></desc><desc><desc></desc></desc></name></author></authors><dates>
+
+
+
<desc></desc><desc><desc></desc></desc><creation>20060307<desc></desc><desc><desc></desc></desc></creation><validation><desc></desc><desc><desc></desc></desc></validation></dates><language>en<desc></desc><desc><desc></desc></desc></language><appname>kolab<desc></desc><desc><desc></desc></desc></appname><release>2<desc></desc><desc><desc></desc></desc></release><licenseid>31<desc></desc><desc><desc></desc></desc></licenseid><licensedesc>GNU
General Public
License<desc></desc><desc><desc></desc></desc></licensedesc><url>http://www.kolab.org<desc></desc><desc><desc></desc></desc></url><desc>Kolab
is a groupware used in the german
administration<desc></desc><desc><desc></desc></desc></desc><demourl>http://kolab.org/screenshots.html<desc></desc><desc><desc></desc></desc></demourl><qsosformat>1.6<desc></desc><desc><desc></desc></desc></qsosformat><qsosappfamily>groupware<desc></desc><desc><desc></desc></desc></qsosappfamily><qsosspecificformat>1<desc></desc><desc><desc></desc></desc></qsosspecificformat></header><section
name='generic' title='Generic section'>
+
+
+
+
+
+
+ <desc></desc><desc><desc></desc></desc><desc>Generic criteria from QSOS
version 1.6<desc></desc><desc><desc></desc></desc></desc><element
name='intrinsicdurability' title='Intrinsic durability'>
+
+
+
+
+
+ <desc></desc><desc><desc></desc></desc><desc>Intrinsic
durability<desc></desc><desc><desc></desc></desc></desc><element
name='maturity' title='Maturity'>
+
+
+
+
+
+
<desc></desc><desc><desc></desc></desc><desc>Maturity<desc></desc><desc><desc></desc></desc></desc><element
name='age' title='Age'>
+
+
+
+
+
+ <desc></desc><desc0>less than 3 months</desc0><desc1>if between 3
months and 3 years</desc1><desc2>after 3 years</desc2><comment>Kolab.org domain
was created the 29th of Oct
2002</comment><score>2</score><desc><desc></desc></desc></element><element
name='stability' title='Stability'>
+
+
+
+
+
+ <desc></desc><desc0>Unstable software with numerous releases or
patches generating side effects</desc0><desc1>Stabilized production release
existing but old. Difficulties to stabilize developpement
releases</desc1><desc2>Stabilized software. Releases provide bug fixes
corrections but mainly new
functionalities</desc2><score>2</score><desc><desc></desc></desc></element><element
name='historyknowproblems' title='History, know problems'>
+
+
+
+
+
+ <desc></desc><desc0>Software knows several problems which can be
prohibitive</desc0><desc1>No know major problem or crisis</desc1><desc2>History
of good management of crisis
situations</desc2><score>2</score><desc><desc></desc></desc></element><element
name='forkprobability' title='Fork probability, source of Forking'>
+
+
+
+
+
+ <desc></desc><desc0>Software is very likely to be forked in the
future</desc0><desc1>Software comes from a fork but has very few chances of
being forked in the future</desc1><desc2>Software has very little chance of
being forked. It does not come from a fork
either</desc2><score>2</score><desc><desc></desc></desc></element></element><element
name='adoption' title='Adoption'>
+
+
+
+
+
+ <desc></desc><desc><desc></desc></desc><desc>Adoption by community and
industry<desc></desc><desc><desc></desc></desc></desc><element
name='popularity' title='Popularity (related to: general public, niche, ...)'>
+
+
+
+
+
+ <desc></desc><desc0>Very few users identified</desc0><desc1>Detectable
use on Internet</desc1><desc2>Numerous users, numerous
references</desc2><score>2</score><desc><desc></desc></desc></element><element
name='references' title='References'>
+
+
+
+
+
+ <desc></desc><desc0>None</desc0><desc1>Few refences, non critical
usages</desc1><desc2>Often implemented for critical
applications</desc2><comment>Kolab is know to be use in some important
organisation. But they doesn't give information for "security"
raison</comment><score>1</score><desc><desc></desc></desc></element><element
name='contributingcommunity' title='Contributing Community'>
+
+
+
+
+
+ <desc></desc><desc0>No community or without real activity (forum,
mailing list, ...)</desc0><desc1>Existing community with a notable
activity</desc1><desc2>Strong community: big activity on forums, numerous
contributors and
advocates</desc2><score>1</score><desc><desc></desc></desc></element><element
name='books' title='books'>
+
+
+
+
+
+ <desc></desc><desc0>No book about the software</desc0><desc1>Less than
5 books about the software are available</desc1><desc2>More than 5 books about
software are available, in several
languages</desc2><score>0</score><desc><desc></desc></desc></element></element><element
name='developmentleadership' title='Development leadership'>
+
+
+
+ <desc></desc><desc><desc></desc></desc><desc>Organisation and leadership
of developments<desc></desc><desc><desc></desc></desc></desc><element
name='leadingteam' title='Leading team'>
+
+
+
+
+
+ <desc></desc><desc0>1 to 2 individuals involved, not clearly
identified</desc0><desc1>Between 2 and 5 independent people</desc1><desc2>More
than 5
people</desc2><score>1</score><desc><desc></desc></desc></element><element
name='managementstyle' title='Management style'>
+
+
+
+
+
+ <desc></desc><desc0>Complete dictatorship</desc0><desc1>Enlightened
despotism</desc1><desc2>Council of architects with identified leader (e.g:
KDE)</desc2><score>1</score><desc><desc></desc></desc></element></element><element
name='activity' title='Activity'>
+
+
+
+
+
+ <desc></desc><desc><desc></desc></desc><desc>Activity of the project and
around the software<desc></desc><desc><desc></desc></desc></desc><element
name='developersidentificationturnover' title='Developers, identification,
turnover'>
+
+
+
+
+
+ <desc></desc><desc0>Less than 3 developers, not clearly
identified</desc0><desc1>Between 4 and 7 developers, or more unidentified
developers with important turnover</desc1><desc2>More than 7 developers, very
stable team</desc2><score>2</score><desc><desc></desc></desc></element><element
name='activityonbugs' title='Activity on bugs'>
+
+
+
+
+
+ <desc></desc><desc0>Slow reactivity in forum or on mailing list, or
nothing regarding bug fixes in releases note</desc0><desc1>Detectable activity
but without process clearly exposed, loing reaction/resolution
time</desc1><desc2>Strong reactivity based on roles and tasks
assignment</desc2><desc><desc></desc></desc></element><element
name='activityonfunctionalities' title='Activity on functionalities'>
+
+
+
+
+
+ <desc></desc><desc0>No or few new
functionalities</desc0><desc1>Evolution of the product driven by the core team
or by user's request without any clearly explained
process</desc1><desc2>Tool(s) to manage feature requests, strong interaction
with roadmap</desc2><desc><desc></desc></desc></element><element
name='activityonreleases' title='Activity on releases'>
+
+
+
+
+
+ <desc></desc><desc0>Very weak activity on both production and
development releases</desc0><desc1>Activity on production and developmenet
releases. Frequent minor releases (bug fixes)</desc1><desc2>Important activity
with frequent minor releases (bugs fixes) and planned major releases relating
to the roadmap
forcast</desc2><score>2</score><desc><desc></desc></desc></element></element></element><element
name='industrializedsolution' title='Industrialized solution'>
+
+
+
+
+
+
+ <desc></desc><desc><desc></desc></desc><desc>Industrialization level of
the project<desc></desc><desc><desc></desc></desc></desc><element
name='independenceofdevelopments' title='Independence of developments'>
+
+
+
+
+
+ <desc></desc><desc0>Developments realized at 100% by employees of a
single company</desc0><desc1>60% maximum</desc1><desc2>20%
maximum</desc2><score>2</score><desc><desc></desc></desc></element><element
name='services' title='Services'>
+
+
+
+
+ <desc></desc><desc><desc></desc></desc><desc>Services
offering<desc></desc><desc><desc></desc></desc></desc><element name='training'
title='Training'>
+
+
+
+
+
+ <desc></desc><desc0>No offer of training
identified</desc0><desc1>Offer exists but is restricted geographically and to
one language or is provided by a single contractor</desc1><desc2>Rich offers
provided by several contractors, in serveral languages and split into modules
of gradual levels</desc2><desc><desc></desc></desc></element><element
name='support' title='Support'>
+
+
+
+
+
+ <desc></desc><desc0>No offer of support except via public forums and
mailing lists</desc0><desc1>Offer exists but is provided by a single contractor
without strong commitment quality of services</desc1><desc2>Multiple service
providers with strong commitment (e.g: guaranteed resolution
time)</desc2><score>1</score><desc><desc></desc></desc></element><element
name='consulting' title='Consulting'>
+
+
+
+
+
+ <desc></desc><desc0>No offer of consulting service</desc0><desc1>Offer
exists but is restricted geographically and to one language or is provided by a
single contractor</desc1><desc2>Consulting services provided by different
contractors in serveral
languages</desc2><score>1</score><desc><desc></desc></desc></element></element><element
name='documentation' title='Documentation'>
+
+
+
+
+
+ <desc></desc><desc0>No user documentation</desc0><desc1>Documentation
exists but shifted in time, is restricted to one language or is poorly
detailed</desc1><desc2>Documentation always up to date, translated and possibly
adapted to different target readers (end user, sysadmin, manager,
...)</desc2><score>1</score><desc><desc></desc></desc></element><element
name='qualityassurance' title='Quality Assurance'>
+
+
+
+ <desc></desc><desc><desc></desc></desc><desc>Quality assurance
process<desc></desc><desc><desc></desc></desc></desc><element name='quality'
title='Quality Assurance'>
+
+
+
+
+
+ <desc></desc><desc0>No QA process</desc0><desc1>Identifies QA process
but not much formalized and with no tool</desc1><desc2>Automatic testing
process included in code's life-cycle with publication of
results</desc2><score>1</score><desc><desc></desc></desc></element><element
name='tools' title='Tools'>
+
+
+
+
+
+ <desc></desc><desc0>No bug or feature request management
tool</desc0><desc1>Standard tools provided (for instance by a hosting forge)
but poorly used</desc1><desc2>Very active use of tools for roles/tasks
allocation and progress
monitoring</desc2><comment>1</comment><desc><desc></desc></desc></element></element><element
name='packaging' title='Packaging'>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <desc></desc><desc><desc></desc></desc><desc>Packaging for various
operating systems<desc></desc><desc><desc></desc></desc></desc><element
name='packagingsource' title='Source'>
+
+
+
+
+
+ <desc></desc><desc0>Software can't be installed from source
without lot of work</desc0><desc1>Installation from source is limited and
depends on very strict conditions (OS, arch, lib,
...)</desc1><desc2>Installation from source is
easy</desc2><desc><desc></desc></desc></element><element name='packagingdebian'
title='Debian'>
+
+
+
+
+
+ <desc></desc><desc0>The software is not packaged for
Debian</desc0><desc1>A Debian package exists but it has important issues or it
doesn't have official support</desc1><desc2>The software is packaged in
the distribution</desc2><desc><desc></desc></desc></element><element
name='packagingfreebsd' title='FreeBSD'>
+
+
+
+
+
+ <desc></desc><desc0>The software is not packaged for
FreeBSD</desc0><desc1>A port exists but it has important issues or it
doesn't have official support</desc1><desc2>A official port exists in
FreeBSD</desc2><desc><desc></desc></desc></element><element
name='packaginghpux' title='HP-UX'>
+
+
+
+
+
+ <desc></desc><desc0>The software is not packaged for
HP-UX</desc0><desc1>A package exists but it has important issues or it
doesn't have official support</desc1><desc2>A stable package is provided
for HP-UX</desc2><desc><desc></desc></desc></element><element
name='packagingmacosx' title='MacOSX'>
+
+
+
+
+
+ <desc></desc><desc0>The software is not packaged for
MacOSX</desc0><desc1>A package exists but it has important issues or it
doesn't have official support</desc1><desc2>The software is packaged in
the distribution</desc2><desc><desc></desc></desc></element><element
name='packagingmandriva' title='Mandriva'>
+
+
+
+
+
+ <desc></desc><desc0>The software is not packaged for
Mandriva</desc0><desc1>A package exists but it has important issues or it
doesn't have official support</desc1><desc2>The software is packaged in
the distribution</desc2><desc><desc></desc></desc></element><element
name='packagingnet' title='NetBSD'>
+
+
+
+
+
+ <desc></desc><desc0>The software is not packaged for
NetBSD</desc0><desc1>A port exists but it has important issues or it
doesn't have official support</desc1><desc2>A official port exists in
NetBSD</desc2><desc><desc></desc></desc></element><element name='packagingopen'
title='OpenBSD'>
+
+
+
+
+
+ <desc></desc><desc0>The software is not packaged for
OpenBSD</desc0><desc1>A port exists but it has important issues or it
doesn't have official support</desc1><desc2>A official port exists in
OpenBSD</desc2><desc><desc></desc></desc></element><element
name='packagingredhat' title='RedHat'>
+
+
+
+
+
+ <desc></desc><desc0>The software is not packaged for
RedHat/Fedora</desc0><desc1>A package exists but it has important issues or it
doesn't have official support</desc1><desc2>The software is packaged in
the distribution</desc2><desc><desc></desc></desc></element><element
name='packagingsolaris' title='Solaris'>
+
+
+
+
+
+ <desc></desc><desc0>The software is not packaged for
Solaris</desc0><desc1>A package exists but it has important issues or it
doesn't have official support (e.g: SunFreeware.com )</desc1><desc2>The
software is supported by Sun for
Solaris</desc2><desc><desc></desc></desc></element><element
name='packagingsuse' title='SuSE'>
+
+
+
+
+
+ <desc></desc><desc0>The software is not packaged for
SuSE</desc0><desc1>A package exists but it has important issues or it
doesn't have official support</desc1><desc2>The software is packaged in
the distribution</desc2><desc><desc></desc></desc></element><element
name='packagingwindows' title='Windows'>
+
+
+
+
+
+ <desc></desc><desc0>The project can't be installed on
Windows</desc0><desc1>A package exists but it is limited or has important
issues or just cover some specific Windows release (e.g: Windows2000 and
WindowsXP)</desc1><desc2>Windows is full supported and a package is
provided</desc2><desc><desc></desc></desc></element></element></element><element
name='exploitability' title='Exploitability'>
+
+
+
+ <desc></desc><desc><desc></desc></desc><desc>Exploitability
level<desc></desc><desc><desc></desc></desc></desc><element
name='easeofuseergonomics' title='Ease of use, ergonomics'>
+
+
+
+
+
+ <desc></desc><desc0>Difficult to use, requires an in depth knowledge of
the software functionality</desc0><desc1>Austere and very technical
ergonomics</desc1><desc2>GUI including help functions and elaborated
ergonomics</desc2><desc><desc></desc></desc></element><element
name='administrationmonitoring' title='Administration / Monitoring'>
+
+
+
+
+
+ <desc></desc><desc0>No administrative or monitoring
functionalities</desc0><desc1>Existing, functionalities but uncomplete and or
need improvement</desc1><desc2>Complete and easy-to-use administration and
monitoring functionalities. Possible integration with external tools (e.g:
SNMP, syslog,
...)</desc2><desc><desc></desc></desc></element></element><element
name='technicaladaptability' title='Technical adaptability'>
+
+
+
+
+ <desc></desc><desc><desc></desc></desc><desc>Technical
adaptability<desc></desc><desc><desc></desc></desc></desc><element
name='modularity' title='Modularity'>
+
+
+
+
+
+ <desc></desc><desc0>Monolithic software</desc0><desc1>Presence of hight
level modules allowing a first level of software
adaptation</desc1><desc2>Modular conception, allowing easy adaptation of the
software by selecting or creating
modules</desc2><desc><desc></desc></desc></element><element
name='codemodification' title='Code modification'>
+
+
+
+
+
+ <desc></desc><desc0>Everything by hand</desc0><desc1>Recompilation
possible but complex without any tools or
documentation</desc1><desc2>Recompilation with tools (e.g: make, ANT, ...) and
documentation provided</desc2><desc><desc></desc></desc></element><element
name='codeextension' title='Code extention'>
+
+
+
+
+
+ <desc></desc><desc0>Any modification requires code
recompilation</desc0><desc1>Architecture designed for static extension but
requires recompilation</desc1><desc2>Principle of plugin, architecture designed
for dynamic extension without
recompilation</desc2><desc><desc></desc></desc></element></element><element
name='strategy' title='Strategy'>
+
+
+
+
+
+
+
+ <desc></desc><desc><desc></desc></desc><desc>Project's
strategy<desc></desc><desc><desc></desc></desc></desc><element name='license'
title='License'>
+
+
+
+
<desc></desc><desc><desc></desc></desc><desc>License<desc></desc><desc><desc></desc></desc></desc><element
name='permissiveness' title='Permissiveness (only if user wants to become
owner of code)'>
+
+
+
+
+
+ <desc></desc><desc0>Very strict license, like
GPL</desc0><desc1>Moderate permissive license located between both extremes
(GPL and BSD) dual-licensing depending on the type of user (person, company,
...) or their activities</desc1><desc2>Very permissive like BSD or Apache
licenses</desc2><desc><desc></desc></desc></element><element
name='protectionagainstproprietaryforks' title='Protection against proprietary
forks'>
+
+
+
+
+
+ <desc></desc><desc0>Very permissive like BSD or Apache
licenses</desc0><desc1>Moderate permissive license located between both
extremes (GPL and BSD), dual-licensing depending on the type of user (person,
company, ...) or their activies</desc1><desc2>Very strict license, like
GPL</desc2><desc><desc></desc></desc></element></element><element
name='copyrightowners' title='Copyright owners'>
+
+
+
+
+
+ <desc></desc><desc0>Rights held by a few individuals or entities, making
it easier to change the license</desc0><desc1>Rights held by numerous
individuals owning the code in a homogeneous way, making relicense very
difficult</desc1><desc2>Rights held by a legal entity in whom the community
trusts (e.g: FSF or ASF)</desc2><desc><desc></desc></desc></element><element
name='modificationofsourcecode' title='Modification of source code'>
+
+
+
+
+
+ <desc></desc><desc0>No pratical way to propose code
modification</desc0><desc1>Tools provided to access and modify code (like CVS
or SVN) but not really used to develop the software</desc1><desc2>The code
modification process is well defined, exposed and respected, based on roles
assignment</desc2><desc><desc></desc></desc></element><element name='roadmap'
title='Roadmap'>
+
+
+
+
+
+ <desc></desc><desc0>No published roadmap</desc0><desc1>Existing roadmap
without planning</desc1><desc2>Versionned roadmap, with planning and measure of
delays</desc2><desc><desc></desc></desc></element><element name='sponsor'
title='Sponsor'>
+
+
+
+
+
+ <desc></desc><desc0>Software has no sponsor, the core team is not
paid</desc0><desc1>Software has an unique sponsor who might determine its
strategy</desc1><desc2>Software is sponsored by
industry</desc2><desc><desc></desc></desc></element><element
name='strategicalindependence' title='Strategical independence'>
+
+
+
+
+
+ <desc></desc><desc0>No detectable strategy or strong dependency on one
unique actor (person, company, sponsor)</desc0><desc1>Strategical vision shared
with several other free and open source projects but without strong commitment
from copyrights owners</desc1><desc2>Strong independence of the code team,
legal entity holding rights, strong involvement in the standardization
process</desc2><desc><desc></desc></desc></element></element></section><section
name='composant' title='Composants of the project'>
+
+
+
+
+
+ <desc></desc><desc><desc></desc></desc><desc>Different composant from the
groupware<desc></desc><desc><desc></desc></desc></desc><element name='auth'
title='Authentification backend'>
+
+
+
<desc></desc><comment>OpenLDAP</comment><desc><desc></desc></desc><desc>Authentification
backend (ldap, db,
...)<desc></desc><desc><desc></desc></desc></desc></element><element
name='mail' title='Mail'>
+
+
+ <desc></desc><comment>Postfix and
Cyrus-imap</comment><desc><desc></desc></desc><desc>Mail
architecture<desc></desc><desc><desc></desc></desc></desc></element><element
name='storage' title='Storage backend'>
+
+
+ <desc></desc><comment>Content is stored in IMAP shared
folder</comment><desc><desc></desc></desc><desc>Storage
backend<desc></desc><desc><desc></desc></desc></desc></element></section><section
name='administration' title='Administration GUI'>
+
+
+
+
+ <desc></desc><desc><desc></desc></desc><element name='webinterface'
title='Web interface'>
+
+
+
+
+
+ <desc></desc><desc0>No web interface</desc0><desc1>an web interface is
provided but limited</desc1><desc2>everything can be completed with the Web
interface</desc2><score>2</score><desc><desc></desc></desc></element><element
name='commandline' title='Console mode'>
+
+
+
+
+
+ <desc></desc><desc0>Nothing</desc0><desc1>Some tools exists, but limited.
No text based configuration file or not human readable (e.g: complexe
XML)</desc1><desc2>Total access to the server configuration with powerful tools
and well designer text configuration
file</desc2><desc><desc></desc></desc></element><element
name='standaloneadmintool' title='Stand alone admin tool'>
+
+
+
+
+
+ <desc></desc><desc0>Nothing</desc0><desc1>A limited tool exist allow user
to do specific operation</desc1><desc2>A powerful tool give access to every
major features of the
server</desc2><desc><desc></desc></desc></element></section><section
name='groupwarecomposant' title='Supported groupware composant'>
+
+
+
+
+
+ <desc></desc><desc><desc></desc></desc><element name='calendar'
title='Calendar'>
+
+
+
+
+
+ <desc></desc><desc0>no calendar provided</desc0><desc1>a calendar is
provided, but leak some important features</desc1><desc2>a well integrated
calendar is
provided</desc2><score>2</score><desc><desc></desc></desc></element><element
name='taskmanager' title='Taskmanager'>
+
+
+
+
+
+ <desc></desc><desc0>no task manager provided</desc0><desc1>a task manager
is provided but leak some important features</desc1><desc2>Task manager fully
supported</desc2><score>2</score><desc><desc></desc></desc></element><element
name='notemanager' title='Notemanager'>
+
+
+
+
+
+ <desc></desc><desc0>no note manager provided</desc0><desc1>a limited note
manager is provided</desc1><desc2>a well integred note manager is
provided</desc2><score>2</score><desc><desc></desc></desc></element><element
name='contactmanager' title='Contact manager'>
+
+
+
+
+
+ <desc></desc><desc0>can't add contact in the
server</desc0><desc1>contact manager exists but is
limited</desc1><desc2>contact manager fully
supported</desc2><comment>yes</comment><score>2</score><desc><desc></desc></desc></element></section><section
name='standard' title='Standard support'>
+
+
+
+
+
+ <desc></desc><desc><desc></desc></desc><element name='icaloverwebdav'
title='iCalendar over WebDav'>
+
+
+
+
+
+ <desc></desc><desc0>iCalendar over WebDav is not
supported</desc0><desc1>iCalendar over WebDav is partially
supported</desc1><desc2>iCalendar over WebDav
works</desc2><score>1</score><desc><desc></desc></desc></element><element
name='caldav' title='CalDav'>
+
+
+
+
+
+ <desc></desc><desc0>CalDav is not supported</desc0><desc1>CalDav is
partially supported</desc1><desc2>CalDav works</desc2><comment>not
supported</comment><score>0</score><desc><desc></desc></desc></element><element
name='groupdav' title='Groupdav'>
+
+
+
+
+
+ <desc></desc><desc0>Groupdav is not supported</desc0><desc1>Groupdav is
partially supported</desc1><desc2>Groupdav works</desc2><comment>not
supported</comment><score>0</score><desc><desc></desc></desc></element><element
name='syncml' title='SyncML'>
+
+
+
+
+
+ <desc></desc><desc0>SyncML is not supported</desc0><desc1>SyncML is
partially supported</desc1><desc2>SyncML works</desc2><comment>not
supported</comment><score>0</score><desc><desc></desc></desc></element></section><section
name='supportedclients' title='Supported client'>
+
+
+
+
+
+
+ <desc></desc><desc><desc></desc></desc><element name='web' title='Web
client'>
+
+
+
+
+
+ <desc></desc><desc0>Web interface doesn't exist</desc0><desc1>Web
interface is provided but limited or need some work for its
integration</desc1><desc2>Web interface directly provided with the
project</desc2><comment>eGroupware or Hord can be
pluged</comment><score>1</score><desc><desc></desc></desc></element><element
name='outlook' title='Microsoft Outlook'>
+
+
+
+
+
+ <desc></desc><desc0>Microsoft Outlook not
supported</desc0><desc1>Microsoft Outlook connector is provided but have some
limitation</desc1><desc2>a free Microsoft Outlook connector</desc2><comment>Two
commercial and not free connected exist. The best is Toltec's
one.</comment><score>1</score><desc><desc></desc></desc></element><element
name='evolution' title='Novell Evolution'>
+
+
+
+
+
+ <desc></desc><desc0>Novell Evolution can't be
used</desc0><desc1>Novell Evolution can be used but with some
limitation</desc1><desc2>Novell Evolution fully
supported</desc2><score>2</score><desc><desc></desc></desc></element><element
name='kde' title='KDE'>
+
+
+
+
+
+ <desc></desc><desc0>KDE PIM (Korganizer, kmail, ...) can't be used
with this groupware</desc0><desc1>KDE can be used but with some limitation
</desc1><desc2>Fully support of KDE</desc2><comment>KDE PIM was the first
supported
client</comment><score>2</score><desc><desc></desc></desc></element><element
name='ical' title='Apple iCal'>
+
+
+
+
+
+ <desc></desc><desc0>Apple's iCal can't be
used</desc0><desc1>Apple's iCal works but with some
limitation</desc1><desc2>Apple's iCal fully
supported</desc2><score>2</score><desc><desc></desc></desc></element></section><section
name='performance' title='Performance'>
+
+ <desc></desc><desc><desc></desc></desc><element name='loadbalancing'
title='Load balancing'>
+
+
+
+
+
+
+ <desc></desc><desc0>This software can't be
loadbalancer</desc0><desc1>Part of the installation can be splited but it keeps
important bottleneck</desc1><desc2>Loadblalancing just
works</desc2><desc><desc></desc></desc><desc>Can the load be splited between
different
computer?<desc></desc><desc><desc></desc></desc></desc></element></section><section
name='codequality' title='Code quality'>
+
+
+ <desc></desc><desc><desc></desc></desc><element name='remoteapi'
title='Remote access API'>
+
+
+
+
+
+ <desc></desc><desc0>No remote remote API</desc0><desc1>remote API (SOAP,
XML/RPC, REST) exists but is limited or buggy</desc1><desc2>powerful remote API
(SOAP, XML/RPC, REST) provided</desc2><comment>none for Kolab2, a wish for
Kolab3 exists for support of a remote procedure call
infrastucture</comment><score>0</score><desc><desc></desc></desc></element><element
name='api' title='unified API'>
+
+
+
+
+
+ <desc></desc><desc0>No API provided to extend the server, or very limited
and not documented</desc0><desc1>An API is provided but limited of not fully
documented</desc1><desc2>Well documented and complet API</desc2><comment>A Perl
lib is provided but Kolab core can't be change easily. The best way to
extend it, is to provide additional service plugged on the LDAP directory
server.</comment><score>1</score><desc><desc></desc></desc></element></section></document>
\ No newline at end of file
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qsos-commits] qsos/apps/querysos/src/tests TestCommandInterpr...,
Romain PELISSE <=