|
From: <os...@us...> - 2014-03-10 14:14:55
|
Revision: 5187
http://sourceforge.net/p/oscss/svn/5187
Author: oscim
Date: 2014-03-10 14:14:50 +0000 (Mon, 10 Mar 2014)
Log Message:
-----------
Fix UnitTest
Adjust configfile unittest
Modified Paths:
--------------
trunk/catalog/admin/includes/classes/ModTreePage.php
trunk/catalog/admin/includes/modules/pages/customers.php
trunk/test/phpunit/Back/modules/configuration/ConfigurationModuleTest.php
trunk/test/phpunit/Back/modules/pages/pageadmingroupTest.php
trunk/test/phpunit/Back/modules/pages/pagecategoriesTest.php
trunk/test/phpunit/Back/modules/pages/pagecurrencieTest.php
trunk/test/phpunit/Back/modules/pages/pagecustomersTest.php
trunk/test/phpunit/Back/modules/pages/pageproductsTest.php
trunk/test/phpunit/Back/modules/pages/pagesadminusersTest.php
trunk/test/phpunit/Back/modules/pages/pagescountrieTest.php
trunk/test/phpunit/Back/modules/pages/pagesnavigation_linkTest.php
trunk/test/phpunit/Back/modules/pages/pagesserviceTest.php
trunk/test/phpunit/Back/modules/pages/pagesshippingTest.php
trunk/test/phpunit/Back/phpunittest.xml
trunk/test/phpunit/Back/test_nostock.xml
trunk/test/phpunit/Front/no_stock.xml
trunk/test/phpunit/Front/phpunittest.xml
trunk/test/phpunit/Front/test_no_stock.xml
Modified: trunk/catalog/admin/includes/classes/ModTreePage.php
===================================================================
--- trunk/catalog/admin/includes/classes/ModTreePage.php 2014-03-10 13:14:47 UTC (rev 5186)
+++ trunk/catalog/admin/includes/classes/ModTreePage.php 2014-03-10 14:14:50 UTC (rev 5187)
@@ -445,9 +445,6 @@
if(!tep_action_check(self::$action, $class::FILENAME))
tep_redirect(tep_href_link($class::FILENAME));
- // specific ajax call mode return
- $view = in_array(getenv('OSCSS_ENVIRONEMENT'), array('autotesting') );
-
switch(self::$action){
/**
@remarks Ajax View result
@@ -459,19 +456,13 @@
$action = '';
$res = $class::RowStatus(array('status'=>(int)$_GET['flag'], 'id'=>(int)$class::$Id));
- if($view)
- return $res;
- else
- print $res;
+ print $res;
break;
case 'viewflag':
$action = '';
$res = $class::RowHidden(array('hidden'=>(int)$_GET['flag'], 'id'=>(int)$class::$Id));
- if($view)
- return $res;
- else
- print $res;
+ print $res;
break;
/**
Modified: trunk/catalog/admin/includes/modules/pages/customers.php
===================================================================
--- trunk/catalog/admin/includes/modules/pages/customers.php 2014-03-10 13:14:47 UTC (rev 5186)
+++ trunk/catalog/admin/includes/modules/pages/customers.php 2014-03-10 14:14:50 UTC (rev 5187)
@@ -857,7 +857,7 @@
@remarks Ajax View result
*/
case 'setflagda':
- return self::RowStatusDa(array('group_ra'=>(int)$_GET['flag'], 'id'=>(int)self::$Id));
+ return self::GenericRowsFlag(self::$Id, 'group_ra', 'setflagda');/// RowStatusDa(array('group_ra'=>(int)$_GET['flag'], 'id'=>(int)self::$Id));
break;
/**
@@ -894,26 +894,7 @@
}
- /**
- @brief return format html for row
- @param $product array restuts row
- @return string html
- */
-// public static function RowStatusDa($customers){
-//
-// $exclude=array('action','cID','forceajax','type','class','function','funct', 'mod');
-// $query_s='action=setflagda&cID=' . $customers['id'].'&flag=';
-//
-// return '<a class="ajaxinline" href="' . tep_href_link(self::FILENAME, tep_get_all_get_params($exclude).$query_s.(($customers['group_ra'] == '1')? '0' : '1') ) . '">'.
-// sprintf(
-// CsrtAction::getFormat('row_etat'),
-// (int)$customers['group_ra'],
-// ( ($customers['group_ra'] == '1')? IMAGE_ICON_STATUS_GREEN : IMAGE_ICON_STATUS_RED)
-// ).
-// '</a>';
-// }
-
/**
@fn ButtonRowsActions($orders)
@brief fonction qui construit l'affichage de la colonne action
Modified: trunk/test/phpunit/Back/modules/configuration/ConfigurationModuleTest.php
===================================================================
--- trunk/test/phpunit/Back/modules/configuration/ConfigurationModuleTest.php 2014-03-10 13:14:47 UTC (rev 5186)
+++ trunk/test/phpunit/Back/modules/configuration/ConfigurationModuleTest.php 2014-03-10 14:14:50 UTC (rev 5187)
@@ -105,32 +105,38 @@
@brief test methode conf and static vars
@depends testallmodulesgenericConf
*/
-// public function testallmodulesgenericDrawHeader($arrtmp){
-//
-// foreach($arrtmp as $key=>$row){
-//
-// $val = $row->draw_header();
-//
-// if( $val === false )
-// $this->assertTrue ( false , 'Error load subschilds mod draw_header() type configuration for '.$key ) ;
-// }
-// }
+ public function testallmodulesgenericDrawHeader($arrtmp){
+ foreach($arrtmp as $key=>$row){
+
+ ob_start();
+ $row->draw_header();
+ $val = ob_get_contents();
+ ob_end_clean();
+
+ if( $val === false )
+ $this->assertTrue ( false , 'Error load subschilds mod draw_header() type configuration for '.$key ) ;
+ }
+ }
+
/**
@brief test methode conf and static vars
@depends testallmodulesgenericConf
*/
-// public function testallmodulesgenericDraw($arrtmp){
-//
-// foreach($arrtmp as $key=>$row){
-//
-// $val = $row->draw();
-//
-// if( $val === false )
-// $this->assertTrue ( false , 'Error load subschilds mod draw() type configuration for '.$key ) ;
-// }
-// }
+ public function testallmodulesgenericDraw($arrtmp){
+ foreach($arrtmp as $key=>$row){
+
+ ob_start();
+ $row->draw();
+ $val = ob_get_contents();
+ ob_end_clean();
+
+ if( $val === false )
+ $this->assertTrue ( false , 'Error load subschilds mod draw() type configuration for '.$key ) ;
+ }
+ }
+
}
?>
\ No newline at end of file
Modified: trunk/test/phpunit/Back/modules/pages/pageadmingroupTest.php
===================================================================
--- trunk/test/phpunit/Back/modules/pages/pageadmingroupTest.php 2014-03-10 13:14:47 UTC (rev 5186)
+++ trunk/test/phpunit/Back/modules/pages/pageadmingroupTest.php 2014-03-10 14:14:50 UTC (rev 5187)
@@ -101,7 +101,10 @@
$get['forceajax'] = 1;
$res = $this->CallGetDBValue($objtmp,$action, $get);
- $res = $this->CheckAction($objtmp);
+ ob_start();
+ $this->CheckAction($objtmp);
+ $res = ob_get_contents();
+ ob_end_clean();
$this->assertTrue ( ( strlen($res) >150) , 'Error retrun action::'.$action) ;
@@ -118,7 +121,9 @@
$res = $this->CallGetDBValue($objtmp,$action, $get);
$res = $this->CheckAction($objtmp);
- $this->assertTrue ( ( strlen($res) > 2000) , 'Error retrun action::'.$action ) ;
+
+
+ $this->assertTrue ( ( strlen($res) > 100) , 'Error retrun action::'.$action ) ;
}
Modified: trunk/test/phpunit/Back/modules/pages/pagecategoriesTest.php
===================================================================
--- trunk/test/phpunit/Back/modules/pages/pagecategoriesTest.php 2014-03-10 13:14:47 UTC (rev 5186)
+++ trunk/test/phpunit/Back/modules/pages/pagecategoriesTest.php 2014-03-10 14:14:50 UTC (rev 5187)
@@ -114,7 +114,10 @@
$res = $this-> CallGetDBValue($objtmp,$action, $get);
- $res = $this->CheckAction($objtmp);
+ ob_start();
+ $this->CheckAction($objtmp);
+ $res = ob_get_contents();
+ ob_end_clean();
$this->assertTrue ( ( strlen($res) >300) , 'Error retrun action::'.$action) ;
@@ -129,7 +132,10 @@
$res = $this-> CallGetDBValue($objtmp,$action, $get);
- $res = $this->CheckAction($objtmp);
+ ob_start();
+ $this->CheckAction($objtmp);
+ $res = ob_get_contents();
+ ob_end_clean();
$this->assertTrue ( ( strlen($res) >300) , 'Error retrun action::'.$action) ;
}
Modified: trunk/test/phpunit/Back/modules/pages/pagecurrencieTest.php
===================================================================
--- trunk/test/phpunit/Back/modules/pages/pagecurrencieTest.php 2014-03-10 13:14:47 UTC (rev 5186)
+++ trunk/test/phpunit/Back/modules/pages/pagecurrencieTest.php 2014-03-10 14:14:50 UTC (rev 5187)
@@ -93,23 +93,26 @@
@brief test display flag action
@depends testcurrenciesGetDBValue
*/
-// public function testcurrenciesPrintFlag($objtmp){
-//
-// $action = 'setflag';
-// $get = array();
-// $get['flag'] = 1;
-// $get['cID'] = 1;
-// $get['forceajax'] = 1;
-//
-// $res = $this-> CallGetDBValue($objtmp,$action, $get);
-//
-// $res = $this->CheckAction($objtmp);
-//
-//
-// $this->assertTrue ( ( strlen($res) >150) , 'Error retrun action::'.$action) ;
-//
-// }
+ public function testcurrenciesPrintFlag($objtmp){
+ $action = 'setflag';
+ $get = array();
+ $get['flag'] = 1;
+ $get['cID'] = 1;
+ $get['forceajax'] = 1;
+
+ $res = $this-> CallGetDBValue($objtmp,$action, $get);
+
+ ob_start();
+ $this->CheckAction($objtmp);
+ $res = ob_get_contents();
+ ob_end_clean();
+
+
+ $this->assertTrue ( ( strlen($res) >150) , 'Error retrun action::'.$action) ;
+
+ }
+
/**
@brief test display form new customers
@depends testcurrenciesGetDBValue
Modified: trunk/test/phpunit/Back/modules/pages/pagecustomersTest.php
===================================================================
--- trunk/test/phpunit/Back/modules/pages/pagecustomersTest.php 2014-03-10 13:14:47 UTC (rev 5186)
+++ trunk/test/phpunit/Back/modules/pages/pagecustomersTest.php 2014-03-10 14:14:50 UTC (rev 5187)
@@ -122,9 +122,12 @@
$get['forceajax'] = 1;
$res = $this->CallGetDBValue($objtmp,$action, $get);
- $res = $this->CheckAction($objtmp);
-// var_dump($res);
-// exit;
+
+ ob_start();
+ $this->CheckAction($objtmp);
+ $res = ob_get_contents();
+ ob_end_clean();
+
$this->assertTrue ( ( strlen($res) >300) , 'Error retrun action::'.$action) ;
$action = 'setflagda';
@@ -135,7 +138,11 @@
$get['forceajax'] = 1;
$res = $this->CallGetDBValue($objtmp,$action, $get);
- $res = $this->CheckAction($objtmp);
+
+ ob_start();
+ $this->CheckAction($objtmp);
+ $res = ob_get_contents();
+ ob_end_clean();
$this->assertTrue ( ( strlen($res) >300) , 'Error retrun action::'.$action) ;
}
@@ -156,7 +163,10 @@
$get['forceajax'] = 1;
$res = $this->CallGetDBValue($objtmp,$action, $get);
- $res = $this->CheckAction($objtmp);
+ ob_start();
+ $this->CheckAction($objtmp);
+ $res = ob_get_contents();
+ ob_end_clean();
$this->assertTrue ( ( strlen($res) > 100) , 'Error retrun action::'.$action ) ;
}
Modified: trunk/test/phpunit/Back/modules/pages/pageproductsTest.php
===================================================================
--- trunk/test/phpunit/Back/modules/pages/pageproductsTest.php 2014-03-10 13:14:47 UTC (rev 5186)
+++ trunk/test/phpunit/Back/modules/pages/pageproductsTest.php 2014-03-10 14:14:50 UTC (rev 5187)
@@ -80,7 +80,7 @@
// $res = products::tep_get_list();
$action = 'listing';
$get = array();
-// $get['pID'] = self::$Id;
+// $get['cID'] = self::$Id;
$res = $this->CallGetDBValue($objtmp,$action, $get);
@@ -118,7 +118,7 @@
// action default : Edit
$action = 'edit';
$get = array();
- $get['pID'] = self::$Id;
+ $get['cID'] = self::$Id;
$res = $this->CallGetDBValue($objtmp,$action, $get);
@@ -157,7 +157,7 @@
// action default : Edit
$action = 'delete';
$get = array();
- $get['pID'] = self::$Id;
+ $get['cID'] = self::$Id;
$res = $this->CallGetDBValue($objtmp,$action, $get);
@@ -191,22 +191,27 @@
@brief test display flag action
@depends testproductsConf
*/
-// public function testproductsPrintFlag($objtmp){
-//
-// $action = 'setflag';
-// $get = array();
-// $get['flag'] = 1;
-// $get['pID'] = 1;
-//
-// $get['forceajax'] = 1;
-//
-// $res = $this->CallGetDBValue($objtmp,$action, $get);
-// $res = $this->CheckAction($objtmp);
-//
-// $this->assertTrue ( ( strlen($res) >300) , 'Error retrun action::'.$action) ;
-//
-// }
+ public function testproductsPrintFlag($objtmp){
+ $action = 'setflag';
+ $get = array();
+ $get['flag'] = 1;
+ $get['cID'] = 1;
+
+ $get['forceajax'] = 1;
+
+
+
+ ob_start();
+ $this->CallGetDBValue($objtmp,$action, $get);
+ $this->CheckAction($objtmp);
+ $res = ob_get_contents();
+ ob_end_clean();
+
+ $this->assertTrue ( ( strlen($res) >300) , 'Error retrun action::'.$action) ;
+
+ }
+
/**
@brief test display form new customers
@depends testproductsConf
@@ -231,7 +236,7 @@
$action = 'edit';
$get = array();
- $get['pID'] = 1;
+ $get['cID'] = 1;
$res = $this->CallGetDBValue($objtmp,$action, $get);
$res = $this->CheckAction($objtmp);
@@ -247,7 +252,7 @@
$action = 'delete';
$get = array();
- $get['pID'] = 1;
+ $get['cID'] = 1;
$res = $this->CallGetDBValue($objtmp,$action, $get);
$res = $this->CheckAction($objtmp);
Modified: trunk/test/phpunit/Back/modules/pages/pagesadminusersTest.php
===================================================================
--- trunk/test/phpunit/Back/modules/pages/pagesadminusersTest.php 2014-03-10 13:14:47 UTC (rev 5186)
+++ trunk/test/phpunit/Back/modules/pages/pagesadminusersTest.php 2014-03-10 14:14:50 UTC (rev 5187)
@@ -101,7 +101,11 @@
$get['forceajax'] = 1;
$res = $this->CallGetDBValue($objtmp,$action, $get);
- $res = $this->CheckAction($objtmp);
+
+ ob_start();
+ $this->CheckAction($objtmp);
+ $res = ob_get_contents();
+ ob_end_clean();
$this->assertTrue ( ( strlen($res) >150) , 'Error retrun action::'.$action) ;
Modified: trunk/test/phpunit/Back/modules/pages/pagescountrieTest.php
===================================================================
--- trunk/test/phpunit/Back/modules/pages/pagescountrieTest.php 2014-03-10 13:14:47 UTC (rev 5186)
+++ trunk/test/phpunit/Back/modules/pages/pagescountrieTest.php 2014-03-10 14:14:50 UTC (rev 5187)
@@ -103,7 +103,10 @@
$res = $this-> CallGetDBValue($objtmp,$action, $get);
- $res = $this->CheckAction($objtmp);
+ ob_start();
+ $this->CheckAction($objtmp);
+ $res = ob_get_contents();
+ ob_end_clean();
$this->assertTrue ( ( strlen($res) >300) , 'Error retrun action::'.$action) ;
Modified: trunk/test/phpunit/Back/modules/pages/pagesnavigation_linkTest.php
===================================================================
--- trunk/test/phpunit/Back/modules/pages/pagesnavigation_linkTest.php 2014-03-10 13:14:47 UTC (rev 5186)
+++ trunk/test/phpunit/Back/modules/pages/pagesnavigation_linkTest.php 2014-03-10 14:14:50 UTC (rev 5187)
@@ -103,7 +103,10 @@
$res = $this-> CallGetDBValue($objtmp,$action, $get);
- $res = $this->CheckAction($objtmp);
+ ob_start();
+ $this->CheckAction($objtmp);
+ $res = ob_get_contents();
+ ob_end_clean();
$this->assertTrue ( ( strlen($res) >300) , 'Error retrun action::'.$action) ;
Modified: trunk/test/phpunit/Back/modules/pages/pagesserviceTest.php
===================================================================
--- trunk/test/phpunit/Back/modules/pages/pagesserviceTest.php 2014-03-10 13:14:47 UTC (rev 5186)
+++ trunk/test/phpunit/Back/modules/pages/pagesserviceTest.php 2014-03-10 14:14:50 UTC (rev 5187)
@@ -103,7 +103,10 @@
$res = $this-> CallGetDBValue($objtmp,$action, $get);
- $res = $this->CheckAction($objtmp);
+ ob_start();
+ $this->CheckAction($objtmp);
+ $res = ob_get_contents();
+ ob_end_clean();
$this->assertTrue ( ( strlen($res) >300) , 'Error retrun action::'.$action) ;
Modified: trunk/test/phpunit/Back/modules/pages/pagesshippingTest.php
===================================================================
--- trunk/test/phpunit/Back/modules/pages/pagesshippingTest.php 2014-03-10 13:14:47 UTC (rev 5186)
+++ trunk/test/phpunit/Back/modules/pages/pagesshippingTest.php 2014-03-10 14:14:50 UTC (rev 5187)
@@ -101,7 +101,10 @@
$res = $this-> CallGetDBValue($objtmp,$action, $get);
- $res = $this->CheckAction($objtmp);
+ ob_start();
+ $this->CheckAction($objtmp);
+ $res = ob_get_contents();
+ ob_end_clean();
$this->assertTrue ( ( strlen($res) >300) , 'Error retrun action::'.$action) ;
Modified: trunk/test/phpunit/Back/phpunittest.xml
===================================================================
--- trunk/test/phpunit/Back/phpunittest.xml 2014-03-10 13:14:47 UTC (rev 5186)
+++ trunk/test/phpunit/Back/phpunittest.xml 2014-03-10 14:14:50 UTC (rev 5187)
@@ -101,8 +101,13 @@
<filter>
<blacklist>
+ <file>../../../catalog/common/classes/Template.php</file>
+
<file>../../../catalog/common/classes/Database.php</file>
+ <directory>../../../catalog/common/classes/sql_drivers/</directory>
+
<file>../../../catalog/common/classes/fpdf.php</file>
+
<file>../../../catalog/common/classes/PHPMailer.php</file>
</blacklist>
</filter>
Modified: trunk/test/phpunit/Back/test_nostock.xml
===================================================================
--- trunk/test/phpunit/Back/test_nostock.xml 2014-03-10 13:14:47 UTC (rev 5186)
+++ trunk/test/phpunit/Back/test_nostock.xml 2014-03-10 14:14:50 UTC (rev 5187)
@@ -71,9 +71,16 @@
<filter>
<blacklist>
+ <file>../../../catalog/common/classes/Template.php</file>
+
<file>../../../catalog/common/classes/Database.php</file>
+ <directory>../../../catalog/common/classes/sql_drivers/</directory>
+
<file>../../../catalog/common/classes/fpdf.php</file>
+
<file>../../../catalog/common/classes/PHPMailer.php</file>
+ <directory>../../../catalog/common/classes/mailer_drivers/</directory>
+
</blacklist>
</filter>
</phpunit>
\ No newline at end of file
Modified: trunk/test/phpunit/Front/no_stock.xml
===================================================================
--- trunk/test/phpunit/Front/no_stock.xml 2014-03-10 13:14:47 UTC (rev 5186)
+++ trunk/test/phpunit/Front/no_stock.xml 2014-03-10 14:14:50 UTC (rev 5187)
@@ -1,11 +1,11 @@
<phpunit>
<logging>
- <log type="coverage-html" target="../../../html/rapport/front/" charset="UTF-8"
+ <log type="coverage-html" target="../../../html/rapport/front/nostock/" charset="UTF-8"
yui="true" highlight="false"
lowUpperBound="35" highLowerBound="70"/>
<!-- <log type="json" target="../../../html/json/logfile.json"/> -->
- <log type="testdox-html" target="../../../html/test/doc/front/testdox.html" yui="true" highlight="false"/>
+ <log type="testdox-html" target="../../../html/test/doc/front/nostock/testdox.html" yui="true" highlight="false"/>
</logging>
<php>
@@ -41,9 +41,16 @@
<filter>
<blacklist>
+ <file>../../../catalog/common/classes/Template.php</file>
+
<file>../../../catalog/common/classes/Database.php</file>
+ <directory>../../../catalog/common/classes/sql_drivers/</directory>
+
<file>../../../catalog/common/classes/fpdf.php</file>
+
<file>../../../catalog/common/classes/PHPMailer.php</file>
+ <directory>../../../catalog/common/classes/mailer_drivers/</directory>
+
</blacklist>
</filter>
</phpunit>
\ No newline at end of file
Modified: trunk/test/phpunit/Front/phpunittest.xml
===================================================================
--- trunk/test/phpunit/Front/phpunittest.xml 2014-03-10 13:14:47 UTC (rev 5186)
+++ trunk/test/phpunit/Front/phpunittest.xml 2014-03-10 14:14:50 UTC (rev 5187)
@@ -1,11 +1,11 @@
<phpunit>
<logging>
- <log type="coverage-html" target="../../../html/rapport/front/" charset="UTF-8"
+ <log type="coverage-html" target="../../../html/rapport/front/all/" charset="UTF-8"
yui="true" highlight="false"
lowUpperBound="35" highLowerBound="70"/>
<!-- <log type="json" target="../../../html/json/logfile.json"/> -->
- <log type="testdox-html" target="../../../html/test/doc/front/testdox.html" yui="true" highlight="false"/>
+ <log type="testdox-html" target="../../../html/test/doc/front/all/testdox.html" yui="true" highlight="false"/>
</logging>
<php>
@@ -41,9 +41,16 @@
<filter>
<blacklist>
+ <file>../../../catalog/common/classes/Template.php</file>
+
<file>../../../catalog/common/classes/Database.php</file>
+ <directory>../../../catalog/common/classes/sql_drivers/</directory>
+
<file>../../../catalog/common/classes/fpdf.php</file>
+
<file>../../../catalog/common/classes/PHPMailer.php</file>
+ <directory>../../../catalog/common/classes/mailer_drivers/</directory>
+
</blacklist>
</filter>
</phpunit>
\ No newline at end of file
Modified: trunk/test/phpunit/Front/test_no_stock.xml
===================================================================
--- trunk/test/phpunit/Front/test_no_stock.xml 2014-03-10 13:14:47 UTC (rev 5186)
+++ trunk/test/phpunit/Front/test_no_stock.xml 2014-03-10 14:14:50 UTC (rev 5187)
@@ -1,11 +1,11 @@
<phpunit>
<logging>
- <log type="coverage-html" target="../../../html/rapport/front/" charset="UTF-8"
+ <log type="coverage-html" target="../../../html/rapport/front/nostock/" charset="UTF-8"
yui="true" highlight="false"
lowUpperBound="35" highLowerBound="70"/>
<!-- <log type="json" target="../../../html/json/logfile.json"/> -->
- <log type="testdox-html" target="../../../html/test/doc/front/testdox.html" yui="true" highlight="false"/>
+ <log type="testdox-html" target="../../../html/test/doc/front/nostock/testdox.html" yui="true" highlight="false"/>
</logging>
<php>
@@ -41,9 +41,16 @@
<filter>
<blacklist>
+ <file>../../../catalog/common/classes/Template.php</file>
+
<file>../../../catalog/common/classes/Database.php</file>
+ <directory>../../../catalog/common/classes/sql_drivers/</directory>
+
<file>../../../catalog/common/classes/fpdf.php</file>
+
<file>../../../catalog/common/classes/PHPMailer.php</file>
+ <directory>../../../catalog/common/classes/mailer_drivers/</directory>
+
</blacklist>
</filter>
</phpunit>
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|