[evolvis-commits] r13316: Initial code to add remote install & selenium tests
mirabilos at evolvis.org
mirabilos at evolvis.org
Mon Feb 28 02:31:02 CET 2011
Author: mirabilos
Date: 2011-02-28 02:31:02 +0100 (Mon, 28 Feb 2011)
New Revision: 13316
Added:
trunk/gforge_base/evolvisforge-5.1/tests/TarCentos52Tests.php
trunk/gforge_base/evolvisforge-5.1/tests/func/Testing/SeleniumRemoteSuite.php
trunk/gforge_base/evolvisforge-5.1/tests/func/config.php.tests
trunk/gforge_base/evolvisforge-5.1/tests/scripts/
trunk/gforge_base/evolvisforge-5.1/tests/scripts/start_vm.sh
trunk/gforge_base/evolvisforge-5.1/tests/scripts/start_vz.sh
trunk/gforge_base/evolvisforge-5.1/tests/scripts/stop_vm.sh
trunk/gforge_base/evolvisforge-5.1/tests/scripts/stop_vz.sh
Modified:
trunk/gforge_base/evolvisforge-5.1/tests/func/Forums/AllTests.php
trunk/gforge_base/evolvisforge-5.1/tests/func/Forums/forums.php
trunk/gforge_base/evolvisforge-5.1/tests/func/News/AllTests.php
trunk/gforge_base/evolvisforge-5.1/tests/func/News/news.php
trunk/gforge_base/evolvisforge-5.1/tests/func/Site/AllTests.php
trunk/gforge_base/evolvisforge-5.1/tests/func/Site/login.php
trunk/gforge_base/evolvisforge-5.1/tests/func/Site/projects.php
trunk/gforge_base/evolvisforge-5.1/tests/func/Site/top.php
trunk/gforge_base/evolvisforge-5.1/tests/func/Tasks/AllTests.php
trunk/gforge_base/evolvisforge-5.1/tests/func/Tasks/csv.php
trunk/gforge_base/evolvisforge-5.1/tests/func/Testing/SeleniumGforge.php
trunk/gforge_base/evolvisforge-5.1/tests/func/db_reload.php
Log:
Initial code to add remote install & selenium tests
Added: trunk/gforge_base/evolvisforge-5.1/tests/TarCentos52Tests.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/tests/TarCentos52Tests.php (rev 0)
+++ trunk/gforge_base/evolvisforge-5.1/tests/TarCentos52Tests.php 2011-02-28 01:31:02 UTC (rev 13316)
@@ -0,0 +1,59 @@
+<?php
+if (!defined('PHPUnit_MAIN_METHOD')) {
+ define('PHPUnit_MAIN_METHOD', 'AllTests::main');
+}
+
+require_once 'PHPUnit/Framework.php';
+require_once 'PHPUnit/TextUI/TestRunner.php';
+require_once 'func/Testing/SeleniumRemoteSuite.php';
+
+// Selenium based tests
+require_once 'func/Site/AllTests.php';
+//require_once 'Trackers/AllTests.php';
+require_once 'func/Tasks/AllTests.php';
+require_once 'func/Forums/AllTests.php';
+//require_once 'PluginsWiki/AllTests.php';
+//require_once 'PluginsWebSvn/AllTests.php';
+require_once 'func/News/AllTests.php';
+//require_once 'scm/AllTests.php';
+//require_once 'docs/AllTests.php';
+
+class AllTests
+{
+ public static function main()
+ {
+ PHPUnit_TextUI_TestRunner::run(self::suite1());
+ PHPUnit_TextUI_TestRunner::run(self::suite2());
+ }
+
+ public static function suite1()
+ {
+ $suite = new PHPUnit_Framework_TestSuite('PHPUnit');
+
+ // Code tests
+ $suite->addTest(Syntax_AllTests::suite());
+ }
+
+ public static function suite()
+ {
+ $suite = new SeleniumRemoteSuite('PHPUnit');
+
+ // Integration tests (Selenium).
+ $suite->addTest(Site_AllTests::suite());
+// $suite->addTest(Trackers_AllTests::suite());
+ $suite->addTest(Tasks_AllTests::suite());
+ $suite->addTest(Forums_AllTests::suite());
+ $suite->addTest(News_AllTests::suite());
+// $suite->addTest(PluginsWiki_AllTests::suite());
+// $suite->addTest(PluginsWebSvn_AllTests::suite());
+// $suite->addTest(Scm_AllTests::suite());
+// $suite->addTest(Docs_AllTests::suite());
+
+ return $suite;
+ }
+}
+
+if (PHPUnit_MAIN_METHOD == 'AllTests::main') {
+ AllTests::main();
+}
+?>
Property changes on: trunk/gforge_base/evolvisforge-5.1/tests/TarCentos52Tests.php
___________________________________________________________________
Added: svn:executable
+ *
Modified: trunk/gforge_base/evolvisforge-5.1/tests/func/Forums/AllTests.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/tests/func/Forums/AllTests.php 2011-02-28 01:30:58 UTC (rev 13315)
+++ trunk/gforge_base/evolvisforge-5.1/tests/func/Forums/AllTests.php 2011-02-28 01:31:02 UTC (rev 13316)
@@ -50,8 +50,7 @@
require_once 'PHPUnit/Framework.php';
require_once 'PHPUnit/TextUI/TestRunner.php';
-require_once 'Forums/forums.php';
-// ...
+require_once dirname(__FILE__).'/forums.php';
class Forums_AllTests
{
Modified: trunk/gforge_base/evolvisforge-5.1/tests/func/Forums/forums.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/tests/func/Forums/forums.php 2011-02-28 01:30:58 UTC (rev 13315)
+++ trunk/gforge_base/evolvisforge-5.1/tests/func/Forums/forums.php 2011-02-28 01:31:02 UTC (rev 13316)
@@ -43,7 +43,7 @@
* ALONE BASIS."
*/
-require_once 'Testing/SeleniumGforge.php';
+require_once 'func/Testing/SeleniumGforge.php';
class CreateForum extends FForge_SeleniumTestCase
{
Modified: trunk/gforge_base/evolvisforge-5.1/tests/func/News/AllTests.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/tests/func/News/AllTests.php 2011-02-28 01:30:58 UTC (rev 13315)
+++ trunk/gforge_base/evolvisforge-5.1/tests/func/News/AllTests.php 2011-02-28 01:31:02 UTC (rev 13316)
@@ -51,7 +51,6 @@
require_once 'PHPUnit/TextUI/TestRunner.php';
require_once dirname(__FILE__).'/news.php';
-// ...
class News_AllTests
{
@@ -74,4 +73,4 @@
if (PHPUnit_MAIN_METHOD == 'News_AllTests::main') {
Framework_AllTests::main();
}
-?>
\ No newline at end of file
+?>
Modified: trunk/gforge_base/evolvisforge-5.1/tests/func/News/news.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/tests/func/News/news.php 2011-02-28 01:30:58 UTC (rev 13315)
+++ trunk/gforge_base/evolvisforge-5.1/tests/func/News/news.php 2011-02-28 01:31:02 UTC (rev 13316)
@@ -43,7 +43,7 @@
* ALONE BASIS."
*/
-require_once 'Testing/SeleniumGforge.php';
+require_once 'func/Testing/SeleniumGforge.php';
class CreateNews extends FForge_SeleniumTestCase
{
Modified: trunk/gforge_base/evolvisforge-5.1/tests/func/Site/AllTests.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/tests/func/Site/AllTests.php 2011-02-28 01:30:58 UTC (rev 13315)
+++ trunk/gforge_base/evolvisforge-5.1/tests/func/Site/AllTests.php 2011-02-28 01:31:02 UTC (rev 13316)
@@ -50,10 +50,9 @@
require_once 'PHPUnit/Framework.php';
require_once 'PHPUnit/TextUI/TestRunner.php';
-require_once 'Site/projects.php';
-require_once 'Site/top.php';
-require_once 'Site/login.php';
-// ...
+require_once dirname(__FILE__).'/projects.php';
+require_once dirname(__FILE__).'/top.php';
+require_once dirname(__FILE__).'/login.php';
class Site_AllTests
{
Modified: trunk/gforge_base/evolvisforge-5.1/tests/func/Site/login.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/tests/func/Site/login.php 2011-02-28 01:30:58 UTC (rev 13315)
+++ trunk/gforge_base/evolvisforge-5.1/tests/func/Site/login.php 2011-02-28 01:31:02 UTC (rev 13316)
@@ -43,7 +43,7 @@
* ALONE BASIS."
*/
-require_once 'Testing/SeleniumGforge.php';
+require_once 'func/Testing/SeleniumGforge.php';
class LoginProcess extends FForge_SeleniumTestCase
{
Modified: trunk/gforge_base/evolvisforge-5.1/tests/func/Site/projects.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/tests/func/Site/projects.php 2011-02-28 01:30:58 UTC (rev 13315)
+++ trunk/gforge_base/evolvisforge-5.1/tests/func/Site/projects.php 2011-02-28 01:31:02 UTC (rev 13316)
@@ -43,7 +43,7 @@
* ALONE BASIS."
*/
-require_once 'Testing/SeleniumGforge.php';
+require_once 'func/Testing/SeleniumGforge.php';
class CreateProject extends FForge_SeleniumTestCase
{
Modified: trunk/gforge_base/evolvisforge-5.1/tests/func/Site/top.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/tests/func/Site/top.php 2011-02-28 01:30:58 UTC (rev 13315)
+++ trunk/gforge_base/evolvisforge-5.1/tests/func/Site/top.php 2011-02-28 01:31:02 UTC (rev 13316)
@@ -43,7 +43,7 @@
* ALONE BASIS."
*/
-require_once 'Testing/SeleniumGforge.php';
+require_once 'func/Testing/SeleniumGforge.php';
class Top extends FForge_SeleniumTestCase
{
Modified: trunk/gforge_base/evolvisforge-5.1/tests/func/Tasks/AllTests.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/tests/func/Tasks/AllTests.php 2011-02-28 01:30:58 UTC (rev 13315)
+++ trunk/gforge_base/evolvisforge-5.1/tests/func/Tasks/AllTests.php 2011-02-28 01:31:02 UTC (rev 13316)
@@ -50,8 +50,7 @@
require_once 'PHPUnit/Framework.php';
require_once 'PHPUnit/TextUI/TestRunner.php';
-require_once 'Tasks/csv.php';
-// ...
+require_once dirname(__FILE__).'/csv.php';
class Tasks_AllTests
{
Modified: trunk/gforge_base/evolvisforge-5.1/tests/func/Tasks/csv.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/tests/func/Tasks/csv.php 2011-02-28 01:30:58 UTC (rev 13315)
+++ trunk/gforge_base/evolvisforge-5.1/tests/func/Tasks/csv.php 2011-02-28 01:31:02 UTC (rev 13316)
@@ -43,7 +43,7 @@
* ALONE BASIS."
*/
-require_once 'Testing/SeleniumGforge.php';
+require_once 'func/Testing/SeleniumGforge.php';
class ExportCSV extends FForge_SeleniumTestCase
{
Modified: trunk/gforge_base/evolvisforge-5.1/tests/func/Testing/SeleniumGforge.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/tests/func/Testing/SeleniumGforge.php 2011-02-28 01:30:58 UTC (rev 13315)
+++ trunk/gforge_base/evolvisforge-5.1/tests/func/Testing/SeleniumGforge.php 2011-02-28 01:31:02 UTC (rev 13316)
@@ -43,7 +43,7 @@
* ALONE BASIS."
*/
-require_once 'config.php';
+require_once 'func/config.php';
require_once 'PHPUnit/Extensions/SeleniumTestCase.php';
// New class to use, next one is now obsolete.
@@ -51,7 +51,7 @@
{
protected function setUp()
{
- if (defined(DB_INIT_CMD)) {
+ if (defined('DB_INIT_CMD')) {
// Reload a fresh database before running this test suite.
system(DB_INIT_CMD);
}
Added: trunk/gforge_base/evolvisforge-5.1/tests/func/Testing/SeleniumRemoteSuite.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/tests/func/Testing/SeleniumRemoteSuite.php (rev 0)
+++ trunk/gforge_base/evolvisforge-5.1/tests/func/Testing/SeleniumRemoteSuite.php 2011-02-28 01:31:02 UTC (rev 13316)
@@ -0,0 +1,28 @@
+<?php
+
+class SeleniumRemoteSuite extends PHPUnit_Framework_TestSuite
+{
+ protected function setUp()
+ {
+ system("cd scripts; ./start_vm.sh centos52");
+ system("scp ../../build/packages/fusionforge-*allinone.tar.bz2 root at centos52:");
+ system("ssh root at centos52 'tar jxf fusionforge-*allinone.tar.bz2'");
+ system("ssh root at centos52 'cd fusionforge-*; FFORGE_DB=fforge FFORGE_USER=gforge FFORGE_ADMIN_USER=ffadmin FFORGE_ADMIN_PASSWORD=ffadmin ./install.sh centos52.local'");
+
+ system("ssh root at centos52 'mkdir -p /opt/tests/func'");
+ system("scp func/db_reload.php root at centos52:/opt/tests/func/");
+ system("scp func/config.php.tests root at centos52:/opt/tests/func/config.php");
+
+ system("scp /usr/share/php/PHPUnit/Extensions/SeleniumTestCase/*pend.php root at centos52:/opt/tests");
+ system("scp /usr/share/php/PHPUnit/Extensions/SeleniumTestCase/phpunit_coverage.php root at centos52:/opt/gforge/www");
+ //system("ssh root at centos52 'perl -spi -e \'s!^auto_prepend_file.*!auto_prepend_file=/opt/tests/prepend.php!\' /etc/php.ini');
+ //system("ssh root at centos52 'perl -spi -e \'s!^auto_append_file.*!auto_append_file=/opt/tests/append.php!\' /etc/php.ini');
+
+ }
+
+ protected function tearDown()
+ {
+ system("cd scripts; ./stop_vm.sh centos52");
+ }
+}
+?>
Added: trunk/gforge_base/evolvisforge-5.1/tests/func/config.php.tests
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/tests/func/config.php.tests (rev 0)
+++ trunk/gforge_base/evolvisforge-5.1/tests/func/config.php.tests 2011-02-28 01:31:02 UTC (rev 13316)
@@ -0,0 +1,31 @@
+<?php
+/*
+ * DANGER DANGER DANGER DANGER DANGER DANGER DANGER DANGER DANGER
+ * DANGER DANGER DANGER DANGER DANGER DANGER DANGER DANGER DANGER
+ *
+ * Running the test suite will drop your current database, this is
+ * to be used only on test environment.
+ *
+ * DANGER DANGER DANGER DANGER DANGER DANGER DANGER DANGER DANGER
+ * DANGER DANGER DANGER DANGER DANGER DANGER DANGER DANGER DANGER
+ */
+
+// Host where selenium-rc is running
+define ('SELENIUM_RC_HOST', '192.168.0.204');
+
+// URL to access the application
+define ('URL', 'http://centos52.local/');
+
+// Base URL where FusionForge is installed
+define ('BASE', '');
+
+// Database connection parameters.
+define('DB_TYPE', 'pgsql'); // Values: mysql, pgsql
+define('DB_NAME', 'fforge');
+define('DB_USER', 'gforge');
+define('DB_PASSWORD', '@@FFDB_PASS@@');
+define('DB_INIT_CMD', "ssh root at centos52 'cd /tmp; php db_reload.php'");
+
+// Enter true when file is configured.
+define('CONFIGURED', true);
+?>
Property changes on: trunk/gforge_base/evolvisforge-5.1/tests/func/config.php.tests
___________________________________________________________________
Added: svn:executable
+ *
Modified: trunk/gforge_base/evolvisforge-5.1/tests/func/db_reload.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/tests/func/db_reload.php 2011-02-28 01:30:58 UTC (rev 13315)
+++ trunk/gforge_base/evolvisforge-5.1/tests/func/db_reload.php 2011-02-28 01:31:02 UTC (rev 13316)
@@ -53,7 +53,7 @@
ini_set('memory_limit', '16M');
-require_once 'config.php';
+require_once dirname(__FILE__).'/config.php';
if ( !CONFIGURED ) {
print "File 'config.php' is not correctly configured, aborting.\n";
@@ -69,8 +69,8 @@
// Reload a fresh database before running this test suite.
system("mysqladmin -f -u".DB_USER." -p".DB_PASSWORD." drop ".DB_NAME." &>/dev/null");
system("mysqladmin -u".DB_USER." -p".DB_PASSWORD." create ".DB_NAME);
- system("mysql -u".DB_USER." -p".DB_PASSWORD." ".DB_NAME." < ".dirname(dirname(__FILE__))."/db/gforge-struct-mysql.sql");
- system("mysql -u".DB_USER." -p".DB_PASSWORD." ".DB_NAME." < ".dirname(dirname(__FILE__))."/db/gforge-data-mysql.sql");
+ system("mysql -u".DB_USER." -p".DB_PASSWORD." ".DB_NAME." < ".dirname(dirname(__FILE__))."/gforge/db/gforge-struct-mysql.sql");
+ system("mysql -u".DB_USER." -p".DB_PASSWORD." ".DB_NAME." < ".dirname(dirname(__FILE__))."/gforge/db/gforge-data-mysql.sql");
} elseif ( DB_TYPE == 'pgsql') {
if (!function_exists('pg_connect')) {
print "ERROR: Missing pgsql on PHP to run tests on PostgreSQL.\n";
@@ -83,7 +83,7 @@
system("service postgresql restart 2>&1 >/dev/null");
system("su - postgres -c 'dropdb -q ".DB_NAME."'");
system("su - postgres -c 'createdb -q --encoding UNICODE ".DB_NAME."'");
- system("psql -q -U".DB_USER." ".DB_NAME." -f ".dirname(dirname(dirname(__FILE__)))."/db/gforge.sql &>/tmp/gforge-import.log");
+ system("psql -q -U".DB_USER." ".DB_NAME." -f ".dirname(dirname(dirname(__FILE__)))."/gforge/db/gforge.sql &>/tmp/gforge-import.log");
} else {
print "Unsupported database type: ".DB_TYPE. "\n";
exit;
Added: trunk/gforge_base/evolvisforge-5.1/tests/scripts/start_vm.sh
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/tests/scripts/start_vm.sh (rev 0)
+++ trunk/gforge_base/evolvisforge-5.1/tests/scripts/start_vm.sh 2011-02-28 01:31:02 UTC (rev 13316)
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+exec ./start_vz.sh "$@"
Property changes on: trunk/gforge_base/evolvisforge-5.1/tests/scripts/start_vm.sh
___________________________________________________________________
Added: svn:executable
+ *
Added: trunk/gforge_base/evolvisforge-5.1/tests/scripts/start_vz.sh
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/tests/scripts/start_vz.sh (rev 0)
+++ trunk/gforge_base/evolvisforge-5.1/tests/scripts/start_vz.sh 2011-02-28 01:31:02 UTC (rev 13316)
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+sudo /root/start_vz.sh centos-5-i386-default-5.2-20081107 "$1"
+
+rm -f /home/albot/.ssh/known_hosts
+
+ssh -o 'StrictHostKeyChecking=no' root at centos52 uname -a
+
+sleep 1
Property changes on: trunk/gforge_base/evolvisforge-5.1/tests/scripts/start_vz.sh
___________________________________________________________________
Added: svn:executable
+ *
Added: trunk/gforge_base/evolvisforge-5.1/tests/scripts/stop_vm.sh
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/tests/scripts/stop_vm.sh (rev 0)
+++ trunk/gforge_base/evolvisforge-5.1/tests/scripts/stop_vm.sh 2011-02-28 01:31:02 UTC (rev 13316)
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+exec ./stop_vz.sh "$@"
Property changes on: trunk/gforge_base/evolvisforge-5.1/tests/scripts/stop_vm.sh
___________________________________________________________________
Added: svn:executable
+ *
Added: trunk/gforge_base/evolvisforge-5.1/tests/scripts/stop_vz.sh
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/tests/scripts/stop_vz.sh (rev 0)
+++ trunk/gforge_base/evolvisforge-5.1/tests/scripts/stop_vz.sh 2011-02-28 01:31:02 UTC (rev 13316)
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+sudo /root/stop_vz.sh "$1"
Property changes on: trunk/gforge_base/evolvisforge-5.1/tests/scripts/stop_vz.sh
___________________________________________________________________
Added: svn:executable
+ *
More information about the evolvis-commits
mailing list