1 #//%2006////////////////////////////////////////////////////////////////////////
3 #// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
4 #// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
5 #// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
6 #// IBM Corp.; EMC Corporation, The Open Group.
7 #// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
8 #// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
9 #// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
10 #// EMC Corporation; VERITAS Software Corporation; The Open Group.
11 #// Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
12 #// EMC Corporation; Symantec Corporation; The Open Group.
14 #// Permission is hereby granted, free of charge, to any person obtaining a copy
15 #// of this software and associated documentation files (the "Software"), to
16 #// deal in the Software without restriction, including without limitation the
17 #// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
18 #// sell copies of the Software, and to permit persons to whom the Software is
19 #// furnished to do so, subject to the following conditions:
21 #// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
22 #// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
23 #// "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
24 #// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
25 #// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
26 #// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
27 #// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
28 #// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
30 #//==============================================================================
31 ###############################################################################
33 ## Test Makefile for Pegasus CIMOM
35 ## see the usage rule for documentation of rules etc.
38 ###############################################################################
41 @ $(ECHO) "Specify desired makefile option (i.e., unittests, usage )"
43 include $(PEGASUS_ROOT)/mak/config.mak
44 include $(PEGASUS_ROOT)/mak/test.mak
45 include $(PEGASUS_ROOT)/mak/commands.mak
55 $(USAGE)"TestMakefile Primary Targets:"
57 $(USAGE)"The following are all standalone tests. They stop and start the server,"
58 $(USAGE)"and build repositories as needed."
60 $(USAGE)"alltests - Execute unittests and servertests"
61 $(USAGE)"unittests - Execute the unit functional tests - no repository"
62 $(USAGE)" or active server is required"
63 $(USAGE)"servertests - Execute a basic server test suites (No security, No SSL)"
64 $(USAGE)"standardtests - Execute an extended server test suites "
65 $(USAGE)" using multiple options."
66 $(USAGE)"perftests - Executes a brief server performance test"
68 $(USAGE)"usage2 - usage on secondary test targets"
69 $(USAGE)"usagetrace - usage on trace targets"
70 $(USAGE)"stresstests - Execute the default stress test suite"
75 $(USAGE)"TestMakefile Secondary Targets:"
77 $(USAGE)"The following are run as part of the Primary target test suites and may"
78 $(USAGE)"also be invoked as standalone tests."
80 $(USAGE)"TestXMLRepository - Executes poststarttests on XML repository"
81 $(USAGE)" built with cimmofl."
82 $(USAGE)"TestXMLRepositoryServer - Executes poststarttests on XML repository"
83 $(USAGE)" built with cimmof."
84 $(USAGE)"TestXMLCmpRepository - Executes poststarttests on XML compressed"
85 $(USAGE)" repository built with cimmofl."
86 $(USAGE)"TestBinRepository - Executes poststarttests on binary repository "
87 $(USAGE)" built with cimmofl."
88 $(USAGE)"TestBinRepositoryServer - Executes poststarttests on binary repository"
89 $(USAGE)" built with cimmof."
90 $(USAGE)"TestBinCmpRepository - Executes poststarttests on binary compressed"
91 $(USAGE)" repository built with cimmofl."
93 $(USAGE)"The following require the repository to be pre-built."
95 $(USAGE)"run_SSL_CBA_TS1 - Executes the Certificate based authentication test suite."
96 $(USAGE)"run_SSL_IPV4_TS1 - Executes the IPv4 SSL connection test suite."
97 $(USAGE)"run_SSL_IPV6_TS1 - Executes the IPv6 SSL connection test suite."
98 $(USAGE)"run_OOP_TS1 - Executes the Out Of Process Provider tests"
99 $(USAGE)"run_G11N_TS1 - Executes the Globalization tests"
101 $(USAGE)"The following require the repository to be pre-built and the server to be started."
103 $(USAGE)"serversuite - the collection of test run by the servertests rule"
104 $(USAGE)"run_STRESS_TS1 - Executes the stresstests"
105 $(USAGE)"slptests - Executes the slptests"
106 $(USAGE)"run_Cmpi_Sub - Executes the CMPI subscription tests"
110 ##########################################################
112 # rules that are defined in Makefile
114 ##########################################################
117 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile build
120 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile world
123 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile new
126 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile clean
129 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile depend
131 ###############################################################################
132 # mak/certificate_test.mak implements three key functions for
133 # testing Certificate-Based Authentication (CBA).
135 # setupCBATestCertificates is used to create a set of test certificates
136 # make -f TestMakefile setupCBATestCertificates
138 # runCBATestSuites is used to run a set of CBA tests
139 # make -f TestMakefile runCBATestSuites
141 # cleanupCBATestCertificates can be used to remove the test certificates
142 # make -f TestMakefile cleanupCBATestCertificates
143 ###############################################################################
144 include $(PEGASUS_ROOT)/mak/certificate_test.mak
146 ############################################################
150 ############################################################
153 ## Although the macros CIMSERVER_STOP_SERVICE and CIMSERVER_START_SERVICE
154 ## are available and could be invoked directly, their direct usage is
155 ## discouraged in favor of invoking the cimstop and the cimstart rules
156 ## as this allows one place where additional checks, delays etc may be
157 ## added in the future to control or further test the servers performance
158 ## in executing these commands.
161 #######################
166 $(MAKE) --directory=$(PEGASUS_ROOT)/doc/ProviderSpec -f Makefile
167 $(MAKE) --directory=$(PEGASUS_ROOT)/doc/DevManual -f Makefile
170 #######################
174 repositoryServer: FORCE
175 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
177 $(RMREPOSITORY) $(REPOSITORY_ROOT)
178 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart
180 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryServer
181 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepositoryServer
183 ######################
185 # prestarttests is being deprecated since poststarttest is being deprecated
186 # in favor of name more related to its intended functionality.
188 prestarttests: prestarttests_msg shortsleep unittests
190 prestarttests_msg: FORCE
191 @$(ECHO) "=============================================================================="
192 @$(ECHO) "TestMakefile: The \"prestarttests\" rule is being deprecated."
193 @$(ECHO) " Use \"make testusage\" for a description of the usage model."
194 @$(ECHO) " The equivalent new rule is \"unittests\"."
195 @$(ECHO) " Invoking the \"unittests\" rule now."
196 @$(ECHO) "=============================================================================="
200 # poststarttests is being deprecated since it multiply defines a
201 # recursive make rule leading to ambuguity and confusion.
203 poststarttests: poststarttests_msg shortsleep servertests
205 poststarttests_msg: FORCE
206 @$(ECHO) "==============================================================================="
207 @$(ECHO) "TestMakefile: The \"posstarttests\" rule is being deprecated.."
208 @$(ECHO) " Use \"make testusage\" for a description of the usage model."
209 @$(ECHO) " The equivalent new rule is \"servertests\"."
210 @$(ECHO) " Invoking the \"servertests\" rule now."
211 @$(ECHO) "==============================================================================="
213 #####################
215 # tests is being deprecated since it multiply defines a
216 # recursive make rule leading to ambuguity and confusion.
218 tests: tests_msg shortsleep alltests
221 @$(ECHO) "==================================================================="
222 @$(ECHO) "TestMakefile: The \"tests\" rule is being deprecated."
223 @$(ECHO) " Use \"make testusage\" for a description of the usage model."
224 @$(ECHO) " The equivalent new rule is \"alltests\"."
225 @$(ECHO) " Invoking the \"alltests\" rule now."
226 @$(ECHO) "==================================================================="
237 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile tests
238 @ $(ECHO) "+++++ TestMakefile unittests complete"
240 #####################
245 servertestsclean: FORCE
246 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
247 $(MAKE) --directory=$(PEGASUS_ROOT)/src/Pegasus/CQL/tests/Queries -f Makefile clean
248 $(MAKE) --directory=$(PEGASUS_ROOT)/src/Pegasus/Query/QueryExpression/tests/Queries -f Makefile clean
249 $(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest -f Makefile clean
251 servertestssetup: FORCE
252 ifdef PEGASUS_HAS_SSL
254 # The association between user names and certificates is stored in the
255 # repository. If the repository is recreated, we also need to re-initialize
256 # the trust store directories. Otherwise, the truststore content will be
257 # out-of-sync with the mapping stored in the repository.
259 # NOTE: Tests that require their own test namespaces to run poststarttests
260 # should add their namespace creation make commands to pegasus/Makefile
261 # under the testrepository tag.
263 $(MAKE) --directory=$(PEGASUS_ROOT)/src/Server -f Makefile removeSSLTrustDirectories
264 $(MAKE) --directory=$(PEGASUS_ROOT)/src/Server -f Makefile createSSLTrustDirectories
266 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository
267 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepository
268 @$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile \
269 cleanupCBATestCertificates
270 @$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile \
271 setupCBATestCertificates
272 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile cimstart
274 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile ConfigureUsers
275 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile Create_SSL_Certificate
276 ifeq ($(PEGASUS_TEST_SDK),true)
277 $(MAKE) --directory=$(PEGASUS_ROOT)/src/SDK/samples -f Makefile setupSDK
280 # slptests are run under separate target because these testcases require that
281 # both the cimserver and SLP are running. There is no need for special options
282 # while starting cimserver.
284 $(MAKE) --directory=$(PEGASUS_ROOT)/src/slp/tests/slptests -f Makefile slptests
285 @ $(ECHO) "+++++ TestMakefile slp test suite completed"
287 servertests: servertestsclean servertestssetup serversuite
288 @ $(ECHO) "+++++ TestMakefile servertests suites complete"
291 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile poststarttests
292 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestBinRepository
293 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_Cimsub_InterOp
294 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_OOP_TS1
295 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_IndInit_TS1
296 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_OOPProvFail_TS1
297 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_OOPProvFail_TS2
298 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_OOPProvFail_TS3
299 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_INDSSL_TS1
300 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_SSL_IPV4_TS1
301 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_SSL_IPV6_TS1
302 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_SSL_CBA_TS1
303 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_G11N_TS1
304 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile runCBATestSuites
305 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_SDK_TS1
306 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_ExportClientSSL_TS1
307 ifeq ($(PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER),true)
308 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_Cmpi_Sub
310 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_idleConnectionTimeout1
311 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_idleConnectionTimeout2
313 #####################
318 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_STRESS_TS1
322 # perftests - simple performance test until we have better
324 # - Turns statistics on (uses TestInterop until we have better)
325 # - runs poststarttests suite and TestBenchmark
326 # - runs cimperf to displat the statistics
327 # - turns statistics off
329 perftests: servertestsclean servertestssetup perfsuite
332 $(PEGASUS_HOME)/bin/TestInterop on
333 $(TIME_CMD) $(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest -f Makefile poststarttests
335 $(TIME_CMD) $(PEGASUS_HOME)/bin/TestClient
337 $(TIME_CMD) $(PEGASUS_HOME)/bin/TestBenchmark
340 $(TIME_CMD) $(PEGASUS_HOME)/bin/cimperf
342 $(PEGASUS_HOME)/bin/TestInterop off
349 alltests: unittests servertests
350 ifeq ($(OS_TYPE),windows)
351 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
352 $(MAKE) --directory=$(PEGASUS_ROOT)/src/Server -f Makefile uninstall
354 @ $(ECHO) "+++++ TestMakefile alltests Complete"
356 ###############################################################################
357 ## Test Suite Definitions
358 ###############################################################################
360 ###############################################################################
361 ## OOP Test Suite 1: "Out-of-Process"(OOP) Provider Tests
363 ## Configuration Options: forceProviderProcesses=true
365 ## If PEGASUS_DEFAULT_ENABLE_OOP is set, then tests are run with OOP disabled
366 ## since tests have already been run with OOP enabled.
369 ###############################################################################
370 ifeq ($(PEGASUS_DEFAULT_ENABLE_OOP),true)
371 OOP_TS1_CONFIG_OPTIONS = forceProviderProcesses=false
373 OOP_TS1_CONFIG_OPTIONS = forceProviderProcesses=true
376 OOP_TS1_TEST_CMDS = \
377 $(MAKE)@@--directory=$(PEGASUS_ROOT)@@Makefile@@-s@@poststarttests
380 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
381 CIMSERVER_CONFIG_OPTIONS="$(OOP_TS1_CONFIG_OPTIONS)" \
382 TESTSUITE_CMDS="$(OOP_TS1_TEST_CMDS)"
384 ###############################################################################
386 ###############################################################################
387 ## IndInit Test Suite 1: IndicationService Initialization Tests
389 ## Configuration Options: (none)
391 ###############################################################################
392 IndInit_TS1_CONFIG_OPTIONS =
393 IndInit_TS1a_TEST_CMDS = \
394 $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Pegasus/IndicationService/tests/ProcessIndication@@IndInit_TS1a
395 IndInit_TS1b_TEST_CMDS = \
396 $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Pegasus/IndicationService/tests/ProcessIndication@@IndInit_TS1b
399 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
400 CIMSERVER_CONFIG_OPTIONS="$(IndInit_TS1_CONFIG_OPTIONS)" \
401 TESTSUITE_CMDS="$(IndInit_TS1a_TEST_CMDS)"
402 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
403 CIMSERVER_CONFIG_OPTIONS="$(IndInit_TS1_CONFIG_OPTIONS)" \
404 TESTSUITE_CMDS="$(IndInit_TS1b_TEST_CMDS)"
406 ###############################################################################
407 ## OOPProvFail Test Suite 1: OOP Provider Module Failure Tests
409 ## Configuration Options: forceProviderProcesses=true
410 ## enableAuthentication=true, enableAuthentication=false
412 ## NOTE: Regardless of the setting of PEGASUS_DEFAULT_ENABLE_OOP, this test
413 ## suite is always run with OOP enabled. This test suite causes a provider to
414 ## exit. Running this test suite with OOP disabled would cause the cimserver
415 ## to exit and the test suite to fail.
417 ## NOTE: The test is run once with authentication enabled, and once without
418 ## authentication enabled.
420 ###############################################################################
421 OOPProvFail_TS1a_CONFIG_OPTIONS = forceProviderProcesses=true enableAuthentication=true
422 OOPProvFail_TS1b_CONFIG_OPTIONS = forceProviderProcesses=true enableAuthentication=false
423 OOPProvFail_TS1_TEST_CMDS = \
424 $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Providers/TestProviders/OOPModuleFailureProvider/testclient@@OOPProvFail_TS1
426 ifndef PEGASUS_DISABLE_PRIVILEGED_TESTS
428 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
429 CIMSERVER_CONFIG_OPTIONS="$(OOPProvFail_TS1a_CONFIG_OPTIONS)" \
430 TESTSUITE_CMDS="$(OOPProvFail_TS1_TEST_CMDS)"
431 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
432 CIMSERVER_CONFIG_OPTIONS="$(OOPProvFail_TS1b_CONFIG_OPTIONS)" \
433 TESTSUITE_CMDS="$(OOPProvFail_TS1_TEST_CMDS)"
435 run_OOPProvFail_TS1: FORCE
436 @ $(ECHO) "+++++ PEGASUS_DISABLE_PRIVILEGED_TESTS defined: Skipping run_OOPProvFail_TS1"
439 ###############################################################################
440 ## OOPProvFail Test Suite 2: OOP Provider Module Failure on IndicationService
441 ## Initialization Tests
443 ## Configuration Options: forceProviderProcesses=true
444 ## enableAuthentication=true
446 ## NOTE: Regardless of the setting of PEGASUS_DEFAULT_ENABLE_OOP, this test
447 ## suite is always run with OOP enabled. This test suite causes a provider to
448 ## exit. Running this test suite with OOP disabled would cause the cimserver
449 ## to exit and the test suite to fail.
451 ###############################################################################
452 OOPProvFail_TS2_CONFIG_OPTIONS = forceProviderProcesses=true enableAuthentication=true
453 OOPProvFail_TS2a_TEST_CMDS = \
454 $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Providers/TestProviders/OOPModuleFailureProvider/testclient@@OOPProvFail_TS2a
455 OOPProvFail_TS2b_TEST_CMDS = \
456 $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Providers/TestProviders/OOPModuleFailureProvider/testclient@@OOPProvFail_TS2b
458 ifndef PEGASUS_DISABLE_PRIVILEGED_TESTS
460 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
461 CIMSERVER_CONFIG_OPTIONS="$(OOPProvFail_TS2_CONFIG_OPTIONS)" \
462 TESTSUITE_CMDS="$(OOPProvFail_TS2a_TEST_CMDS)"
463 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
464 CIMSERVER_CONFIG_OPTIONS="$(OOPProvFail_TS2_CONFIG_OPTIONS)" \
465 TESTSUITE_CMDS="$(OOPProvFail_TS2b_TEST_CMDS)"
467 run_OOPProvFail_TS2: FORCE
468 @ $(ECHO) "+++++ PEGASUS_DISABLE_PRIVILEGED_TESTS defined: Skipping run_OOPProvFail_TS2"
471 ###############################################################################
472 ## OOPProvFail Test Suite 3: OOP Provider Module Failure CIM Server restart
475 ## Configuration Options: forceProviderProcesses=true
476 ## enableAuthentication=true
478 ## NOTE: Regardless of the setting of PEGASUS_DEFAULT_ENABLE_OOP, this test
479 ## suite is always run with OOP enabled. This test suite causes a provider to
480 ## exit. Running this test suite with OOP disabled would cause the cimserver
481 ## to exit and the test suite to fail.
483 ###############################################################################
484 OOPProvFail_TS3_CONFIG_OPTIONS = forceProviderProcesses=true enableAuthentication=true
485 OOPProvFail_TS3a_TEST_CMDS = \
486 $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Providers/TestProviders/OOPModuleFailureProvider/testclient@@OOPProvFail_TS3a
487 OOPProvFail_TS3b_TEST_CMDS = \
488 $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Providers/TestProviders/OOPModuleFailureProvider/testclient@@OOPProvFail_TS3b
490 ifndef PEGASUS_DISABLE_PRIVILEGED_TESTS
492 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
493 CIMSERVER_CONFIG_OPTIONS="$(OOPProvFail_TS3_CONFIG_OPTIONS)" \
494 TESTSUITE_CMDS="$(OOPProvFail_TS3a_TEST_CMDS)"
495 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
496 CIMSERVER_CONFIG_OPTIONS="$(OOPProvFail_TS3_CONFIG_OPTIONS)" \
497 TESTSUITE_CMDS="$(OOPProvFail_TS3b_TEST_CMDS)"
499 run_OOPProvFail_TS3: FORCE
500 @ $(ECHO) "+++++ PEGASUS_DISABLE_PRIVILEGED_TESTS defined: Skipping run_OOPProvFail_TS3"
503 ###############################################################################
504 ## Indication SSL Test Suite 1: Indication Testing over HTTPS
506 ## Configuration Options: (none)
508 ###############################################################################
509 INDSSL_TS1a_CONFIG_OPTIONS = enableHttpsConnection=true enableAuthentication=false
510 INDSSL_TS1a_TEST_CMDS = \
511 $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Providers/TestProviders/IndicationStressTestProvider/testclient@@-f@@Makefile@@run_TS1_AuthenticationDisabled
513 INDSSL_TS1b_CONFIG_OPTIONS = enableHttpsConnection=true enableAuthentication=true sslClientVerificationMode=required
514 INDSSL_TS1b_TEST_CMDS = \
515 $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Providers/TestProviders/IndicationStressTestProvider/testclient@@-f@@Makefile@@run_TS1_AuthenticationEnabled
518 ifdef PEGASUS_HAS_SSL
519 ifndef PEGASUS_DISABLE_PRIVILEGED_TESTS
520 run_INDSSL_TS1: EnableUsers Create_SSL_Certificate_ignore
521 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
522 CIMSERVER_CONFIG_OPTIONS="$(INDSSL_TS1a_CONFIG_OPTIONS)" \
523 TESTSUITE_CMDS="$(INDSSL_TS1a_TEST_CMDS)"
524 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
525 CIMSERVER_CONFIG_OPTIONS="$(INDSSL_TS1b_CONFIG_OPTIONS)" \
526 TESTSUITE_CMDS="$(INDSSL_TS1b_TEST_CMDS)"
528 run_INDSSL_TS1: FORCE
529 @ $(ECHO) "+++++ PEGASUS_DISABLE_PRIVILEGED_TESTS defined: Skipping run_INDSSL_TS1"
532 run_INDSSL_TS1: FORCE
533 @ $(ECHO) "+++++ PEGASUS_HAS_SSL not defined: Skipping run_INDSSL_TS1"
537 ###############################################################################
539 ###############################################################################
540 ## SSL IPv4 Test Suite : Tests SSL connections for IPv4
542 ## Configuration Options: enableHttpsConnection=true
543 ## NOTE : Authentication is not enabled as we are only verifying
544 ## if SSL based IPv6 connections are working correctly. The osinfo
545 ## client requires a password to be passed for a remote connection
546 ## otherwise it will prompt for one. As a work around,
547 ## we are providing a dummy password.
549 ###############################################################################
550 SSL_IPV4_TS1_CONFIG_OPTIONS = enableHttpsConnection=true \
551 enableAuthentication=false
552 SSL_IPV4_TS1_CMD_1 = \
553 osinfo -s -w notapassword -h 127.0.0.1 -p 5989
554 SSL_IPV4_TS1_CMD_2 = \
555 osinfo -s -w notapassword -h localhost -p 5989
557 ifdef PEGASUS_HAS_SSL
558 run_SSL_IPV4_TS1: FORCE
559 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
560 CIMSERVER_CONFIG_OPTIONS="$(SSL_IPV4_TS1_CONFIG_OPTIONS)" \
561 TESTSUITE_CMDS="$(SSL_IPV4_TS1_CMD_1)"
562 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
563 CIMSERVER_CONFIG_OPTIONS="$(SSL_IPV4_TS1_CONFIG_OPTIONS)" \
564 TESTSUITE_CMDS="$(SSL_IPV4_TS1_CMD_2)"
566 run_SSL_IPV4_TS1: FORCE
567 @ $(ECHO) "+++++ PEGASUS_HAS_SSL not defined: Skipping run_SSL_IPV4_TS1"
570 ###############################################################################
571 ## SSL IPv6 Test Suite : Tests SSL connections for IPv6
573 ## Configuration Options: enableHttpsConnection=true
574 ## NOTE : Authentication is not enabled as we are only verifying
575 ## if SSL based IPv6 connections are working correctly. The osinfo
576 ## client requires a password to be passed for a remote connection
577 ## otherwise it will prompt for one. As a work around,
578 ## we are providing a dummy password.
580 ## The IPv4-mapped IPv6 address test is only enabled for unix
581 ## platforms as Windows does not support IPv4-mapped IPv6 addresses
582 ## on certain versions.
584 ###############################################################################
585 SSL_IPV6_TS1_CONFIG_OPTIONS = enableHttpsConnection=true \
586 enableAuthentication=false
587 SSL_IPV6_TS1_CMD_1 = \
588 osinfo -s -w notapassword -h ::1 -p 5989
589 SSL_IPV6_TS1_CMD_2 = \
590 osinfo -s -w notapassword -h ::ffff:127.0.0.1 -p 5989
592 ifdef PEGASUS_HAS_SSL
593 run_SSL_IPV6_TS1: FORCE
594 ifeq ($(PEGASUS_TEST_IPV6), true)
595 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
596 CIMSERVER_CONFIG_OPTIONS="$(SSL_IPV6_TS1_CONFIG_OPTIONS)" \
597 TESTSUITE_CMDS="$(SSL_IPV6_TS1_CMD_1)"
598 ifeq ($(OS_TYPE), unix)
599 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
600 CIMSERVER_CONFIG_OPTIONS="$(SSL_IPV6_TS1_CONFIG_OPTIONS)" \
601 TESTSUITE_CMDS="$(SSL_IPV6_TS1_CMD_2)"
604 @ $(ECHO) "+++++ PEGASUS_TEST_IPV6 not defined: Skipping run_SSL_IPV6_TS1"
607 run_SSL_IPV6_TS1: FORCE
608 @ $(ECHO) "+++++ PEGASUS_HAS_SSL not defined: Skipping run_SSL_IPV6_TS1"
611 ###############################################################################
612 ## CBA SSL Test Suite 1: Certificate based authentication Tests
614 ## Configuration Options: enableAuthentication=true
615 ## enableHttpsConnection=true
616 ## sslClientVerificationMode=optional
617 ## sslTrustStoreUserName=$(CURRENT_USER)
619 ###############################################################################
620 SSL_CBA_TS1_CONFIG_OPTIONS = enableHttpsConnection=true enableAuthentication=true \
621 sslClientVerificationMode=optional sslTrustStoreUserName=$(CURRENT_USER)
622 SSL_CBA_TS1_TEST_CMD_1 = \
623 $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Clients/cimtrust/tests@@SSLCertificateTest1
624 SSL_CBA_TS1_TEST_CMD_2 = \
625 $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Clients/cimcrl/tests@@SSLCRLTest1
627 ifdef PEGASUS_HAS_SSL
628 ifndef PEGASUS_DISABLE_PRIVILEGED_TESTS
629 run_SSL_CBA_TS1: FORCE
630 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
631 CIMSERVER_CONFIG_OPTIONS="$(SSL_CBA_TS1_CONFIG_OPTIONS)" \
632 TESTSUITE_CMDS="$(SSL_CBA_TS1_TEST_CMD_1)"
633 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
634 CIMSERVER_CONFIG_OPTIONS="$(SSL_CBA_TS1_CONFIG_OPTIONS)" \
635 TESTSUITE_CMDS="$(SSL_CBA_TS1_TEST_CMD_2)"
637 run_SSL_CBA_TS1: FORCE
638 @ $(ECHO) "+++++ PEGASUS_DISABLE_PRIVILEGED_TESTS defined: Skipping run_SSL_CBA_TS1"
641 run_SSL_CBA_TS1: FORCE
642 @ $(ECHO) "+++++ PEGASUS_HAS_SSL not defined: Skipping run_SSL_CBA_TS1"
646 ############################################################################
648 # Create_SSL_Certificate
650 # create a certificate that can be used for certification testing.
651 # It is currently used by the following tests:
654 Create_SSL_Certificate_ignore: FORCE
655 -$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile Create_SSL_Certificate
657 Create_SSL_Certificate: FORCE
658 ifdef PEGASUS_HAS_SSL
659 ifdef PEGASUS_TEST_USER_DEFINED
660 $(ECHO) "Creating SSL certificate for test"
661 cimtrust -a -U $(PEGASUS_TEST_USER_ID) -f $(PEGASUS_HOME)/server.pem -Ts
664 $(ECHO) "PEGASUS_HAS_SSL not defined - Not Creating SSL certificate for test"
667 ###############################################################################
668 ## G11N Test Suite 1: Globalization Tests
670 ## Configuration Options: forceProviderProcesses=false
672 ###############################################################################
673 G11N_TS1_CONFIG_OPTIONS = forceProviderProcesses=false
674 G11N_TS1_TEST_CMDS = \
675 $(MAKE) --directory $(PEGASUS_ROOT)/src/Clients/g11ntest \
679 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
680 CIMSERVER_CONFIG_OPTIONS="$(G11N_TS1_CONFIG_OPTIONS)" \
681 TESTSUITE_CMDS="$(G11N_TS1_TEST_CMDS)"
683 ###############################################################################
684 ## Stress Test Suite 1: Default Stress Tests
686 ## Configuration Options: (none)
688 ###############################################################################
689 STRESS_TS1_CONFIG_OPTIONS =
690 STRESS_TS1_TEST_CMDS = \
691 TestStressTestController
694 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
695 CIMSERVER_CONFIG_OPTIONS="$(STRESS_TS1_CONFIG_OPTIONS)" \
696 TESTSUITE_CMDS="$(STRESS_TS1_TEST_CMDS)"
697 ###############################################################################
699 ###############################################################################
700 ## SDK Test Suite 1: SDK Tests
702 ## Configuration Options: (none)
704 ###############################################################################
705 SDK_TS1_CONFIG_OPTIONS =
706 SDK_TS1_TEST_CMDS = \
707 $(MAKE) --directory $(PEGASUS_ROOT)/src/SDK/samples \
710 ifeq ($(PEGASUS_TEST_SDK),true)
712 $(MAKE) --directory=$(PEGASUS_ROOT)/mak \
713 -f $(PEGASUS_ROOT)/mak/SDKMakefile stageINCLUDE \
714 PEGASUS_STAGING_DIR=$(PEGASUS_HOME) \
715 PEGASUS_INCLUDE_DIR=/include
716 $(MAKE) --directory=$(PEGASUS_ROOT)/src/SDK/samples \
718 $(MAKE) --directory=$(PEGASUS_ROOT)/src/SDK/samples \
719 -f Makefile PEGASUS_INCLUDE_DIR=$(PEGASUS_HOME)/include
720 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
721 CIMSERVER_CONFIG_OPTIONS="$(SDK_TS1_CONFIG_OPTIONS)" \
722 TESTSUITE_CMDS="$(SDK_TS1_TEST_CMDS)"
725 @ $(ECHO) "+++++ PEGASUS_TEST_SDK is not true: Skipping run_SDK_TS1"
727 ###############################################################################
729 ###############################################################################
730 ## Export Client SSL Test Suite 1:
732 ## Configuration Options: enableHttpsConnection=true
734 ###############################################################################
735 ExportClientSSL_TS1_CONFIG_OPTIONS = enableHttpsConnection=true
736 ExportClientSSL_TS1_TEST_CMDS = \
737 $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Pegasus/ExportClient/tests/ExportClient@@-f@@Makefile@@runExportClientSSL_TS1
739 ifdef PEGASUS_HAS_SSL
740 run_ExportClientSSL_TS1:
741 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
742 CIMSERVER_CONFIG_OPTIONS="$(ExportClientSSL_TS1_CONFIG_OPTIONS)" \
743 TESTSUITE_CMDS="$(ExportClientSSL_TS1_TEST_CMDS)"
745 run_ExportClientSSL_TS1: FORCE
746 @ $(ECHO) "+++++ PEGASUS_HAS_SSL not defined: Skipping run_ExportClientSSL_TS1"
749 ###############################################################################
753 ###############################################################################
754 ## idleConnectionTimeout Test Suite 1: uses ChunkingStressProvider Tests
756 ## Configuration Options: idleConnectionTime=55
758 ###############################################################################
759 IDLE_CONNECTION_TIMEOUT_1_CONFIG_OPTIONS = idleConnectionTimeout=55
760 IDLE_CONNECTION_TIMEOUT_1_TEST_CMDS = \
761 $(MAKE)@@--directory \
762 $(PEGASUS_ROOT)/src/Providers/TestProviders/ChunkingStressProvider/testclient \
763 -f@@Makefile@@poststarttests
764 run_idleConnectionTimeout1: FORCE
765 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
766 CIMSERVER_CONFIG_OPTIONS="$(IDLE_CONNECTION_TIMEOUT_1_CONFIG_OPTIONS)" \
767 TESTSUITE_CMDS="$(IDLE_CONNECTION_TIMEOUT_1_TEST_CMDS)"
768 ###############################################################################
771 ###############################################################################
772 ## idleConnectionTimeout Test Suite 2: uses IdleConnectionTimeout client test
774 ## Configuration Options: idleConnectionTime=6
776 ###############################################################################
777 IDLE_CONNECTION_TIMEOUT_2_CONFIG_OPTIONS = idleConnectionTimeout=6
778 IDLE_CONNECTION_TIMEOUT_2_TEST_CMDS = \
779 $(MAKE)@@--directory \
780 $(PEGASUS_ROOT)/src/Pegasus/Client/tests/IdleConnectionTimeout/ \
781 -f@@Makefile@@timeoutTest@@IDLETIME=10
782 run_idleConnectionTimeout2: FORCE
783 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
784 CIMSERVER_CONFIG_OPTIONS="$(IDLE_CONNECTION_TIMEOUT_2_CONFIG_OPTIONS)" \
785 TESTSUITE_CMDS="$(IDLE_CONNECTION_TIMEOUT_2_TEST_CMDS)"
786 ###############################################################################
789 ###############################################################################
790 ## cimsub CLI Test Suite 1: PG_InterOp Tests
792 ## Configuration Options: (none)
794 ###############################################################################
795 CIMSUB_INTEROP_CONFIG_OPTIONS =
796 CIMSUB_INTEROP_TEST_CMDS = \
797 $(MAKE) --directory \
798 $(PEGASUS_ROOT)/src/Clients/cimsub/tests/testscriptInterOp \
799 -f Makefile cimsubTest_InterOp
800 run_Cimsub_InterOp: FORCE
801 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
802 CIMSERVER_CONFIG_OPTIONS="$(CIMSUB_INTEROP_CONFIG_OPTIONS)" \
803 TESTSUITE_CMDS="$(CIMSUB_INTEROP_TEST_CMDS)"
804 ###############################################################################
806 ###############################################################################
807 ## CMPI subscription activation Test Suite 1:
809 ## Configuration Options: (none)
811 ###############################################################################
812 CMPI_SUB_TEST_CONFIG_OPTIONS=
813 CMPI_SUBa_TEST_CMDS = \
814 TestIndicationStressTest TestCMPI_IndicationStressTestClass test/TestProvider setup WQL
815 CMPI_SUBb_TEST_CMDS = \
816 TestIndicationStressTest TestCMPI_IndicationStressTestClass test/TestProvider getSubscriptionCount
817 CMPI_SUBc_TEST_CMDS = \
818 TestIndicationStressTest TestCMPI_IndicationStressTestClass test/TestProvider cleanup
820 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
821 CIMSERVER_CONFIG_OPTIONS="$(CMPI_SUB_TEST_CONFIG_OPTIONS)" \
822 TESTSUITE_CMDS="$(CMPI_SUBa_TEST_CMDS)"
823 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
824 CIMSERVER_CONFIG_OPTIONS="$(CMPI_SUB_TEST_CONFIG_OPTIONS)" \
825 TESTSUITE_CMDS="$(CMPI_SUBb_TEST_CMDS)"
826 $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
827 CIMSERVER_CONFIG_OPTIONS="$(CMPI_SUB_TEST_CONFIG_OPTIONS)" \
828 TESTSUITE_CMDS="$(CMPI_SUBc_TEST_CMDS)"
830 ##############################################################################
833 ##############################################################################
835 ## TestXMLRepository rule is used to run the poststarttests suite on
836 ## the XML Repository built using cimmofl
838 ## TestXMLRepositoryServer rule is used to run the poststarttests suite on
839 ## the XML Repository built using cimmof
841 ## TestXMLCmpRepository rule is used to run the poststarttest suite on
842 ## the XML Compressed Repository built using cimmofl
845 ############################
850 TestXMLRepository: TestXMLClean TestXMLBuildRepo TestXMLRepo
851 @ $(ECHO) TestXMLRepository +++++ passed all test
853 ############################
855 ## TestXMLRepositoryServer
857 TestXMLRepositoryServer: TestXMLClean TestXMLBuildRepoServ TestXMLRepo
858 @ $(ECHO) TestXMLRepositoryServer +++++ passed all test
860 ############################
862 ## TestXMLCmpRepository - run poststarttest on Compressed BIN Repository
864 ifdef PEGASUS_ENABLE_COMPRESSED_REPOSITORY
865 TestXMLCmpRepository: FORCE
866 @ $(ECHO) TestXMLCmpRepository +++++ Repository compressed by default - nothing more to test.
867 @ $(ECHO) TestXMLCmpRepository +++++ passed all test
870 ifdef PEGASUS_ENABLE_COMPRESSED_REPOSITORY_TEST
872 TestXMLCmpRepository: TestXMLClean TestCmpBuild TestXMLBuildRepo TestXMLRepo TestRegBuild
873 @ $(ECHO) TestXMLCmpRepository +++++ passed all test
875 TestXMLCmpRepository: FORCE
876 @ $(ECHO) TestXMLCmpRepository +++++ Not tested
877 @ $(ECHO) TestXMLCmpRepository +++++ refer to readme.compressed_repository
878 @ $(ECHO) TestXMLCmpRepository +++++ to enable: set PEGASUS_ENABLE_COMPRESSED_REPOSITORY_TEST=true
882 ###########################
887 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
888 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryclean REPOSITORY_NAME=repository_xml
891 ###########################
893 ## TestXMLStartServer
895 TestXMLStartServer: FORCE
896 $(MAKE) --directory=$(PEGASUS_ROOT)/src/Server -f Makefile install_run
897 - $(MKDIRHIER) $(PEGASUS_HOME)/repository_xml
898 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart CIMSERVER_CONFIG_OPTIONS="repositoryDir=$(PEGASUS_HOME)/repository_xml"
902 #### The following caused the cimserver to fail on startup
904 #### $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart CIMSERVER_CONFIG_OPTIONS="enableBinRepository=false repositoryDir=$(PEGASUS_HOME)/repository_xml"
906 ###########################
910 TestXMLBuildRepo: FORCE
911 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository REPOSITORY_NAME=repository_xml REPOSITORY_MODE=XML
912 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepository REPOSITORY_NAME=repository_xml REPOSITORY_MODE=XML
915 ###########################
917 ## TestXMLBuildRepoServ
919 TestXMLBuildRepoServ: TestXMLStartServer
920 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryServer REPOSITORY_NAME=repository_xml REPOSITORY_MODE=XML
921 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepositoryServer REPOSITORY_NAME=repository_xml REPOSITORY_MODE=XML
922 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
925 ###########################
929 TestXMLRepo: servertestsclean
930 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestXMLStartServer
931 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile poststarttests REPOSITORY_NAME=repository_xml REPOSITORY_MODE=XML
932 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
939 ##############################################################################
941 ## TestBinRepository rule is used to run the poststarttests suite on
942 ## the Binary Repository built using cimmofl
944 ## TestBinRepositoryServer rule is used to run the poststarttests suite on
945 ## the Binary Repository built using cimmof
947 ## TestBinCmpRepository rule is used to run the poststarttest suite on
948 ## the Binry Compressed Repository built using cimmofl
951 ############################
955 ### bug 3011 disabled Binary Repository testing on LINUX_IA64 to allow
956 ### the nightly tests to run
958 TestBinRepository: TestBinClean TestBinBuildRepo TestBinRepo
959 @ $(ECHO) TestBinRepository +++++ passed all test
962 ############################
964 ## TestBinRepositoryServer
966 TestBinRepositoryServer: TestBinClean TestBinBuildRepoServ TestBinRepo
967 @ $(ECHO) TestBinRepositoryServer +++++ passed all test
969 ############################
971 ## TestBinCmpRepository - run poststarttest on Compressed BIN Repository
973 ifdef PEGASUS_ENABLE_COMPRESSED_REPOSITORY
974 TestBinCmpRepository: FORCE
975 @ $(ECHO) TestBinCmpRepository +++++ Repository compressed by default - nothing more to test.
976 @ $(ECHO) TestBinCmpRepository +++++ passed all test
979 ifdef PEGASUS_ENABLE_COMPRESSED_REPOSITORY_TEST
981 TestBinCmpRepository: TestBinClean TestCmpBuild TestBinBuildRepo TestBinRepo TestRegBuild
982 @ $(ECHO) TestBinCmpRepository +++++ passed all test
984 TestBinCmpRepository: FORCE
985 @ $(ECHO) TestBinCmpRepository +++++ Not tested
986 @ $(ECHO) TestBinCmpRepository +++++ refer to readme.compressed_repository
987 @ $(ECHO) TestBinCmpRepository +++++ to enable: set PEGASUS_ENABLE_COMPRESSED_REPOSITORY_TEST=true
992 ###########################
997 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
998 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryclean REPOSITORY_NAME=repository_bin
1001 ###########################
1003 ## TestBinStartServer
1005 TestBinStartServer: FORCE
1006 $(MAKE) --directory=$(PEGASUS_ROOT)/src/Server -f Makefile install_run
1007 - $(MKDIRHIER) $(PEGASUS_HOME)/repository_bin
1008 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart CIMSERVER_CONFIG_OPTIONS="enableBinaryRepository=true repositoryDir=$(PEGASUS_HOME)/repository_bin"
1011 ###########################
1015 TestBinBuildRepo: FORCE
1016 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
1017 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepository REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
1020 ###########################
1022 ## TestBinBuildRepoServ
1024 TestBinBuildRepoServ: TestBinStartServer
1025 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryServer REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
1026 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepositoryServer REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
1027 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1030 ###########################
1034 TestBinRepo: servertestsclean
1035 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestBinStartServer
1036 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile poststarttests REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
1037 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1042 ############################
1044 ## TestCmpBuild - used to compile the repository for compression
1047 @ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository clean
1048 @ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository depend PEGASUS_ENABLE_COMPRESSED_REPOSITORY=1
1049 @ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository PEGASUS_ENABLE_COMPRESSED_REPOSITORY=1
1052 ############################
1054 ## TestRegBuild - used to compile the repository for no compression
1057 @ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository clean
1058 @ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository depend
1059 @ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository
1062 ###############################################################################
1064 ## Trace Configuration
1066 ## Options: see usagetrace rule
1068 ###############################################################################
1072 $(USAGE)"TestMakefile Trace Commands: "
1073 $(USAGE)" The cimserver must be running when using W=c which is the default for W"
1075 $(USAGE)" traceon W=[current/planned(c,p): Enables all tracing."
1076 $(USAGE)" traceoff W=[current/planned(c,p): Disables all tracing."
1077 $(USAGE)" tracesettings: Displays all trace settings."
1078 $(USAGE)" tracecomp: Displays a trace componenets list."
1079 $(USAGE)" traceon-CL C=[comp] L=[level(1,2,3,4)] W=[current/planned(c,p): "
1080 $(USAGE)" Enables tracing on component C at trace level L."
1082 $(USAGE)" W defaults to c in the above commands where W can be specified"
1084 $(USAGE)" Usage examples:"
1085 $(USAGE)" traceon turns on trace in current server config"
1086 $(USAGE)" traceon W=c turns on trace in current server config"
1087 $(USAGE)" traceon W=p turns on trace in planned server config"
1088 $(USAGE)" traceoff turns on trace in current server config"
1089 $(USAGE)" traceoff W=c turns on trace in current server config"
1090 $(USAGE)" traceoff W=p turns on trace in planned server config"
1092 $(USAGE)" traceon-CL C=DiscardedData L=3 W=c"
1093 $(USAGE)" Turns on trace for DiscardedData at level 3 in current server config"
1094 $(USAGE)" traceon-CL C=DiscardedData L=3 W=p"
1095 $(USAGE)" Turns on trace for DiscardedData at level 3 in planned server config"
1100 @ cimconfig -s traceComponents=ALL -$W
1101 @ cimconfig -s traceLevel=3 -$W
1102 $(MAKE) -f $(ROOT)/TestMakefile tracesettings
1106 @ cimconfig -s traceComponents= -$W
1107 $(MAKE) -f $(ROOT)/TestMakefile tracesettings
1110 tracesettings: FORCE
1112 cimconfig -g traceComponents -c -p
1114 cimconfig -g traceLevel -c -p
1116 cimconfig -g traceFilePath -c -p
1120 @ cimconfig -s traceComponents=$C -$W
1121 @ cimconfig -s traceLevel=$L -$W
1122 $(MAKE) -f $(ROOT)/TestMakefile tracesettings
1126 $(USAGE)"Trace component list:"
1135 $(USAGE)"ProvManager"
1136 $(USAGE)"Repository"
1137 $(USAGE)"Dispatcher"
1138 $(USAGE)"OsAbstraction"
1140 $(USAGE)"IndDelivery"
1141 $(USAGE)"IndHandler"
1142 $(USAGE)"Authentication"
1143 $(USAGE)"Authorization"
1144 $(USAGE)"UserManager"
1145 $(USAGE)"SubscriptionService"
1146 $(USAGE)"Registration"
1149 $(USAGE)"IndicationService"
1150 $(USAGE)"IndicationServiceInternal"
1151 $(USAGE)"ConfigurationManager"
1152 $(USAGE)"MessageQueueService"
1153 $(USAGE)"ProviderManager"
1154 $(USAGE)"ObjectResolution"
1158 $(USAGE)"MetaDispatcher"
1160 $(USAGE)"IndicationHandlerService"
1161 $(USAGE)"CIMExportRequestDispatcher"
1164 $(USAGE)"ControlProvider"
1165 $(USAGE)"AsyncOpNode"
1166 $(USAGE)"CIMOMHandle"
1168 $(USAGE)"ExportClient"
1170 $(USAGE)"DiscardedData"
1171 $(USAGE)"ProviderAgent"
1174 ###############################################################################
1176 ## Trace Configuration - Old rules being deprecated
1179 ## XMLTraceOn: Enables XML request and response tracing.
1180 ## ProviderLoadTraceOn: Enables Provider load tracing.
1181 ## XML+ProviderLoadTraceOn: Enables both XML request/response and Provider
1183 ## AllTraceOn: Enables all tracing.
1184 ## AllTraceOff: Disables all tracing.
1185 ## list: Lists trace settings.
1187 ###############################################################################
1190 cimconfig -s traceComponents=XmlIO -c
1191 cimconfig -s traceLevel=3 -c
1192 cimconfig -g traceComponents
1193 cimconfig -g traceLevel
1195 ProviderLoadTraceOn:
1196 cimconfig -s traceComponents=ProvManager,OsAbstraction
1197 cimconfig -s traceLevel=3 -c
1198 cimconfig -g traceComponents
1199 cimconfig -g traceLevel
1201 XML+ProviderLoadTraceOn:
1202 cimconfig -s traceComponents=XmlIO,ProvManager,OsAbstraction
1203 cimconfig -s traceLevel=3 -c
1204 cimconfig -g traceComponents
1205 cimconfig -g traceLevel
1209 AllTraceOff: traceoff
1213 #########################################################################
1216 # More testing options...
1218 # The standard test seem to contain additional test that may not be able
1219 # to run on all platforms so they have been grouped here for now rather than
1220 # being included in the serversuite rule.
1226 # TestRemoteSecurity
1229 # NOTE: The TestsNoSecurity test is comprised of DisableSecurity and
1232 # NOTE: The TestNoSecurity step runs the servertests which builds the
1233 # the repository that is then left in place for the remaining tests.
1234 # The cimof test must be before the TestNosecurity step as it removes
1235 # the repository builds a new one with cimmofl and another one with
1236 # cimmof and then compares them.
1238 # NOTE: The Authentication test is comprised of EnableAuthentication,
1239 # TestLocalSecurity and TestRemoteSecurity.
1241 # NOTE: The Authorization test is comprised of EnableAuthorization and
1242 # TestAuthorization.
1244 # NOTE: The EnableAuthentication and EnableAuthorization steps require
1245 # root access. Pegasus doesn't currently have the infrastructure
1246 # in place to run the server as root and run the test as non-root.
1247 # Rather than run everything, server, tests, providers, clients etc.
1248 # as root many testers prefer to run the tests as non-root. Setting
1249 # PEGASUS_DISABLE_PRIVILEGED_TESTS in the environment helps to
1253 standardtests: FORCE
1254 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i DisableSecurity
1255 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestCimmof
1256 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestNoSecurity
1257 ifndef PEGASUS_DISABLE_PRIVILEGED_TESTS
1258 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile EnableAuthentication
1259 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestLocalSecurity
1260 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestRemoteSecurity
1261 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile EnableAuthorization
1262 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestAuthorization
1264 @ $(ECHO) "+++++ PEGASUS_DISABLE_PRIVILEGED_TESTS defined: Skipping EnableAuthentication, TestLocalSecurity, and TestRemoteSecurity "
1265 @ $(ECHO) "+++++ PEGASUS_DISABLE_PRIVILEGED_TESTS defined: Skipping EnableAuthorization and TestAuthorization "
1267 @ $(ECHO) "+++++ TestMakefile standardtests complete"
1270 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile servertests
1271 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
1272 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile RunTestClientLocal
1275 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile RunTestClientLocal
1276 $(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest -f Makefile poststarttests HOSTNAME= PORT= USER= PASSWORD= SECURITY_ENABLED=true
1279 TestClient -user $(PEGASUS_TEST_USER_ID) -password $(PEGASUS_TEST_USER_PASS) $(system):5988
1280 $(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest/static -f Makefile poststarttests HOSTNAME=-h$(system) USER=-u$(PEGASUS_TEST_USER_ID) PASSWORD=-w$(PEGASUS_TEST_USER_PASS) SECURITY_ENABLED=true
1283 TestPegClientDeleteNamespace -a -user $(PEGASUS_TEST_USER_ID) -password $(PEGASUS_TEST_USER_PASS)
1284 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile RunTestClientLocal
1285 TestClient -user $(PEGASUS_TEST_USER_ID) -password $(PEGASUS_TEST_USER_PASS) $(system):5988
1286 $(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest/static -f Makefile poststarttests HOSTNAME=-h$(system) USER=-u$(PEGASUS_TEST_USER_ID) PASSWORD=-w$(PEGASUS_TEST_USER_PASS) SECURITY_ENABLED=true
1289 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile DisableSecurity
1290 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository
1291 $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepository
1292 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
1293 $(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest/cimv2/Subscription -f Makefile poststarttests
1294 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile cimstop
1297 $(MAKE) --directory=$(PEGASUS_ROOT) -f Testcimmof poststarttests
1303 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1304 cimconfig -s enableAuthentication=false -p
1305 cimconfig -s enableNamespaceAuthorization=false -p
1308 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1309 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
1310 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile ConfigureUsers
1312 EnableAuthentication:
1313 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1314 cimconfig -s enableAuthentication=true -p
1315 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
1316 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile ConfigureUsers
1318 EnableAuthorization:
1319 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1320 cimconfig -s enableNamespaceAuthorization=true -p
1321 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
1322 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i ConfigureAuthorizations
1325 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1326 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithSSL
1331 # The server must be running prior to invoking this rule
1334 ifndef PEGASUS_PAM_AUTHENTICATION
1336 -cimuser -a -u $(PEGASUS_TEST_USER_ID) -w $(PEGASUS_TEST_USER_PASS)
1340 # ConfigureAuthorizations rule
1342 # The server must be running prior to invoking this rule
1344 ConfigureAuthorizations:
1345 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test/cimv2 -R -W
1346 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/cimv2 -R -W
1347 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/PG_Internal -R -W
1348 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/PG_InterOp -R -W
1349 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/benchmark -R -W
1350 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/sampleprovider -R -W
1351 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test/static -R -W
1352 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/SampleProvider -R -W
1353 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root -R -W
1354 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/MCCAtest/A -R -W
1355 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/MCCAtest/B -R -W
1356 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test/TestProvider -R -W
1357 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test1 -R -W
1358 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test2 -R -W
1359 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test3 -R -W
1360 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test4 -R -W
1361 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test5 -R -W
1362 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test6 -R -W
1363 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test1/test2 -R -W
1364 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test1/test2/test3 -R -W
1365 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test1/test2/test3/test4 -R -W
1366 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test1/test2/test3/test4/test5 -R -W
1367 cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test1/test2/test3/test4/test5/test6 -R -W
1368 ifeq ($(PEGASUS_ENABLE_PRIVILEGE_SEPARATION),true)
1369 cimauth -a -u $(PEGASUS_CIMSERVERMAIN_USER) -n root/cimv2 -R -W
1372 startcimWithoutSSL: FORCE
1373 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart
1376 startcimWithSSL: FORCE
1377 $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart CIMSERVER_CONFIG_OPTIONS="enableHttpConnection=false enableHttpsConnection=true"