* [Cluster-devel] conga/luci/test CGA_0200_Create_cluster.py con ...
@ 2006-12-14 20:01 ldimaggi
0 siblings, 0 replies; 4+ messages in thread
From: ldimaggi @ 2006-12-14 20:01 UTC (permalink / raw)
To: cluster-devel.redhat.com
CVSROOT: /cvs/cluster
Module name: conga
Changes by: ldimaggi at sourceware.org 2006-12-14 20:01:40
Modified files:
luci/test : CGA_0200_Create_cluster.py congaDemoTests.py
conga_Helpers.py conga_suite.py loggerObject.py
Added files:
luci/test : CGA_0170_Online_Documentation_Portlet.py
Removed files:
luci/test : CGA_0170_Online_Documenation_Portlet.py
Log message:
Added a 2-layer logging model. Pyunit generated text is written to a log file, debug/info/etc. messages are written to a debug log file.
Also corrected the name of: CGA_0170_Online_Documentation_Portlet.py
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/test/CGA_0170_Online_Documentation_Portlet.py.diff?cvsroot=cluster&r1=NONE&r2=1.1
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/test/CGA_0200_Create_cluster.py.diff?cvsroot=cluster&r1=1.1&r2=1.2
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/test/congaDemoTests.py.diff?cvsroot=cluster&r1=1.7&r2=1.8
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/test/conga_Helpers.py.diff?cvsroot=cluster&r1=1.9&r2=1.10
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/test/conga_suite.py.diff?cvsroot=cluster&r1=1.6&r2=1.7
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/test/loggerObject.py.diff?cvsroot=cluster&r1=1.1&r2=1.2
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/test/CGA_0170_Online_Documenation_Portlet.py.diff?cvsroot=cluster&r1=1.2&r2=NONE
/cvs/cluster/conga/luci/test/CGA_0170_Online_Documentation_Portlet.py,v --> standard output
revision 1.1
--- conga/luci/test/CGA_0170_Online_Documentation_Portlet.py
+++ - 2006-12-14 20:01:41.217375000 +0000
@@ -0,0 +1,91 @@
+#! /usr/bin/env python
+
+# Copyright Red Hat, Inc. 2006
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; either version 2, or (at your option) any
+# later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING. If not, write to the
+# Free Software Foundation, Inc., 675 Mass Ave, Cambridge,
+# MA 02139, USA.
+
+'''
+Script name: GA_0170_Online_Documentation_Portlet.py
+Creation date: Dec 2006
+Purpose: Prototype automated GUI test for RHEL5 Conga (luci server web app) - automated
+ with Selenium RC (remote control) 0.9.0
+Summary: Test for Conga use case CGA-0170 - verify the online user documentation
+ Regression test for: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=212991
+'''
+
+__author__ = 'Len DiMaggio <ldimaggi@redhat.com>'
+
+from selenium import selenium
+import unittest, time, re
+from conga_Helpers import *
+import time
+import logging
+from loggerObject import loggerObject
+
+class CGA_0170_Online_Documentation_Portlet (unittest.TestCase):
+
+ def setUp(self):
+
+ # Set up logging
+ self.theloggerObject = setupLogger (CONGA_DEBUG_LOG)
+ self.logger = self.theloggerObject.getLogger()
+ self.logger.info('-----------------------------------------------------------')
+
+ """Establish connection to selenium server, login to luci """
+ self.verificationErrors = []
+ self.selenium = login (CONGA_ADMIN_USERNAME, CONGA_ADMIN_PASSWORD)
+
+ """Test to create and delete storage systems"""
+ sel = self.selenium
+
+ def test_docs(self):
+ """Test to verify on-line Help docs"""
+ self.logger.info('Starting test case CGA_0170_Online_Documentation_Portlet.test_docs')
+
+ sel = self.selenium
+
+ # Access the on-line help
+ sel.click("link=help")
+ sel.wait_for_pop_up("Conga Help", "30000")
+ sel.select_window('Conga Help')
+
+ # Grab all the text
+ theText = sel.get_html_source()
+
+ # Validation - check the offsets for the items in the HELP list
+ for theItem in HELP_LIST:
+ self.logger.debug('Verify offset of help text "' + theItem + '" = ' + str(theText.index(theItem)))
+ self.assertEqual (theText.index(theItem), HELP_DICTIONARY[theItem])
+
+ # Select the main window
+ sel.select_window('null')
+
+ self.logger.info('Ending test case CGA_0170_Online_Documentation_Portlet.test_docs')
+
+ def tearDown(self):
+ """Logout and stop Selenium session"""
+ logout(self.selenium)
+ self.assertEqual([], self.verificationErrors)
+ closeLogger (self.theloggerObject)
+
+def suite():
+ suite = unittest.TestSuite()
+ suite.addTest(CGA_0170_Online_Documentation_Portlet('test_docs'))
+ return suite
+
+if __name__ == "__main__":
+ #unittest.main()
+ unittest.TextTestRunner( verbosity=2 ).run( suite() )
--- conga/luci/test/CGA_0200_Create_cluster.py 2006/12/08 16:17:23 1.1
+++ conga/luci/test/CGA_0200_Create_cluster.py 2006/12/14 20:01:40 1.2
@@ -34,6 +34,11 @@
class CGA_0200_Create_cluster(unittest.TestCase):
def setUp(self):
+ # Set up logging
+ self.theloggerObject = setupLogger (CONGA_DEBUG_LOG)
+ self.logger = self.theloggerObject.getLogger()
+ self.logger.info('-----------------------------------------------------------')
+
"""Establish connection to selenium server, login to luci """
self.verificationErrors = []
self.selenium = login (CONGA_ADMIN_USERNAME, CONGA_ADMIN_PASSWORD)
@@ -41,6 +46,8 @@
def test_congaCluster(self):
"""Test to create and delete a cluster"""
+ self.logger.info('Starting test case CGA_0200_Create_cluster.test_congaCluster')
+
# TODO - Need to generalize this function - but as of 20061129, note tng3-1
# is not responding to the creation of a cluster
sel = self.selenium
@@ -52,7 +59,7 @@
# Create the new "testCluster" cluster
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
sel.type("clusterName", "testCluster")
- print 'Create cluster: testCluster'
+ self.logger.debug('Create cluster: testCluster')
# Add the nodes to the cluster
# Needed to generalize statements like this:
@@ -86,7 +93,7 @@
# in the luci web app - need to build a way to delete /etc/cluster/cluster.conf
# and stop cman service on cluster nodes - TODO - see bug #
# https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=213076
- print 'Delete cluster: testCluster'
+ self.logger.debug('Delete cluster: testCluster')
sel.click("name=__CLUSTER:testCluster")
sel.click("document.adminform.Submit")
sel.wait_for_page_to_load("30000")
@@ -102,10 +109,13 @@
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
self.assertTrue (sel.is_text_present('Removed storage system "' + systemName + '" successfully'))
+ self.logger.info('Ending test case CGA_0200_Create_cluster.test_congaCluster')
+
def tearDown(self):
"""Logout and stop Selenium session"""
logout(self.selenium)
self.assertEqual([], self.verificationErrors)
+ closeLogger (self.theloggerObject)
def suite():
suite = unittest.TestSuite()
--- conga/luci/test/congaDemoTests.py 2006/12/14 02:12:41 1.7
+++ conga/luci/test/congaDemoTests.py 2006/12/14 20:01:40 1.8
@@ -37,26 +37,23 @@
def setUp(self):
- self.testName = "congaDemoTests"
+ # Set up logging
+ self.theloggerObject = setupLogger (CONGA_DEBUG_LOG)
+ self.logger = self.theloggerObject.getLogger()
+ self.logger.info('-----------------------------------------------------------')
"""Establish connection to selenium server, login to luci """
self.verificationErrors = []
- self.selenium = login (CONGA_ADMIN_USERNAME, CONGA_ADMIN_PASSWORD)
+ self.selenium = login (CONGA_ADMIN_USERNAME, CONGA_ADMIN_PASSWORD)
def test_congaStorage(self):
"""Test to create and delete storage systems"""
-
- # Set up logging
- self.testName = "congaDemoTests.test_congaStorage"
- self.theloggerObject = setupLogger (self.testName)
- self.logger = self.theloggerObject.getLogger()
- self.logger.info('Starting test case ' + self.testName)
-
+ self.logger.info('Starting test case congaDemoTests.test_congaStorage')
sel = self.selenium
# Create the storage systems
for systemName in CONGA_STORAGE_SYSTEMS:
- createStorageSystem(sel, systemName, CONGA_STORAGE_SYSTEMS[systemName])
+ createStorageSystem(sel, systemName, CONGA_STORAGE_SYSTEMS[systemName], self.logger)
# Validation - verify that the success message was displayed for each storage system
self.assertEqual("Do you really want to add the following Storage Systems:\n" + systemName, sel.get_confirmation())
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
@@ -69,34 +66,22 @@
# Delete the storage systems
for systemName in CONGA_STORAGE_SYSTEMS:
- deleteStorageSystem(sel, systemName)
+ deleteStorageSystem(sel, systemName, self.logger)
# Validation - verify that the success message was displayed for each storage system
self.assertEqual("Do you really want to remove the following managed systems:\nStorage Systems:\n-" + systemName, sel.get_confirmation())
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
self.assertTrue (sel.is_text_present('Removed storage system "' + systemName + '" successfully'))
- self.logger.info('Ending test case test_congaStorage')
- closeLogger (self.theloggerObject)
+ self.logger.info('Ending test case congaDemoTests.test_congaStorage')
def test_congaUsers(self):
"""Test to create and delete conga users"""
-
- self.testName = "congaDemoTests.test_congaUsers"
- self.theloggerObject = setupLogger (self.testName)
- self.logger = self.theloggerObject.getLogger()
- self.logger.info('Starting test case ' + self.testName)
-
- # Set up logging
- self.testName = "congaDemoTests.test_congaUsers"
- self.theloggerObject = setupLogger (self.testName)
- self.logger = self.theloggerObject.getLogger()
- self.logger.info('Starting test case ' + self.testName)
-
+ self.logger.info('Starting test case congaDemoTests.test_congaUsers')
sel = self.selenium
# Create the users
for userName in CONGA_USERS.keys():
- createUser (sel, userName, CONGA_USERS[userName])
+ createUser (sel, userName, CONGA_USERS[userName], self.logger)
# Validation - verify that the success message was displayed for each user
self.assertEqual('Do you really want to add the user "' + userName + '"?', sel.get_confirmation())
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
@@ -108,29 +93,17 @@
# Delete the users
for userName in CONGA_USERS.keys():
- deleteUser (sel, userName)
+ deleteUser (sel, userName, self.logger)
# Validation - verify that the success message was displayed for each user
self.assertEqual('Do you really want to remove the user "' + userName + '"?', sel.get_confirmation())
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
self.assertTrue (sel.is_text_present('User "' + userName + '" has been deleted'))
- self.logger.info('Ending test case test_congaUsers')
- closeLogger (self.theloggerObject)
+ self.logger.info('Ending test case congaDemoTests.test_congaUsers')
def test_congaCluster(self):
"""Test to create and delete a cluster"""
-
- self.testName = "congaDemoTests.test_congaCluster"
- self.theloggerObject = setupLogger (self.testName)
- self.logger = self.theloggerObject.getLogger()
- self.logger.info('Starting test case ' + self.testName)
-
- # Set up logging
- self.testName = "congaDemoTests.test_congaCluster"
- self.theloggerObject = setupLogger (self.testName)
- self.logger = self.theloggerObject.getLogger()
- self.logger.info('Starting test case ' + self.testName)
-
+ self.logger.info('Starting test case congaDemoTests.test_congaCluster')
sel = self.selenium
sel.open("/luci/homebase")
@@ -141,7 +114,7 @@
# Create the new "testCluster" cluster
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
sel.type("clusterName", "testCluster")
- print 'Create cluster: testCluster'
+ self.logger.debug('Create cluster: testCluster')
# Add the nodes to the cluster
# Needed to generalize statements like this:
@@ -175,7 +148,7 @@
# in the luci web app - need to build a way to delete /etc/cluster/cluster.conf
# and stop cman service on cluster nodes - TODO - see bug #
# https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=213076
- print 'Delete cluster: testCluster'
+ self.logger.debug('Delete cluster: testCluster')
sel.click("name=__CLUSTER:testCluster")
sel.click("document.adminform.Submit")
sel.wait_for_page_to_load("30000")
@@ -191,13 +164,13 @@
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
self.assertTrue (sel.is_text_present('Removed storage system "' + systemName + '" successfully'))
- self.logger.info('Ending test case test_congaCluster')
- closeLogger (self.theloggerObject)
+ self.logger.info('Ending test case congaDemoTests.test_congaCluster')
def tearDown(self):
"""Logout and stop Selenium session"""
logout(self.selenium)
self.assertEqual([], self.verificationErrors)
+ closeLogger (self.theloggerObject)
def suite():
suite = unittest.TestSuite()
@@ -209,3 +182,9 @@
if __name__ == "__main__":
#unittest.main()
unittest.TextTestRunner(verbosity=2).run(suite())
+
+# To write pyunit-generated output to file
+# tests = unittest.defaultTestLoader.loadTestsFromTestCase(congaDemoTests)
+# output = open("/var/tmp/output-file.txt", "w")
+# unittest.TextTestRunner(output).run(tests)
+# output.close()
--- conga/luci/test/conga_Helpers.py 2006/12/14 02:12:41 1.9
+++ conga/luci/test/conga_Helpers.py 2006/12/14 20:01:40 1.10
@@ -38,8 +38,10 @@
CONGA_ADMIN_USERNAME = 'admin'
CONGA_ADMIN_PASSWORD = 'password'
-CONGA_SERVER = "http://tng3-5.lab.msp.redhat.com:8080"
-PAGE_DISPLAY_DELAY = "30000"
+CONGA_SERVER = 'http://tng3-5.lab.msp.redhat.com:8080'
+PAGE_DISPLAY_DELAY = '30000'
+CONGA_LOG = '/var/tmp/congaTest.log'
+CONGA_DEBUG_LOG = '/var/tmp/congaTest_debug.log'
# 20061130 - Node tng3-1 isn't booting, node tng3-4 is having some problems too
@@ -49,10 +51,6 @@
# 'tng3-4.lab.msp.redhat.com':'password',
'tng3-5.lab.msp.redhat.com':'password'}
-#CONGA_STORAGE_SYSTEMS = {'tng3-2.lab.msp.redhat.com':'password',
-# 'tng3-3.lab.msp.redhat.com':'password',
-# 'tng3-5.lab.msp.redhat.com':'password'}
-
#CONGA_CLUSTER_SYSTEMS = {'tng3-1.lab.msp.redhat.com':'password',
# 'tng3-2.lab.msp.redhat.com':'password',
# 'tng3-3.lab.msp.redhat.com':'password',
@@ -99,9 +97,9 @@
'Cluster Tab':10121,
'Storage Tab':20452 }
-def createStorageSystem(sel, systemName, systemPassword):
+def createStorageSystem(sel, systemName, systemPassword, theLogger):
"""Common code to create storage systems"""
- print 'Create storage system: ' + systemName
+ theLogger.debug ('Create storage system: ' + systemName)
sel.click("link=Add a System")
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
sel.type("__SYSTEM0:Addr", systemName)
@@ -109,18 +107,18 @@
sel.click("Submit")
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
-def deleteStorageSystem(sel, systemName):
+def deleteStorageSystem(sel, systemName, theLogger):
"""Common code to delete storage systems"""
- print 'Delete storage system: ' + systemName
+ theLogger.debug('Delete storage system: ' + systemName)
# Need to handle artifacts names - underscores in strings, not periods
systemNameMod = systemName.replace('.', '_')
sel.click("name=__SYSTEM:" + systemNameMod)
sel.click("document.adminform.Submit")
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
-def createUser(sel, userName, userPassword):
+def createUser(sel, userName, userPassword, theLogger):
"""Common code to create users"""
- print 'Create user: ' + userName
+ theLogger.debug('Create user: ' + userName)
sel.click("link=Add a User")
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
sel.type("newUserName", userName)
@@ -129,9 +127,9 @@
sel.click("Submit")
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
-def deleteUser(sel, userName):
+def deleteUser(sel, userName, theLogger):
"""Common code to delete users"""
- print 'Delete user: ' + userName
+ theLogger.debug('Delete user: ' + userName)
sel.click("link=Delete a User")
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
sel.select("deluserId", "label=" + userName)
@@ -162,12 +160,13 @@
sel.stop()
def setupLogger (testName):
- """Create logger - use this message format: 2003-07-08 16:49:45,896 ERROR We have a problem"""
+ """Create logger - use this message format: 2003-07-08 16:49:45,896 ERROR We have a problem
+ For now - 20061213 - just append all log messages to a single log file """
logger = logging.getLogger('congaTestLogger')
- # Why use a RotatingFileHandler? To keep track of previous test results
- hdlr = logging.handlers.RotatingFileHandler('/var/tmp/' + testName + '.log', 'w', 1024000, 10)
- #hdlr = logging.FileHandler('/var/tmp/' + testName + '.log', 'w')
+ # Why use a RotatingFileHandler? To keep track of previous test results - maybe?
+ #hdlr = logging.handlers.RotatingFileHandler(testName, 'a', 1024000, 10)
+ hdlr = logging.FileHandler(testName, 'a')
formatter = logging.Formatter('%(asctime)s %(levelname)s %(message)s')
hdlr.setFormatter(formatter)
@@ -178,15 +177,13 @@
theloggerObject = loggerObject()
theloggerObject.setLogger(logger)
theloggerObject.setHandler(hdlr)
-
return theloggerObject
def closeLogger (theloggerObject):
"""Close the logger - roll the logs"""
theLogger = theloggerObject.getLogger()
theHandler = theloggerObject.getHandler()
-
theLogger.removeHandler(theHandler)
theHandler.close()
- theHandler.doRollover()
-
+# theHandler.doRollover()
+
\ No newline at end of file
--- conga/luci/test/conga_suite.py 2006/12/13 20:13:33 1.6
+++ conga/luci/test/conga_suite.py 2006/12/14 20:01:40 1.7
@@ -30,6 +30,7 @@
# Import the test suites
import unittest
import congaDemoTests
+from conga_Helpers import *
import CGA_0160_Add_User
import CGA_0170_Online_Documentation_Portlet
import CGA_0200_Create_cluster
@@ -61,15 +62,20 @@
# Define the suite elements
congaDemoSuite = congaDemoTests.suite()
CGA_0160_Add_UserSuite = CGA_0160_Add_User.suite()
-CGA_0170_Online_Documentation_Portlet_Suite = GA_0170_Online_Documentation_Portlet.suite()
+CGA_0170_Online_Documentation_Portlet_Suite = CGA_0170_Online_Documentation_Portlet.suite()
CGA_0200_Create_cluster_Suite = CGA_0200_Create_cluster.suite()
# Assemble the suite
suite = unittest.TestSuite()
suite.addTest(congaDemoSuite)
-suite.addTest(CGA_0160_Add_UserSuite)
+#suite.addTest(CGA_0160_Add_UserSuite)
suite.addTest(CGA_0170_Online_Documentation_Portlet_Suite)
-suite.addTest(CGA_0200_Create_cluster_Suite)
+#suite.addTest(CGA_0200_Create_cluster_Suite)
# Run the test suite
-unittest.TextTestRunner(verbosity=2).run(suite)
+# unittest.TextTestRunner(verbosity=2).run(suite)
+
+# Write all pyunit-generated messages to a log file
+output = open(CONGA_LOG, "w")
+unittest.TextTestRunner(output).run(suite)
+output.close()
--- conga/luci/test/loggerObject.py 2006/12/14 02:12:41 1.1
+++ conga/luci/test/loggerObject.py 2006/12/14 20:01:40 1.2
@@ -1,3 +1,33 @@
+#! /usr/bin/env python
+
+# Copyright Red Hat, Inc. 2006
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; either version 2, or (at your option) any
+# later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING. If not, write to the
+# Free Software Foundation, Inc., 675 Mass Ave, Cambridge,
+# MA 02139, USA.
+
+'''
+Script name: loggerObject.py
+Creation date: Dec 2006
+Purpose: Prototype automated GUI test for RHEL5 Conga (luci server web app) - automated
+ with Selenium RC (remote control) 0.9.0 (http://www.openqa.org/selenium/)
+Summary: Simple object to let us get/set the logger and its handler
+'''
+
+__author__ = 'Len DiMaggio <ldimaggi@redhat.com>'
+
+
class loggerObject:
theLogger = 'null'
theHandler = 'null'
@@ -18,5 +48,3 @@
def getHandler( self ):
return self.theHandler
-
-
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Cluster-devel] conga/luci/test CGA_0200_Create_cluster.py con ...
@ 2007-02-05 17:30 ldimaggi
0 siblings, 0 replies; 4+ messages in thread
From: ldimaggi @ 2007-02-05 17:30 UTC (permalink / raw)
To: cluster-devel.redhat.com
CVSROOT: /cvs/cluster
Module name: conga
Changes by: ldimaggi at sourceware.org 2007-02-05 17:30:50
Modified files:
luci/test : CGA_0200_Create_cluster.py congaDemoTests.py
conga_Helpers.py conga_suite.py
tests_README.txt
Log message:
Changes to sync up with GUI changes.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/test/CGA_0200_Create_cluster.py.diff?cvsroot=cluster&r1=1.2&r2=1.3
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/test/congaDemoTests.py.diff?cvsroot=cluster&r1=1.8&r2=1.9
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/test/conga_Helpers.py.diff?cvsroot=cluster&r1=1.10&r2=1.11
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/test/conga_suite.py.diff?cvsroot=cluster&r1=1.7&r2=1.8
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/test/tests_README.txt.diff?cvsroot=cluster&r1=1.1&r2=1.2
--- conga/luci/test/CGA_0200_Create_cluster.py 2006/12/14 20:01:40 1.2
+++ conga/luci/test/CGA_0200_Create_cluster.py 2007/02/05 17:30:49 1.3
@@ -67,9 +67,9 @@
# sel.type("__SYSTEM1:Passwd", "password")
# sel.click("//input[@value='Add Another Row']")
systemCounter = 0
- for systemName in CONGA_CLUSTER_SYSTEMS.keys():
+ for systemName in CONGA_SMALL_CLUSTER_SYSTEMS.keys():
sel.type("__SYSTEM" + str(systemCounter) + ":Addr", systemName)
- sel.type("__SYSTEM" + str(systemCounter) + ":Passwd", CONGA_CLUSTER_SYSTEMS[systemName])
+ sel.type("__SYSTEM" + str(systemCounter) + ":Passwd", CONGA_SMALL_CLUSTER_SYSTEMS[systemName])
systemCounter = systemCounter + 1
if (systemCounter > 2):
sel.click("//input[@value='Add Another Row']")
@@ -102,7 +102,7 @@
self.assertTrue (sel.is_text_present('Removed cluster "testCluster" successfully'))
# Delete the storage systems created when the cluster was created
- for systemName in CONGA_CLUSTER_SYSTEMS:
+ for systemName in CONGA_SMALL_CLUSTER_SYSTEMS:
deleteStorageSystem(sel, systemName)
# Validation - verify that the success message was displayed for each storage system
self.assertEqual("Do you really want to remove the following managed systems:\nStorage Systems:\n-" + systemName, sel.get_confirmation())
--- conga/luci/test/congaDemoTests.py 2006/12/14 20:01:40 1.8
+++ conga/luci/test/congaDemoTests.py 2007/02/05 17:30:49 1.9
@@ -122,13 +122,13 @@
# sel.type("__SYSTEM1:Passwd", "password")
# sel.click("//input[@value='Add Another Row']")
systemCounter = 0
- for systemName in CONGA_CLUSTER_SYSTEMS.keys():
+ for systemName in CONGA_SMALL_CLUSTER_SYSTEMS.keys():
sel.type("__SYSTEM" + str(systemCounter) + ":Addr", systemName)
- sel.type("__SYSTEM" + str(systemCounter) + ":Passwd", CONGA_CLUSTER_SYSTEMS[systemName])
+ sel.type("__SYSTEM" + str(systemCounter) + ":Passwd", CONGA_SMALL_CLUSTER_SYSTEMS[systemName])
systemCounter = systemCounter + 1
if (systemCounter > 2):
- sel.click("//input[@value='Add Another Row']")
- sel.click("document.adminform.rhn_dl[1]")
+ sel.click("//input[@value='Add another entry']")
+ #sel.click("document.adminform.rhn_dl[1]")
sel.click("Submit")
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
@@ -157,8 +157,8 @@
self.assertTrue (sel.is_text_present('Removed cluster "testCluster" successfully'))
# Delete the storage systems created when the cluster was created
- for systemName in CONGA_CLUSTER_SYSTEMS:
- deleteStorageSystem(sel, systemName)
+ for systemName in CONGA_SMALL_CLUSTER_SYSTEMS:
+ deleteStorageSystem(sel, systemName, self.logger)
# Validation - verify that the success message was displayed for each storage system
self.assertEqual("Do you really want to remove the following managed systems:\nStorage Systems:\n-" + systemName, sel.get_confirmation())
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
--- conga/luci/test/conga_Helpers.py 2006/12/14 20:01:40 1.10
+++ conga/luci/test/conga_Helpers.py 2007/02/05 17:30:49 1.11
@@ -45,20 +45,23 @@
# 20061130 - Node tng3-1 isn't booting, node tng3-4 is having some problems too
-CONGA_STORAGE_SYSTEMS = {'tng3-1.lab.msp.redhat.com':'password',
-# 'tng3-2.lab.msp.redhat.com':'password',
+CONGA_STORAGE_SYSTEMS = { 'tng3-1.lab.msp.redhat.com':'password',
+ 'tng3-2.lab.msp.redhat.com':'password',
'tng3-3.lab.msp.redhat.com':'password',
-# 'tng3-4.lab.msp.redhat.com':'password',
+ 'tng3-4.lab.msp.redhat.com':'password',
'tng3-5.lab.msp.redhat.com':'password'}
-#CONGA_CLUSTER_SYSTEMS = {'tng3-1.lab.msp.redhat.com':'password',
-# 'tng3-2.lab.msp.redhat.com':'password',
-# 'tng3-3.lab.msp.redhat.com':'password',
-# 'tng3-4.lab.msp.redhat.com':'password'}
-
-CONGA_CLUSTER_SYSTEMS = {'tng3-1.lab.msp.redhat.com':'password',
+CONGA_SMALL_CLUSTER_SYSTEMS = { 'tng3-1.lab.msp.redhat.com':'password',
+ 'tng3-2.lab.msp.redhat.com':'password',
+ 'tng3-3.lab.msp.redhat.com':'password',
'tng3-4.lab.msp.redhat.com':'password' }
+CONGA_LARGE_CLUSTER_SYSTEMS = {'tng3-1.lab.msp.redhat.com':'password',
+ 'tng3-2.lab.msp.redhat.com':'password',
+ 'tng3-3.lab.msp.redhat.com':'password',
+ 'tng3-4.lab.msp.redhat.com':'password',
+ 'tng3-5.lab.msp.redhat.com':'password'}
+
CONGA_USERS = {'user1':'user1_password',
'user2':'user2_password',
'user3':'user3_password',
@@ -71,14 +74,14 @@
'user10':'user10_password'}
CONGA_USERS_SYSTEMS = {'user1':'tng3-1.lab.msp.redhat.com',
-# 'user2':'tng3-2.lab.msp.redhat.com',
+ 'user2':'tng3-2.lab.msp.redhat.com',
'user3':'tng3-3.lab.msp.redhat.com',
-# 'user4':'tng3-4.lab.msp.redhat.com',
+ 'user4':'tng3-4.lab.msp.redhat.com',
'user5':'tng3-5.lab.msp.redhat.com',
'user6':'tng3-1.lab.msp.redhat.com',
-# 'user7':'tng3-2.lab.msp.redhat.com',
+ 'user7':'tng3-2.lab.msp.redhat.com',
'user8':'tng3-3.lab.msp.redhat.com',
-# 'user9':'tng3-4.lab.msp.redhat.com',
+ 'user9':'tng3-4.lab.msp.redhat.com',
'user10':'tng3-5.lab.msp.redhat.com'}
# Data used to verify the on-line help contents. The Dictionary contains
@@ -93,9 +96,9 @@
HELP_DICTIONARY = {'Conga User Manual':77,
'Introduction':200,
'Conga Architecture':225,
- 'Homebase Tab':4225,
- 'Cluster Tab':10121,
- 'Storage Tab':20452 }
+ 'Homebase Tab':4257,
+ 'Cluster Tab':12280,
+ 'Storage Tab':23833 }
def createStorageSystem(sel, systemName, systemPassword, theLogger):
"""Common code to create storage systems"""
--- conga/luci/test/conga_suite.py 2006/12/14 20:01:40 1.7
+++ conga/luci/test/conga_suite.py 2007/02/05 17:30:49 1.8
@@ -67,15 +67,15 @@
# Assemble the suite
suite = unittest.TestSuite()
-suite.addTest(congaDemoSuite)
+#suite.addTest(congaDemoSuite)
#suite.addTest(CGA_0160_Add_UserSuite)
suite.addTest(CGA_0170_Online_Documentation_Portlet_Suite)
#suite.addTest(CGA_0200_Create_cluster_Suite)
# Run the test suite
-# unittest.TextTestRunner(verbosity=2).run(suite)
+unittest.TextTestRunner(verbosity=2).run(suite)
-# Write all pyunit-generated messages to a log file
-output = open(CONGA_LOG, "w")
-unittest.TextTestRunner(output).run(suite)
-output.close()
+# Or, write all pyunit-generated messages to a log file
+#output = open(CONGA_LOG, "w")
+#unittest.TextTestRunner(output).run(suite)
+#output.close()
--- conga/luci/test/tests_README.txt 2006/12/11 21:37:22 1.1
+++ conga/luci/test/tests_README.txt 2007/02/05 17:30:49 1.2
@@ -3,9 +3,10 @@
(Rev 1.0 - 20061211, ldimaggi at redhat.com)
-1) Install Selenium Core
+1) Install Selenium Core and Selenium RC (Remote Control)
a. wget http://release.openqa.org/selenium-core/0.8.1/selenium-core-0.8.1.zip
- b. Unzip someplace - I used /opt
+ b. wget http://release.openqa.org/selenium-remote-control/0.9.0/selenium-remote-control-0.9.0.zip
+ c. Unzip someplace - I used /opt
2) Make sure Firefox 1.5 or newer is installed - I'm using 1.5.0.8
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Cluster-devel] conga/luci/test CGA_0200_Create_cluster.py con ...
@ 2007-02-20 20:18 ldimaggi
0 siblings, 0 replies; 4+ messages in thread
From: ldimaggi @ 2007-02-20 20:18 UTC (permalink / raw)
To: cluster-devel.redhat.com
CVSROOT: /cvs/cluster
Module name: conga
Changes by: ldimaggi at sourceware.org 2007-02-20 20:18:25
Modified files:
luci/test : CGA_0200_Create_cluster.py congaDemoTests.py
conga_Helpers.py conga_suite.py
Log message:
Updating to match GUI changes
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/test/CGA_0200_Create_cluster.py.diff?cvsroot=cluster&r1=1.3&r2=1.4
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/test/congaDemoTests.py.diff?cvsroot=cluster&r1=1.9&r2=1.10
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/test/conga_Helpers.py.diff?cvsroot=cluster&r1=1.12&r2=1.13
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/test/conga_suite.py.diff?cvsroot=cluster&r1=1.9&r2=1.10
--- conga/luci/test/CGA_0200_Create_cluster.py 2007/02/05 17:30:49 1.3
+++ conga/luci/test/CGA_0200_Create_cluster.py 2007/02/20 20:18:25 1.4
@@ -73,7 +73,7 @@
systemCounter = systemCounter + 1
if (systemCounter > 2):
sel.click("//input[@value='Add Another Row']")
- sel.click("document.adminform.rhn_dl[1]")
+ #sel.click("document.adminform.rhn_dl[1]")
sel.click("Submit")
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
@@ -81,34 +81,48 @@
#sel.click("link=testCluster")
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
+ # Wait 5 minutes for the cluster nodes to be rebooted
+ time.sleep (300)
+
# Validation - verify that the newly created cluster shows up in the cluster list
sel.click("link=homebase")
- sel.wait_for_page_to_load("30000")
+ sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
sel.click("link=Manage Systems")
- sel.wait_for_page_to_load("30000")
+ sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
self.assertTrue (sel.is_text_present('testCluster'))
self.assertTrue (sel.is_element_present("name=__CLUSTER:testCluster"))
-
- # Delete the cluster - note that this only deletes the reference to the cluster
- # in the luci web app - need to build a way to delete /etc/cluster/cluster.conf
- # and stop cman service on cluster nodes - TODO - see bug #
- # https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=213076
- self.logger.debug('Delete cluster: testCluster')
- sel.click("name=__CLUSTER:testCluster")
- sel.click("document.adminform.Submit")
- sel.wait_for_page_to_load("30000")
- self.assertEqual("Do you really want to remove the following managed systems:\nClusters:\n-testCluster", sel.get_confirmation())
- sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
- self.assertTrue (sel.is_text_present('Removed cluster "testCluster" successfully'))
+ # Then - delete the cluster
+ sel.click("link=homebase")
+ sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
+ sel.click("link=cluster")
+ sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
+ sel.select("cluster_action", "label=Delete this cluster")
+ sel.click("//input[@value='Go']")
+ sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
+ sel.click("link=homebase")
+ sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
+ sel.click("link=Manage Systems")
+ sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
+
# Delete the storage systems created when the cluster was created
for systemName in CONGA_SMALL_CLUSTER_SYSTEMS:
- deleteStorageSystem(sel, systemName)
+ deleteStorageSystem(sel, systemName, self.logger)
# Validation - verify that the success message was displayed for each storage system
self.assertEqual("Do you really want to remove the following managed systems:\nStorage Systems:\n-" + systemName, sel.get_confirmation())
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
self.assertTrue (sel.is_text_present('Removed storage system "' + systemName + '" successfully'))
+ # And the cluster reference in the storage system list too
+ sel.click("link=homebase")
+ sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
+ sel.click("link=Manage Systems")
+ sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
+ sel.click("__CLUSTER0")
+ sel.click("document.adminform.Submit")
+ sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
+ self.assertEqual("Do you really want to remove the following managed systems:\nClusters:\n-testCluster", sel.get_confirmation())
+
self.logger.info('Ending test case CGA_0200_Create_cluster.test_congaCluster')
def tearDown(self):
--- conga/luci/test/congaDemoTests.py 2007/02/05 17:30:49 1.9
+++ conga/luci/test/congaDemoTests.py 2007/02/20 20:18:25 1.10
@@ -101,71 +101,6 @@
self.logger.info('Ending test case congaDemoTests.test_congaUsers')
- def test_congaCluster(self):
- """Test to create and delete a cluster"""
- self.logger.info('Starting test case congaDemoTests.test_congaCluster')
- sel = self.selenium
-
- sel.open("/luci/homebase")
- sel.click("link=cluster")
- sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
- sel.click("link=Create a New Cluster")
-
- # Create the new "testCluster" cluster
- sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
- sel.type("clusterName", "testCluster")
- self.logger.debug('Create cluster: testCluster')
-
- # Add the nodes to the cluster
- # Needed to generalize statements like this:
- # sel.type("__SYSTEM1:Addr", "tng3-2.lab.msp.redhat.com")
- # sel.type("__SYSTEM1:Passwd", "password")
- # sel.click("//input[@value='Add Another Row']")
- systemCounter = 0
- for systemName in CONGA_SMALL_CLUSTER_SYSTEMS.keys():
- sel.type("__SYSTEM" + str(systemCounter) + ":Addr", systemName)
- sel.type("__SYSTEM" + str(systemCounter) + ":Passwd", CONGA_SMALL_CLUSTER_SYSTEMS[systemName])
- systemCounter = systemCounter + 1
- if (systemCounter > 2):
- sel.click("//input[@value='Add another entry']")
- #sel.click("document.adminform.rhn_dl[1]")
- sel.click("Submit")
- sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
-
- self.assertEqual('Add the cluster "testCluster" to the Luci management interface?' , sel.get_confirmation())
- #sel.click("link=testCluster")
- sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
-
- # Validation - verify that the newly created cluster shows up in the cluster list
- sel.click("link=homebase")
- sel.wait_for_page_to_load("30000")
- sel.click("link=Manage Systems")
- sel.wait_for_page_to_load("30000")
- self.assertTrue (sel.is_text_present('testCluster'))
- self.assertTrue (sel.is_element_present("name=__CLUSTER:testCluster"))
-
- # Delete the cluster - note that this only deletes the reference to the cluster
- # in the luci web app - need to build a way to delete /etc/cluster/cluster.conf
- # and stop cman service on cluster nodes - TODO - see bug #
- # https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=213076
- self.logger.debug('Delete cluster: testCluster')
- sel.click("name=__CLUSTER:testCluster")
- sel.click("document.adminform.Submit")
- sel.wait_for_page_to_load("30000")
- self.assertEqual("Do you really want to remove the following managed systems:\nClusters:\n-testCluster", sel.get_confirmation())
- sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
- self.assertTrue (sel.is_text_present('Removed cluster "testCluster" successfully'))
-
- # Delete the storage systems created when the cluster was created
- for systemName in CONGA_SMALL_CLUSTER_SYSTEMS:
- deleteStorageSystem(sel, systemName, self.logger)
- # Validation - verify that the success message was displayed for each storage system
- self.assertEqual("Do you really want to remove the following managed systems:\nStorage Systems:\n-" + systemName, sel.get_confirmation())
- sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
- self.assertTrue (sel.is_text_present('Removed storage system "' + systemName + '" successfully'))
-
- self.logger.info('Ending test case congaDemoTests.test_congaCluster')
-
def tearDown(self):
"""Logout and stop Selenium session"""
logout(self.selenium)
@@ -176,7 +111,6 @@
suite = unittest.TestSuite()
suite.addTest(congaDemoTests('test_congaStorage'))
suite.addTest(congaDemoTests('test_congaUsers'))
- #suite.addTest(congaDemoTests('test_congaCluster'))
return suite
if __name__ == "__main__":
--- conga/luci/test/conga_Helpers.py 2007/02/09 03:23:17 1.12
+++ conga/luci/test/conga_Helpers.py 2007/02/20 20:18:25 1.13
@@ -39,7 +39,7 @@
CONGA_ADMIN_USERNAME = 'admin'
CONGA_ADMIN_PASSWORD = 'password'
CONGA_SERVER = 'http://tng3-5.lab.msp.redhat.com:8080'
-PAGE_DISPLAY_DELAY = '30000'
+PAGE_DISPLAY_DELAY = '60000'
CONGA_LOG = '/var/tmp/congaTest.log'
CONGA_DEBUG_LOG = '/var/tmp/congaTest_debug.log'
@@ -56,7 +56,7 @@
'tng3-3.lab.msp.redhat.com':'password',
'tng3-4.lab.msp.redhat.com':'password' }
-CONGA_LARGE_CLUSTER_SYSTEMS = {'tng3-1.lab.msp.redhat.com':'password',
+CONGA_LARGE_CLUSTER_SYSTEMS = {#'tng3-1.lab.msp.redhat.com':'password',
#'tng3-2.lab.msp.redhat.com':'password',
'tng3-3.lab.msp.redhat.com':'password',
'tng3-4.lab.msp.redhat.com':'password',
--- conga/luci/test/conga_suite.py 2007/02/09 03:23:17 1.9
+++ conga/luci/test/conga_suite.py 2007/02/20 20:18:25 1.10
@@ -68,9 +68,9 @@
# Assemble the suite
suite = unittest.TestSuite()
#suite.addTest(congaDemoSuite)
-suite.addTest(CGA_0160_Add_UserSuite)
+#suite.addTest(CGA_0160_Add_UserSuite)
#suite.addTest(CGA_0170_Online_Documentation_Portlet_Suite)
-#suite.addTest(CGA_0200_Create_cluster_Suite)
+suite.addTest(CGA_0200_Create_cluster_Suite)
# Run the test suite
unittest.TextTestRunner(verbosity=2).run(suite)
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Cluster-devel] conga/luci/test CGA_0200_Create_cluster.py con ...
@ 2007-04-24 17:48 ldimaggi
0 siblings, 0 replies; 4+ messages in thread
From: ldimaggi @ 2007-04-24 17:48 UTC (permalink / raw)
To: cluster-devel.redhat.com
CVSROOT: /cvs/cluster
Module name: conga
Changes by: ldimaggi at sourceware.org 2007-04-24 18:48:50
Modified files:
luci/test : CGA_0200_Create_cluster.py conga_Helpers.py
Log message:
Updated to reflect change in GUI
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/test/CGA_0200_Create_cluster.py.diff?cvsroot=cluster&r1=1.5&r2=1.6
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/test/conga_Helpers.py.diff?cvsroot=cluster&r1=1.15&r2=1.16
--- conga/luci/test/CGA_0200_Create_cluster.py 2007/04/24 14:25:53 1.5
+++ conga/luci/test/CGA_0200_Create_cluster.py 2007/04/24 17:48:50 1.6
@@ -90,7 +90,7 @@
sel.click("link=Manage Systems")
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
self.assertTrue (sel.is_text_present('testCluster'))
- self.assertTrue (sel.is_element_present("name=__CLUSTER:testCluster"))
+ self.assertTrue (sel.is_element_present("name=__CLUSTER:X___testCluster"))
# Then - delete the cluster
sel.click("link=homebase")
@@ -99,6 +99,10 @@
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
sel.select("cluster_action", "label=Delete this cluster")
sel.click("//input[@value='Go']")
+
+ self.assertEqual("Delete this cluster?", sel.get_confirmation())
+ time.sleep (60)
+
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
sel.click("link=homebase")
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
@@ -113,16 +117,6 @@
sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
self.assertTrue (sel.is_text_present('Removed storage system "' + systemName + '" successfully'))
- # And the cluster reference in the storage system list too
- sel.click("link=homebase")
- sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
- sel.click("link=Manage Systems")
- sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
- sel.click("__CLUSTER0")
- sel.click("document.adminform.Submit")
- sel.wait_for_page_to_load(PAGE_DISPLAY_DELAY)
- self.assertEqual("Do you really want to remove the following managed systems:\nClusters:\n-testCluster", sel.get_confirmation())
-
self.logger.info('Ending test case CGA_0200_Create_cluster.test_congaCluster')
def tearDown(self):
--- conga/luci/test/conga_Helpers.py 2007/04/18 17:55:31 1.15
+++ conga/luci/test/conga_Helpers.py 2007/04/24 17:48:50 1.16
@@ -48,19 +48,22 @@
#'tng3-2.lab.msp.redhat.com':'password',
'dell-pe1950-1.test.redhat.com':'foobar',
'pogolinux-1.test.redhat.com':'foobar',
- 'pogolinux-2.test.redhat.com':'foobar'}
+# 'pogolinux-2.test.redhat.com':'foobar'
+}
CONGA_SMALL_CLUSTER_SYSTEMS = { #'tng3-1.lab.msp.redhat.com':'password',
- #'tng3-2.lab.msp.redhat.com':'password',
+# #'tng3-2.lab.msp.redhat.com':'password',
'dell-pe1950-1.test.redhat.com':'foobar',
'pogolinux-1.test.redhat.com':'foobar',
- 'pogolinux-2.test.redhat.com':'foobar'}
+# 'pogolinux-2.test.redhat.com':'foobar'
+}
CONGA_LARGE_CLUSTER_SYSTEMS = {#'tng3-1.lab.msp.redhat.com':'password',
#'tng3-2.lab.msp.redhat.com':'password',
'dell-pe1950-1.test.redhat.com':'foobar',
'pogolinux-1.test.redhat.com':'foobar',
- 'pogolinux-2.test.redhat.com':'foobar'}
+# 'pogolinux-2.test.redhat.com':'foobar'
+}
CONGA_USERS = {#'user1':'user1_password',
#'user2':'user2_password',
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2007-04-24 17:48 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-02-05 17:30 [Cluster-devel] conga/luci/test CGA_0200_Create_cluster.py con ldimaggi
-- strict thread matches above, loose matches on Subject: below --
2007-04-24 17:48 ldimaggi
2007-02-20 20:18 ldimaggi
2006-12-14 20:01 ldimaggi
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).