BUG#: 8657
[tpot/pegasus/.git] / TestMakefile
1 #//%LICENSE////////////////////////////////////////////////////////////////
2 #//
3 #// Licensed to The Open Group (TOG) under one or more contributor license
4 #// agreements.  Refer to the OpenPegasusNOTICE.txt file distributed with
5 #// this work for additional information regarding copyright ownership.
6 #// Each contributor licenses this file to you under the OpenPegasus Open
7 #// Source License; you may not use this file except in compliance with the
8 #// License.
9 #//
10 #// Permission is hereby granted, free of charge, to any person obtaining a
11 #// copy of this software and associated documentation files (the "Software"),
12 #// to deal in the Software without restriction, including without limitation
13 #// the rights to use, copy, modify, merge, publish, distribute, sublicense,
14 #// and/or sell copies of the Software, and to permit persons to whom the
15 #// Software is furnished to do so, subject to the following conditions:
16 #//
17 #// The above copyright notice and this permission notice shall be included
18 #// in all copies or substantial portions of the Software.
19 #//
20 #// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
21 #// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
22 #// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
23 #// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
24 #// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
25 #// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
26 #// SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
27 #//
28 #//////////////////////////////////////////////////////////////////////////
29 ###############################################################################
30 ##
31 ## Test Makefile for Pegasus CIMOM
32 ##
33 ## see the usage rule for documentation of rules etc.
34 ##
35 ##
36 ###############################################################################
37
38 error:
39         @ $(ECHO) "Specify desired makefile option (i.e., unittests, usage )"
40
41 include $(PEGASUS_ROOT)/mak/config.mak
42 include $(PEGASUS_ROOT)/mak/test.mak
43 include $(PEGASUS_ROOT)/mak/commands.mak
44
45 system = localhost
46
47 .PHONY: FORCE
48
49 FORCE:
50
51 usage: FORCE
52         $(USAGE)
53         $(USAGE)"TestMakefile Primary Targets:"
54         $(USAGE)
55         $(USAGE)"The following are all standalone tests. They stop and start the server,"
56         $(USAGE)"and build repositories as needed."
57         $(USAGE)
58         $(USAGE)"alltests           - Execute unittests and servertests"
59         $(USAGE)"unittests          - Execute the unit functional tests - no repository"
60         $(USAGE)"                     or active server is required"
61         $(USAGE)"servertests        - Execute a basic server test suites (No security, No SSL)"
62         $(USAGE)"standardtests      - Execute an extended server test suites "
63         $(USAGE)"                     using multiple options."
64         $(USAGE)"perftests          - Executes a brief server performance test"
65         $(USAGE)
66         $(USAGE)"usage2             - usage on secondary test targets"
67         $(USAGE)"usagetrace         - usage on trace targets"
68         $(USAGE)"stresstests        - Execute the default stress test suite"
69         $(USAGE)
70
71 usage2: FORCE
72         $(USAGE)
73         $(USAGE)"TestMakefile Secondary Targets:"
74         $(USAGE)
75         $(USAGE)"The following are run as part of the Primary target test suites and may"
76         $(USAGE)"also be invoked as standalone tests."
77         $(USAGE)
78         $(USAGE)"TestXMLRepository       - Executes poststarttests on XML repository"
79         $(USAGE)"                          built with cimmofl."
80         $(USAGE)"TestXMLRepositoryServer - Executes poststarttests on XML repository"
81         $(USAGE)"                          built with cimmof."
82         $(USAGE)"TestXMLCmpRepository    - Executes poststarttests on XML compressed"
83         $(USAGE)"                          repository built with cimmofl."
84         $(USAGE)"TestBinRepository       - Executes poststarttests on binary repository "
85         $(USAGE)"                          built with cimmofl."
86         $(USAGE)"TestBinRepositoryServer - Executes poststarttests on binary repository"
87         $(USAGE)"                          built with cimmof."
88         $(USAGE)"TestBinCmpRepository    - Executes poststarttests on binary compressed"
89         $(USAGE)"                          repository built with cimmofl."
90         $(USAGE)
91         $(USAGE)"The following require the repository to be pre-built."
92         $(USAGE)
93         $(USAGE)"run_SSL_CBA_TS1         - Executes the Certificate based authentication test suite."
94         $(USAGE)"run_SSL_IPV4_TS1        - Executes the IPv4 SSL connection test suite."
95         $(USAGE)"run_SSL_IPV6_TS1        - Executes the IPv6 SSL connection test suite."
96         $(USAGE)"run_OOP_TS1             - Executes the Out Of Process Provider tests"
97         $(USAGE)"run_G11N_TS1            - Executes the Globalization tests"
98         $(USAGE)
99         $(USAGE)"The following require the repository to be pre-built and the server to be started."
100         $(USAGE)
101         $(USAGE)"serversuite             - the collection of test run by the servertests rule"
102         $(USAGE)"run_STRESS_TS1          - Executes the stresstests"
103         $(USAGE)"slptests                - Executes the slptests"
104         $(USAGE)"run_Cmpi_Sub            - Executes the CMPI subscription tests"
105         $(USAGE)
106
107
108 ##########################################################
109 #
110 # rules that are defined in Makefile
111 #
112 ##########################################################
113
114 build: FORCE
115         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile build
116
117 world: FORCE
118         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile world
119
120 new: FORCE
121         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile new
122
123 clean: FORCE
124         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile clean
125
126 depend: FORCE
127         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile depend
128
129 ###############################################################################
130 #   mak/certificate_test.mak implements three key functions for
131 #   testing Certificate-Based Authentication (CBA).
132 #
133 #   setupCBATestCertificates is used to create a set of test certificates
134 #       make -f TestMakefile setupCBATestCertificates
135 #
136 #   runCBATestSuites is used to run a set of CBA tests
137 #       make -f TestMakefile runCBATestSuites
138 #
139 #   cleanupCBATestCertificates can be used to remove the test certificates
140 #       make -f TestMakefile cleanupCBATestCertificates
141 ###############################################################################
142 include $(PEGASUS_ROOT)/mak/certificate_test.mak
143
144 ############################################################
145 #
146 # rules defined here
147 #
148 ############################################################
149
150 ##
151 ## Although the macros CIMSERVER_STOP_SERVICE and CIMSERVER_START_SERVICE
152 ## are available and could be invoked directly, their direct usage is
153 ## discouraged in favor of invoking the cimstop and the cimstart rules
154 ## as this allows one place where additional checks, delays etc may be
155 ## added in the future to control or further test the servers performance
156 ## in executing these commands.
157 ##
158
159 #######################
160 #
161 # doc
162 #
163 doc:
164         $(MAKE) --directory=$(PEGASUS_ROOT)/doc/ProviderSpec -f Makefile
165         $(MAKE) --directory=$(PEGASUS_ROOT)/doc/DevManual -f Makefile
166
167
168 #######################
169 #
170 # repositoryServer
171 #
172 repositoryServer: FORCE
173         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
174         $(SLEEP) 5
175         $(RMREPOSITORY) $(REPOSITORY_ROOT)
176         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart
177         $(SLEEP) 5
178         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryServer
179         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepositoryServer
180
181 ######################
182 #
183 # prestarttests is being deprecated since poststarttest is being deprecated
184 # in favor of name more related to its intended functionality.
185 #
186 prestarttests: prestarttests_msg shortsleep unittests
187
188 prestarttests_msg: FORCE
189         @$(ECHO) "=============================================================================="
190         @$(ECHO) "TestMakefile: The \"prestarttests\" rule is being deprecated."
191         @$(ECHO) "              Use \"make testusage\" for a description of the usage model."   
192         @$(ECHO) "              The equivalent new rule is \"unittests\"."
193         @$(ECHO) "              Invoking the \"unittests\" rule now."
194         @$(ECHO) "=============================================================================="
195
196 ####################
197 #
198 # poststarttests is being deprecated since it multiply defines a
199 # recursive make rule leading to ambuguity and confusion.
200 #
201 poststarttests: poststarttests_msg shortsleep servertests
202
203 poststarttests_msg: FORCE
204         @$(ECHO) "==============================================================================="
205         @$(ECHO) "TestMakefile: The \"posstarttests\" rule is being deprecated.."
206         @$(ECHO) "              Use \"make testusage\" for a description of the usage model."   
207         @$(ECHO) "              The equivalent new rule is \"servertests\"."
208         @$(ECHO) "              Invoking the \"servertests\" rule now."
209         @$(ECHO) "==============================================================================="
210
211 #####################
212 #
213 # tests is being deprecated since it multiply defines a
214 # recursive make rule leading to ambuguity and confusion.
215 #
216 tests: tests_msg shortsleep alltests
217
218 tests_msg: FORCE
219         @$(ECHO) "==================================================================="
220         @$(ECHO) "TestMakefile: The \"tests\" rule is being deprecated."
221         @$(ECHO) "              Use \"make testusage\" for a description of the usage model."   
222         @$(ECHO) "              The equivalent new rule is \"alltests\"."
223         @$(ECHO) "              Invoking the \"alltests\" rule now."
224         @$(ECHO) "==================================================================="
225
226
227 shortsleep: FORCE
228         @$(SLEEP) 5
229
230 ####################
231 #
232 # unittests
233 #
234 unittests: FORCE
235         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile tests
236         @ $(ECHO) "+++++ TestMakefile unittests complete"
237
238 #####################
239 #
240 # servertests
241 #
242
243 servertestsclean: FORCE
244         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
245         $(MAKE) --directory=$(PEGASUS_ROOT)/src/Pegasus/CQL/tests/Queries -f Makefile clean
246         $(MAKE) --directory=$(PEGASUS_ROOT)/src/Pegasus/Query/QueryExpression/tests/Queries -f Makefile clean
247         $(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest -f Makefile clean
248
249 servertestssetup: FORCE
250 ifdef PEGASUS_HAS_SSL
251 #
252 # The association between user names and certificates is stored in the
253 # repository.  If the repository is recreated, we also need to re-initialize
254 # the trust store directories. Otherwise, the truststore content will be
255 # out-of-sync with the mapping stored in the repository.
256 #
257 #  NOTE: Tests that require their own test namespaces to run poststarttests
258 #  should add their namespace creation make commands to pegasus/Makefile
259 #  under the testrepository tag.
260 #
261         $(MAKE) --directory=$(PEGASUS_ROOT)/src/Server -f Makefile removeSSLTrustDirectories
262         $(MAKE) --directory=$(PEGASUS_ROOT)/src/Server -f Makefile createSSLTrustDirectories
263 endif
264         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository
265         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepository
266         @$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile \
267             cleanupCBATestCertificates
268         @$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile \
269             setupCBATestCertificates
270         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile cimstart
271         $(SLEEP) 5
272         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile ConfigureUsers
273         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile Create_SSL_Certificate
274 ifeq ($(PEGASUS_TEST_SDK),true)
275         $(MAKE) --directory=$(PEGASUS_ROOT)/src/SDK/samples -f Makefile setupSDK
276 endif
277         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile cimstop
278
279 # slptests are run under separate target because these testcases require that
280 # both the cimserver and SLP are running. There is no need for special options
281 # while starting cimserver.
282 slptests:
283         $(MAKE) --directory=$(PEGASUS_ROOT)/src/slp/tests/slptests -f Makefile slptests
284         @ $(ECHO) "+++++ TestMakefile slp test suite completed"
285
286 servertests: servertestsclean servertestssetup serversuite
287         @ $(ECHO) "+++++ TestMakefile servertests suites complete"
288
289 serversuite: FORCE
290         $(MAKE) --directory=$(PEGASUS_ROOT)/src/Pegasus/Server/tests -f Makefile commandtests
291         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile cimstart
292         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile poststarttests
293         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestBinRepository
294         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_Cimsub_InterOp
295         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_OOP_TS1
296         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_IndInit_TS1
297         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_OOPProvFail_TS1
298         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_OOPProvFail_TS2
299         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_OOPProvFail_TS3
300         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_INDSSL_TS1
301         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_SSL_IPV4_TS1
302         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_SSL_IPV6_TS1
303         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_SSL_CBA_TS1
304         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_G11N_TS1
305         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile runCBATestSuites
306         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_SDK_TS1
307         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_ExportClientSSL_TS1
308 ifeq ($(PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER),true)
309         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_Cmpi_Sub
310 endif
311         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_idleConnectionTimeout1
312         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_idleConnectionTimeout2
313
314 #####################
315 #
316 # stresstests
317 #
318 stresstests:
319         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_STRESS_TS1
320
321 ####################
322 #
323 # perftests - simple performance test until we have better
324 #
325 # - Turns statistics on (uses TestInterop until we have better)
326 # - runs poststarttests suite and TestBenchmark
327 # - runs cimperf to displat the statistics
328 # - turns statistics off
329 #
330 perftests: servertestsclean servertestssetup perfsuite
331
332 perfsuite: FORCE
333         $(PEGASUS_HOME)/bin/TestInterop on
334         $(TIME_CMD) $(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest -f Makefile poststarttests
335         @ $(ECHO) " "
336         $(TIME_CMD) $(PEGASUS_HOME)/bin/TestClient
337         @ $(ECHO) " "
338         $(TIME_CMD) $(PEGASUS_HOME)/bin/TestBenchmark
339         @ $(ECHO) " "
340         @ $(ECHO) " "
341         $(TIME_CMD) $(PEGASUS_HOME)/bin/cimperf
342         @ $(ECHO) " "
343         $(PEGASUS_HOME)/bin/TestInterop off
344
345
346 ####################
347 #
348 # alltests
349 #
350 alltests: unittests servertests
351 ifeq ($(OS_TYPE),windows)
352         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
353         $(MAKE) --directory=$(PEGASUS_ROOT)/src/Server -f Makefile uninstall
354 endif
355         @ $(ECHO) "+++++ TestMakefile alltests Complete"
356
357 ###############################################################################
358 ##  Test Suite Definitions
359 ###############################################################################
360
361 ###############################################################################
362 ##  OOP Test Suite 1: "Out-of-Process"(OOP) Provider Tests
363 ##
364 ##  Configuration Options: forceProviderProcesses=true
365 ##
366 ##  If PEGASUS_DEFAULT_ENABLE_OOP is set, then tests are run with OOP disabled
367 ##  since tests have already been run with OOP enabled.
368 ##
369 ##
370 ###############################################################################
371 ifeq ($(PEGASUS_DEFAULT_ENABLE_OOP),true)
372 OOP_TS1_CONFIG_OPTIONS = forceProviderProcesses=false
373 else
374 OOP_TS1_CONFIG_OPTIONS = forceProviderProcesses=true
375 endif
376
377 ifeq ($(PEGASUS_ENABLE_PRIVILEGE_SEPARATION),true)
378     # When privilege separation is enabled, most providers run out of process
379     # regardless of the forceProviderProcesses setting.  The exception is
380     # providers that register with UserContext = 5 (CIM Server).  The only
381     # case of this in the automated tests is the UserContextTestProvider.
382     OOP_TS1_TEST_CMDS = \
383         $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Providers/TestProviders/UserContextTestProvider/testclient@@poststarttests
384 else
385     OOP_TS1_TEST_CMDS = \
386         $(MAKE)@@--directory=$(PEGASUS_ROOT)@@-f@@Makefile@@poststarttests
387 endif
388
389 run_OOP_TS1:
390         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
391             CIMSERVER_CONFIG_OPTIONS="$(OOP_TS1_CONFIG_OPTIONS)" \
392             TESTSUITE_CMDS="$(OOP_TS1_TEST_CMDS)"
393
394 ###############################################################################
395
396 ###############################################################################
397 ##  IndInit Test Suite 1: IndicationService Initialization Tests
398 ##
399 ##  Configuration Options: (none)
400 ##
401 ###############################################################################
402 IndInit_TS1_CONFIG_OPTIONS =
403 IndInit_TS1a_TEST_CMDS = \
404         $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Pegasus/IndicationService/tests/ProcessIndication@@IndInit_TS1a
405 IndInit_TS1b_TEST_CMDS = \
406         $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Pegasus/IndicationService/tests/ProcessIndication@@IndInit_TS1b
407
408 run_IndInit_TS1:
409         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
410             CIMSERVER_CONFIG_OPTIONS="$(IndInit_TS1_CONFIG_OPTIONS)" \
411             TESTSUITE_CMDS="$(IndInit_TS1a_TEST_CMDS)"
412         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
413             CIMSERVER_CONFIG_OPTIONS="$(IndInit_TS1_CONFIG_OPTIONS)" \
414             TESTSUITE_CMDS="$(IndInit_TS1b_TEST_CMDS)"
415
416 ###############################################################################
417 ##  OOPProvFail Test Suite 1: OOP Provider Module Failure Tests
418 ##
419 ##  Configuration Options: forceProviderProcesses=true
420 ##  enableAuthentication=true, enableAuthentication=false
421 ##
422 ##  NOTE: Regardless of the setting of PEGASUS_DEFAULT_ENABLE_OOP, this test
423 ##  suite is always run with OOP enabled.  This test suite causes a provider to
424 ##  exit.  Running this test suite with OOP disabled would cause the cimserver
425 ##  to exit and the test suite to fail.
426 ##
427 ##  NOTE: The test is run once with authentication enabled, and once without
428 ##  authentication enabled.
429 ##
430 ###############################################################################
431 OOPProvFail_TS1a_CONFIG_OPTIONS = forceProviderProcesses=true enableAuthentication=true
432 OOPProvFail_TS1b_CONFIG_OPTIONS = forceProviderProcesses=true enableAuthentication=false
433 OOPProvFail_TS1_TEST_CMDS = \
434         $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Providers/TestProviders/OOPModuleFailureProvider/testclient@@OOPProvFail_TS1
435
436 ifndef PEGASUS_DISABLE_PRIVILEGED_TESTS
437 run_OOPProvFail_TS1:
438         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
439             CIMSERVER_CONFIG_OPTIONS="$(OOPProvFail_TS1a_CONFIG_OPTIONS)" \
440             TESTSUITE_CMDS="$(OOPProvFail_TS1_TEST_CMDS)"
441         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
442             CIMSERVER_CONFIG_OPTIONS="$(OOPProvFail_TS1b_CONFIG_OPTIONS)" \
443             TESTSUITE_CMDS="$(OOPProvFail_TS1_TEST_CMDS)"
444 else
445 run_OOPProvFail_TS1: FORCE
446         @ $(ECHO) "+++++ PEGASUS_DISABLE_PRIVILEGED_TESTS defined: Skipping run_OOPProvFail_TS1"
447 endif
448
449 ###############################################################################
450 ##  OOPProvFail Test Suite 2: OOP Provider Module Failure on IndicationService
451 ##                            Initialization Tests
452 ##
453 ##  Configuration Options: forceProviderProcesses=true
454 ##                         enableAuthentication=true
455 ##
456 ##  NOTE: Regardless of the setting of PEGASUS_DEFAULT_ENABLE_OOP, this test
457 ##  suite is always run with OOP enabled.  This test suite causes a provider to
458 ##  exit.  Running this test suite with OOP disabled would cause the cimserver
459 ##  to exit and the test suite to fail.
460 ##
461 ###############################################################################
462 OOPProvFail_TS2_CONFIG_OPTIONS = forceProviderProcesses=true enableAuthentication=true
463 OOPProvFail_TS2a_TEST_CMDS = \
464         $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Providers/TestProviders/OOPModuleFailureProvider/testclient@@OOPProvFail_TS2a
465 OOPProvFail_TS2b_TEST_CMDS = \
466         $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Providers/TestProviders/OOPModuleFailureProvider/testclient@@OOPProvFail_TS2b
467
468 ifndef PEGASUS_DISABLE_PRIVILEGED_TESTS
469 run_OOPProvFail_TS2:
470         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
471             CIMSERVER_CONFIG_OPTIONS="$(OOPProvFail_TS2_CONFIG_OPTIONS)" \
472             TESTSUITE_CMDS="$(OOPProvFail_TS2a_TEST_CMDS)"
473         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
474             CIMSERVER_CONFIG_OPTIONS="$(OOPProvFail_TS2_CONFIG_OPTIONS)" \
475             TESTSUITE_CMDS="$(OOPProvFail_TS2b_TEST_CMDS)"
476 else
477 run_OOPProvFail_TS2: FORCE
478         @ $(ECHO) "+++++ PEGASUS_DISABLE_PRIVILEGED_TESTS defined: Skipping run_OOPProvFail_TS2"
479 endif
480
481 ###############################################################################
482 ##  OOPProvFail Test Suite 3: OOP Provider Module Failure CIM Server restart
483 ##                            Tests
484 ##
485 ##  Configuration Options: forceProviderProcesses=true
486 ##                         enableAuthentication=true
487 ##
488 ##  NOTE: Regardless of the setting of PEGASUS_DEFAULT_ENABLE_OOP, this test
489 ##  suite is always run with OOP enabled.  This test suite causes a provider to
490 ##  exit.  Running this test suite with OOP disabled would cause the cimserver
491 ##  to exit and the test suite to fail.
492 ##
493 ###############################################################################
494 OOPProvFail_TS3_CONFIG_OPTIONS = forceProviderProcesses=true enableAuthentication=true
495 OOPProvFail_TS3a_TEST_CMDS = \
496         $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Providers/TestProviders/OOPModuleFailureProvider/testclient@@OOPProvFail_TS3a
497 OOPProvFail_TS3b_TEST_CMDS = \
498         $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Providers/TestProviders/OOPModuleFailureProvider/testclient@@OOPProvFail_TS3b
499
500 ifndef PEGASUS_DISABLE_PRIVILEGED_TESTS
501 run_OOPProvFail_TS3:
502         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
503             CIMSERVER_CONFIG_OPTIONS="$(OOPProvFail_TS3_CONFIG_OPTIONS)" \
504             TESTSUITE_CMDS="$(OOPProvFail_TS3a_TEST_CMDS)"
505         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
506             CIMSERVER_CONFIG_OPTIONS="$(OOPProvFail_TS3_CONFIG_OPTIONS)" \
507             TESTSUITE_CMDS="$(OOPProvFail_TS3b_TEST_CMDS)"
508 else
509 run_OOPProvFail_TS3: FORCE
510         @ $(ECHO) "+++++ PEGASUS_DISABLE_PRIVILEGED_TESTS defined: Skipping run_OOPProvFail_TS3"
511 endif
512
513 ###############################################################################
514 ##  Indication SSL Test Suite 1: Indication Testing over HTTPS
515 ##
516 ##  Configuration Options: (none)
517 ##
518 ###############################################################################
519 INDSSL_TS1a_CONFIG_OPTIONS = enableHttpsConnection=true enableAuthentication=false
520 INDSSL_TS1a_TEST_CMDS = \
521         $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Providers/TestProviders/IndicationStressTestProvider/testclient@@-f@@Makefile@@run_TS1_AuthenticationDisabled
522
523 INDSSL_TS1b_CONFIG_OPTIONS = enableHttpsConnection=true enableAuthentication=true sslClientVerificationMode=required
524 INDSSL_TS1b_TEST_CMDS = \
525         $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Providers/TestProviders/IndicationStressTestProvider/testclient@@-f@@Makefile@@run_TS1_AuthenticationEnabled
526
527
528 ifdef PEGASUS_HAS_SSL
529 ifndef PEGASUS_DISABLE_PRIVILEGED_TESTS
530 run_INDSSL_TS1: EnableUsers Create_SSL_Certificate_ignore
531         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
532             CIMSERVER_CONFIG_OPTIONS="$(INDSSL_TS1a_CONFIG_OPTIONS)" \
533             TESTSUITE_CMDS="$(INDSSL_TS1a_TEST_CMDS)"
534         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
535             CIMSERVER_CONFIG_OPTIONS="$(INDSSL_TS1b_CONFIG_OPTIONS)" \
536             TESTSUITE_CMDS="$(INDSSL_TS1b_TEST_CMDS)"
537 else
538 run_INDSSL_TS1: FORCE
539         @ $(ECHO) "+++++ PEGASUS_DISABLE_PRIVILEGED_TESTS defined: Skipping run_INDSSL_TS1"     
540 endif
541 else
542 run_INDSSL_TS1: FORCE
543         @ $(ECHO) "+++++ PEGASUS_HAS_SSL not defined: Skipping run_INDSSL_TS1"
544 endif
545
546
547 ###############################################################################
548
549 ###############################################################################
550 ##  SSL IPv4 Test Suite : Tests SSL connections for IPv4
551 ##
552 ##  Configuration Options: enableHttpsConnection=true
553 ##  NOTE : Authentication is not enabled as we are only verifying
554 ##         if SSL based IPv6 connections are working correctly. The osinfo
555 ##         client requires a password to be passed for a remote connection
556 ##         otherwise it will prompt for one. As a work around,
557 ##         we are providing a dummy password.
558 ##
559 ###############################################################################
560 SSL_IPV4_TS1_CONFIG_OPTIONS = enableHttpsConnection=true \
561       enableAuthentication=false
562 SSL_IPV4_TS1_CMD_1 = \
563         osinfo -s -w notapassword -h 127.0.0.1 -p 5989
564 SSL_IPV4_TS1_CMD_2 = \
565         osinfo -s -w notapassword -h localhost -p 5989
566
567 ifdef PEGASUS_HAS_SSL
568     run_SSL_IPV4_TS1: FORCE
569         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
570             CIMSERVER_CONFIG_OPTIONS="$(SSL_IPV4_TS1_CONFIG_OPTIONS)" \
571             TESTSUITE_CMDS="$(SSL_IPV4_TS1_CMD_1)"
572         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
573             CIMSERVER_CONFIG_OPTIONS="$(SSL_IPV4_TS1_CONFIG_OPTIONS)" \
574             TESTSUITE_CMDS="$(SSL_IPV4_TS1_CMD_2)"
575 else
576     run_SSL_IPV4_TS1: FORCE
577         @ $(ECHO) "+++++ PEGASUS_HAS_SSL not defined: Skipping run_SSL_IPV4_TS1"
578 endif
579
580 ###############################################################################
581 ##  SSL IPv6 Test Suite : Tests SSL connections for IPv6
582 ##
583 ##  Configuration Options: enableHttpsConnection=true
584 ##  NOTE : Authentication is not enabled as we are only verifying
585 ##         if SSL based IPv6 connections are working correctly. The osinfo
586 ##         client requires a password to be passed for a remote connection
587 ##         otherwise it will prompt for one. As a work around,
588 ##         we are providing a dummy password.
589 ##
590 ##         The IPv4-mapped IPv6 address test is only enabled for unix
591 ##         platforms as Windows does not support IPv4-mapped IPv6 addresses
592 ##         on certain versions.
593 ##
594 ###############################################################################
595 SSL_IPV6_TS1_CONFIG_OPTIONS = enableHttpsConnection=true \
596       enableAuthentication=false
597 SSL_IPV6_TS1_CMD_1 = \
598         osinfo -s -w notapassword -h ::1 -p 5989
599 SSL_IPV6_TS1_CMD_2 = \
600         osinfo -s -w notapassword -h ::ffff:127.0.0.1 -p 5989
601
602 ifdef PEGASUS_HAS_SSL
603     run_SSL_IPV6_TS1: FORCE
604     ifeq ($(PEGASUS_TEST_IPV6), true)
605         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
606             CIMSERVER_CONFIG_OPTIONS="$(SSL_IPV6_TS1_CONFIG_OPTIONS)" \
607             TESTSUITE_CMDS="$(SSL_IPV6_TS1_CMD_1)"
608       ifeq ($(OS_TYPE), unix)
609         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
610             CIMSERVER_CONFIG_OPTIONS="$(SSL_IPV6_TS1_CONFIG_OPTIONS)" \
611             TESTSUITE_CMDS="$(SSL_IPV6_TS1_CMD_2)"
612       endif
613     else
614         @ $(ECHO) "+++++ PEGASUS_TEST_IPV6 not defined: Skipping run_SSL_IPV6_TS1"
615     endif
616 else
617     run_SSL_IPV6_TS1: FORCE
618         @ $(ECHO) "+++++ PEGASUS_HAS_SSL not defined: Skipping run_SSL_IPV6_TS1"
619 endif
620
621 ###############################################################################
622 ##  CBA SSL Test Suite 1: Certificate based authentication Tests
623 ##
624 ##  Configuration Options: enableAuthentication=true
625 ##                         enableHttpsConnection=true
626 ##                         sslClientVerificationMode=optional
627 ##                         sslTrustStoreUserName=$(CURRENT_USER)
628 ##
629 ###############################################################################
630 SSL_CBA_TS1_CONFIG_OPTIONS = enableHttpsConnection=true enableAuthentication=true \
631        sslClientVerificationMode=optional sslTrustStoreUserName=$(CURRENT_USER)
632 SSL_CBA_TS1_TEST_CMD_1 = \
633        $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Clients/cimtrust/tests@@SSLCertificateTest1
634 SSL_CBA_TS1_TEST_CMD_2 = \
635        $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Clients/cimcrl/tests@@SSLCRLTest1
636
637 ifdef PEGASUS_HAS_SSL
638 ifndef PEGASUS_DISABLE_PRIVILEGED_TESTS
639 run_SSL_CBA_TS1: FORCE
640         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
641             CIMSERVER_CONFIG_OPTIONS="$(SSL_CBA_TS1_CONFIG_OPTIONS)" \
642             TESTSUITE_CMDS="$(SSL_CBA_TS1_TEST_CMD_1)"
643         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
644             CIMSERVER_CONFIG_OPTIONS="$(SSL_CBA_TS1_CONFIG_OPTIONS)" \
645             TESTSUITE_CMDS="$(SSL_CBA_TS1_TEST_CMD_2)"
646 else
647 run_SSL_CBA_TS1: FORCE
648         @ $(ECHO) "+++++ PEGASUS_DISABLE_PRIVILEGED_TESTS defined: Skipping run_SSL_CBA_TS1"    
649 endif
650 else
651 run_SSL_CBA_TS1: FORCE
652         @ $(ECHO) "+++++ PEGASUS_HAS_SSL not defined: Skipping run_SSL_CBA_TS1"
653
654 endif
655
656 ############################################################################
657 #
658 # Create_SSL_Certificate
659 #
660 # create a certificate that can be used for certification testing.
661 # It is currently used by the following tests:
662 #            -run_INDSSL_TS1
663 #
664 Create_SSL_Certificate_ignore: FORCE
665         -$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile Create_SSL_Certificate
666
667 Create_SSL_Certificate: FORCE
668 ifdef PEGASUS_HAS_SSL
669 ifdef PEGASUS_TEST_USER_DEFINED
670         $(ECHO) "Creating SSL certificate for test"
671         cimtrust -a -U $(PEGASUS_TEST_USER_ID) -f $(PEGASUS_HOME)/server.pem -Ts
672 endif
673 else
674         $(ECHO) "PEGASUS_HAS_SSL not defined - Not Creating SSL certificate for test"
675 endif
676
677 ###############################################################################
678 ##  G11N Test Suite 1: Globalization Tests
679 ##
680 ##  Configuration Options: forceProviderProcesses=false
681 ##
682 ###############################################################################
683 G11N_TS1_CONFIG_OPTIONS = forceProviderProcesses=false
684 G11N_TS1_TEST_CMDS = \
685         $(MAKE) --directory $(PEGASUS_ROOT)/src/Clients/g11ntest \
686             -f Makefile g11ntest
687
688 run_G11N_TS1:
689         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
690             CIMSERVER_CONFIG_OPTIONS="$(G11N_TS1_CONFIG_OPTIONS)" \
691             TESTSUITE_CMDS="$(G11N_TS1_TEST_CMDS)"
692
693 ###############################################################################
694 ##  Stress Test Suite 1:  Default Stress Tests
695 ##
696 ##  Configuration Options: (none)
697 ##
698 ###############################################################################
699 STRESS_TS1_CONFIG_OPTIONS =
700 STRESS_TS1_TEST_CMDS = \
701         TestStressTestController
702
703 run_STRESS_TS1:
704         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
705             CIMSERVER_CONFIG_OPTIONS="$(STRESS_TS1_CONFIG_OPTIONS)" \
706             TESTSUITE_CMDS="$(STRESS_TS1_TEST_CMDS)"
707 ###############################################################################
708
709 ###############################################################################
710 ##  SDK Test Suite 1:  SDK Tests
711 ##
712 ##  Configuration Options: (none)
713 ##
714 ###############################################################################
715 SDK_TS1_CONFIG_OPTIONS =
716 SDK_TS1_TEST_CMDS = \
717         $(MAKE) --directory $(PEGASUS_ROOT)/src/SDK/samples \
718             -f Makefile testSDK
719
720 ifeq ($(PEGASUS_TEST_SDK),true)
721 run_SDK_TS1: FORCE
722         $(MAKE) --directory=$(PEGASUS_ROOT)/mak \
723             -f $(PEGASUS_ROOT)/mak/SDKMakefile stageINCLUDE \
724             PEGASUS_STAGING_DIR=$(PEGASUS_HOME) \
725             PEGASUS_INCLUDE_DIR=/include
726         $(MAKE) --directory=$(PEGASUS_ROOT)/src/SDK/samples \
727             -f Makefile clean
728         $(MAKE) --directory=$(PEGASUS_ROOT)/src/SDK/samples \
729             -f Makefile PEGASUS_INCLUDE_DIR=$(PEGASUS_HOME)/include
730         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
731             CIMSERVER_CONFIG_OPTIONS="$(SDK_TS1_CONFIG_OPTIONS)" \
732             TESTSUITE_CMDS="$(SDK_TS1_TEST_CMDS)"
733 else
734 run_SDK_TS1: FORCE
735         @ $(ECHO) "+++++ PEGASUS_TEST_SDK is not true: Skipping run_SDK_TS1"    
736 endif
737 ###############################################################################
738
739 ###############################################################################
740 ##  Export Client SSL Test Suite 1:
741 ##
742 ##  Configuration Options: enableHttpsConnection=true
743 ##
744 ###############################################################################
745 ExportClientSSL_TS1_CONFIG_OPTIONS = enableHttpsConnection=true
746 ExportClientSSL_TS1_TEST_CMDS = \
747         $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Pegasus/ExportClient/tests/ExportClient@@-f@@Makefile@@runExportClientSSL_TS1
748
749 ifdef PEGASUS_HAS_SSL
750 run_ExportClientSSL_TS1:
751         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
752             CIMSERVER_CONFIG_OPTIONS="$(ExportClientSSL_TS1_CONFIG_OPTIONS)" \
753             TESTSUITE_CMDS="$(ExportClientSSL_TS1_TEST_CMDS)"
754 else
755 run_ExportClientSSL_TS1: FORCE
756         @ $(ECHO) "+++++ PEGASUS_HAS_SSL not defined: Skipping run_ExportClientSSL_TS1"
757 endif
758
759 ###############################################################################
760
761
762
763 ###############################################################################
764 ##  idleConnectionTimeout Test Suite 1:  uses ChunkingStressProvider Tests
765 ##
766 ##  Configuration Options: idleConnectionTime=55
767 ##
768 ###############################################################################
769 IDLE_CONNECTION_TIMEOUT_1_CONFIG_OPTIONS = idleConnectionTimeout=55
770 IDLE_CONNECTION_TIMEOUT_1_TEST_CMDS = \
771         $(MAKE)@@--directory \
772             $(PEGASUS_ROOT)/src/Providers/TestProviders/ChunkingStressProvider/testclient \
773             -f@@Makefile@@poststarttests
774 run_idleConnectionTimeout1: FORCE
775         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
776             CIMSERVER_CONFIG_OPTIONS="$(IDLE_CONNECTION_TIMEOUT_1_CONFIG_OPTIONS)" \
777             TESTSUITE_CMDS="$(IDLE_CONNECTION_TIMEOUT_1_TEST_CMDS)"
778 ###############################################################################
779
780
781 ###############################################################################
782 ##  idleConnectionTimeout Test Suite 2:  uses IdleConnectionTimeout client test
783 ##
784 ##  Configuration Options: idleConnectionTime=6
785 ##
786 ###############################################################################
787 IDLE_CONNECTION_TIMEOUT_2_CONFIG_OPTIONS = idleConnectionTimeout=6
788 IDLE_CONNECTION_TIMEOUT_2_TEST_CMDS = \
789         $(MAKE)@@--directory \
790             $(PEGASUS_ROOT)/src/Pegasus/Client/tests/IdleConnectionTimeout/ \
791             -f@@Makefile@@timeoutTest@@IDLETIME=10
792 run_idleConnectionTimeout2: FORCE
793         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
794             CIMSERVER_CONFIG_OPTIONS="$(IDLE_CONNECTION_TIMEOUT_2_CONFIG_OPTIONS)" \
795             TESTSUITE_CMDS="$(IDLE_CONNECTION_TIMEOUT_2_TEST_CMDS)"
796 ###############################################################################
797
798
799 ###############################################################################
800 ##  cimsub CLI Test Suite 1:  PG_InterOp Tests
801 ##
802 ##  Configuration Options: (none)
803 ##
804 ###############################################################################
805 CIMSUB_INTEROP_CONFIG_OPTIONS =
806 CIMSUB_INTEROP_TEST_CMDS = \
807         $(MAKE) --directory \
808             $(PEGASUS_ROOT)/src/Clients/cimsub/tests/testscriptInterOp \
809             -f Makefile cimsubTest_InterOp
810 run_Cimsub_InterOp: FORCE
811         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
812             CIMSERVER_CONFIG_OPTIONS="$(CIMSUB_INTEROP_CONFIG_OPTIONS)" \
813             TESTSUITE_CMDS="$(CIMSUB_INTEROP_TEST_CMDS)"
814 ###############################################################################
815
816 ###############################################################################
817 ## CMPI subscription activation Test Suite 1:
818 ##
819 ## Configuration Options: (none)
820 ##
821 ###############################################################################
822 CMPI_SUB_TEST_CONFIG_OPTIONS=
823 CMPI_SUBa_TEST_CMDS = \
824         TestIndicationStressTest TestCMPI_IndicationStressTestClass test/TestProvider setup WQL
825 CMPI_SUBb_TEST_CMDS = \
826         TestIndicationStressTest TestCMPI_IndicationStressTestClass test/TestProvider getSubscriptionCount
827 CMPI_SUBc_TEST_CMDS =  \
828         TestIndicationStressTest TestCMPI_IndicationStressTestClass test/TestProvider cleanup
829 run_Cmpi_Sub: FORCE
830         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
831             CIMSERVER_CONFIG_OPTIONS="$(CMPI_SUB_TEST_CONFIG_OPTIONS)" \
832             TESTSUITE_CMDS="$(CMPI_SUBa_TEST_CMDS)"
833         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
834             CIMSERVER_CONFIG_OPTIONS="$(CMPI_SUB_TEST_CONFIG_OPTIONS)" \
835             TESTSUITE_CMDS="$(CMPI_SUBb_TEST_CMDS)"
836         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
837             CIMSERVER_CONFIG_OPTIONS="$(CMPI_SUB_TEST_CONFIG_OPTIONS)" \
838             TESTSUITE_CMDS="$(CMPI_SUBc_TEST_CMDS)"
839
840 ##############################################################################
841
842
843 ##############################################################################
844 ##
845 ## TestXMLRepository rule is used to run the poststarttests suite on
846 ## the XML Repository built using cimmofl
847 ##
848 ## TestXMLRepositoryServer rule is used to run the poststarttests suite on
849 ## the XML Repository built using cimmof
850 ##
851 ## TestXMLCmpRepository rule is used to run the poststarttest suite on
852 ## the XML Compressed Repository built using cimmofl
853 ##
854
855 ############################
856 ##
857 ## TestXMLRepository
858 ##
859
860 TestXMLRepository: TestXMLClean TestXMLBuildRepo  TestXMLRepo
861         @ $(ECHO) TestXMLRepository +++++ passed all test
862
863 ############################
864 ##
865 ## TestXMLRepositoryServer
866 ##
867 TestXMLRepositoryServer: TestXMLClean  TestXMLBuildRepoServ TestXMLRepo
868         @ $(ECHO) TestXMLRepositoryServer +++++ passed all test
869
870 ############################
871 ##
872 ## TestXMLCmpRepository -  run poststarttest on Compressed BIN Repository
873 ##
874 ifdef PEGASUS_ENABLE_COMPRESSED_REPOSITORY
875 TestXMLCmpRepository: FORCE
876         @ $(ECHO) TestXMLCmpRepository +++++ Repository compressed by default - nothing more to test.
877         @ $(ECHO) TestXMLCmpRepository +++++ passed all test
878 else
879
880 ifdef PEGASUS_ENABLE_COMPRESSED_REPOSITORY_TEST
881
882 TestXMLCmpRepository: TestXMLClean  TestCmpBuild TestXMLBuildRepo TestXMLRepo TestRegBuild
883         @ $(ECHO) TestXMLCmpRepository +++++ passed all test
884 else
885 TestXMLCmpRepository: FORCE
886         @ $(ECHO) TestXMLCmpRepository +++++ Not tested
887         @ $(ECHO) TestXMLCmpRepository +++++ refer to readme.compressed_repository
888         @ $(ECHO) TestXMLCmpRepository +++++ to enable: set PEGASUS_ENABLE_COMPRESSED_REPOSITORY_TEST=true
889 endif
890 endif
891
892 ###########################
893 ##
894 ## TestXMLClean
895 ##
896 TestXMLClean: FORCE
897         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
898         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryclean REPOSITORY_NAME=repository_xml
899
900
901 ###########################
902 ##
903 ## TestXMLStartServer
904 ##
905 TestXMLStartServer: FORCE
906         $(MAKE) --directory=$(PEGASUS_ROOT)/src/Server -f Makefile install_run
907         - $(MKDIRHIER) $(PEGASUS_HOME)/repository_xml
908         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart CIMSERVER_CONFIG_OPTIONS="repositoryDir=$(PEGASUS_HOME)/repository_xml"
909         $(SLEEP) 5
910
911 ####
912 #### The following caused the cimserver to fail on startup
913 ####
914 ####    $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart CIMSERVER_CONFIG_OPTIONS="enableBinRepository=false repositoryDir=$(PEGASUS_HOME)/repository_xml"
915
916 ###########################
917 ##
918 ## TestXMLBuildRepo
919 ##
920 TestXMLBuildRepo: FORCE
921         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository REPOSITORY_NAME=repository_xml REPOSITORY_MODE=XML
922         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepository REPOSITORY_NAME=repository_xml REPOSITORY_MODE=XML
923
924
925 ###########################
926 ##
927 ## TestXMLBuildRepoServ
928 ##
929 TestXMLBuildRepoServ: TestXMLStartServer
930         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryServer REPOSITORY_NAME=repository_xml REPOSITORY_MODE=XML
931         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepositoryServer REPOSITORY_NAME=repository_xml REPOSITORY_MODE=XML
932         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
933
934
935 ###########################
936 ##
937 ## TestXMLRepo
938 ##
939 TestXMLRepo: servertestsclean
940         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestXMLStartServer
941         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile poststarttests REPOSITORY_NAME=repository_xml REPOSITORY_MODE=XML
942         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
943
944
945
946
947
948
949 ##############################################################################
950 ##
951 ## TestBinRepository rule is used to run the poststarttests suite on
952 ## the Binary Repository built using cimmofl
953 ##
954 ## TestBinRepositoryServer rule is used to run the poststarttests suite on
955 ## the Binary Repository built using cimmof
956 ##
957 ## TestBinCmpRepository rule is used to run the poststarttest suite on
958 ## the Binry Compressed Repository built using cimmofl
959 ##
960
961 ############################
962 ##
963 ## TestBinRepository
964 ##
965 ### bug 3011 disabled Binary Repository testing on LINUX_IA64 to allow
966 ### the nightly tests to run
967
968 TestBinRepository: TestBinClean TestBinBuildRepo  TestBinRepo
969         @ $(ECHO) TestBinRepository +++++ passed all test
970
971
972 ############################
973 ##
974 ## TestBinRepositoryServer
975 ##
976 TestBinRepositoryServer: TestBinClean  TestBinBuildRepoServ TestBinRepo
977         @ $(ECHO) TestBinRepositoryServer +++++ passed all test
978
979 ############################
980 ##
981 ## TestBinCmpRepository -  run poststarttest on Compressed BIN Repository
982 ##
983 ifdef PEGASUS_ENABLE_COMPRESSED_REPOSITORY
984 TestBinCmpRepository: FORCE
985         @ $(ECHO) TestBinCmpRepository +++++ Repository compressed by default - nothing more to test.
986         @ $(ECHO) TestBinCmpRepository +++++ passed all test
987 else
988
989 ifdef PEGASUS_ENABLE_COMPRESSED_REPOSITORY_TEST
990
991 TestBinCmpRepository: TestBinClean  TestCmpBuild TestBinBuildRepo TestBinRepo TestRegBuild
992         @ $(ECHO) TestBinCmpRepository +++++ passed all test
993 else
994 TestBinCmpRepository: FORCE
995         @ $(ECHO) TestBinCmpRepository +++++ Not tested
996         @ $(ECHO) TestBinCmpRepository +++++ refer to readme.compressed_repository
997         @ $(ECHO) TestBinCmpRepository +++++ to enable: set PEGASUS_ENABLE_COMPRESSED_REPOSITORY_TEST=true
998 endif
999 endif
1000
1001
1002 ###########################
1003 ##
1004 ## TestBinClean
1005 ##
1006 TestBinClean: FORCE
1007         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1008         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryclean REPOSITORY_NAME=repository_bin
1009
1010
1011 ###########################
1012 ##
1013 ## TestBinStartServer
1014 ##
1015 TestBinStartServer: FORCE
1016         $(MAKE) --directory=$(PEGASUS_ROOT)/src/Server -f Makefile install_run
1017         - $(MKDIRHIER) $(PEGASUS_HOME)/repository_bin
1018         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart CIMSERVER_CONFIG_OPTIONS="enableBinaryRepository=true repositoryDir=$(PEGASUS_HOME)/repository_bin"
1019         $(SLEEP) 5
1020
1021 ###########################
1022 ##
1023 ## TestBinBuildRepo
1024 ##
1025 TestBinBuildRepo: FORCE
1026         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
1027         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepository REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
1028
1029
1030 ###########################
1031 ##
1032 ## TestBinBuildRepoServ
1033 ##
1034 TestBinBuildRepoServ: TestBinStartServer
1035         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryServer REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
1036         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepositoryServer REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
1037         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1038
1039
1040 ###########################
1041 ##
1042 ## TestBinRepo
1043 ##
1044 TestBinRepo: servertestsclean
1045         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestBinStartServer
1046         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile poststarttests REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
1047         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1048
1049
1050
1051
1052 ############################
1053 ##
1054 ## TestCmpBuild - used to compile the repository for compression
1055 ##
1056 TestCmpBuild: FORCE
1057         @ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository clean
1058         @ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository depend PEGASUS_ENABLE_COMPRESSED_REPOSITORY=1
1059         @ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository PEGASUS_ENABLE_COMPRESSED_REPOSITORY=1
1060
1061
1062 ############################
1063 ##
1064 ## TestRegBuild - used to compile the repository for no compression
1065 ##
1066 TestRegBuild: FORCE
1067         @ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository clean
1068         @ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository depend
1069         @ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository
1070
1071
1072 ###############################################################################
1073 ##
1074 ## Trace Configuration
1075 ##
1076 ## Options: see usagetrace rule
1077 ##
1078 ###############################################################################
1079
1080 usagetrace: FORCE
1081         $(USAGE)
1082         $(USAGE)"TestMakefile Trace Commands: "
1083         $(USAGE)"  The cimserver must be running when using W=c which is the default for W"
1084         $(USAGE)
1085         $(USAGE)" traceon  W=[current/planned(c,p):   Enables all tracing."
1086         $(USAGE)" traceoff W=[current/planned(c,p):   Disables all tracing."
1087         $(USAGE)" tracesettings:                      Displays all trace settings."
1088         $(USAGE)" tracecomp:                          Displays a trace componenets list."
1089         $(USAGE)" traceon-CL C=[comp] L=[level(1,2,3,4)] W=[current/planned(c,p): "
1090         $(USAGE)"                           Enables tracing on component C at trace level L."
1091         $(USAGE)
1092         $(USAGE)" W defaults to c in the above commands where W can be specified"
1093         $(USAGE)
1094         $(USAGE)"  Usage examples:"
1095         $(USAGE)"   traceon       turns on trace in current server config"
1096         $(USAGE)"   traceon W=c   turns on trace in current server config"
1097         $(USAGE)"   traceon W=p   turns on trace in planned server config"
1098         $(USAGE)"   traceoff      turns on trace in current server config"
1099         $(USAGE)"   traceoff W=c  turns on trace in current server config"
1100         $(USAGE)"   traceoff W=p  turns on trace in planned server config"
1101         $(USAGE)
1102         $(USAGE)"   traceon-CL C=DiscardedData L=3 W=c"
1103         $(USAGE)"     Turns on trace for DiscardedData at level 3 in current server config"
1104         $(USAGE)"   traceon-CL C=DiscardedData L=3 W=p"
1105         $(USAGE)"     Turns on trace for DiscardedData at level 3 in planned server config"
1106         $(USAGE)
1107         $(USAGE)
1108
1109 traceon: FORCE
1110         @ cimconfig -s traceComponents=ALL -$W
1111         @ cimconfig -s traceLevel=3 -$W
1112         $(MAKE) -f $(ROOT)/TestMakefile tracesettings
1113
1114
1115 traceoff: FORCE
1116         @ cimconfig -s traceComponents=  -$W
1117         $(MAKE) -f $(ROOT)/TestMakefile tracesettings
1118
1119
1120 tracesettings: FORCE
1121         @ $(ECHO) " "
1122         cimconfig -g traceComponents -c -p
1123         @ $(ECHO) " "
1124         cimconfig -g traceLevel -c -p
1125         @ $(ECHO) " "
1126         cimconfig -g traceFilePath -c -p
1127         @ $(ECHO) " "
1128
1129 traceon-CL: FORCE
1130         @ cimconfig -s traceComponents=$C -$W
1131         @ cimconfig -s traceLevel=$L -$W
1132         $(MAKE) -f $(ROOT)/TestMakefile tracesettings
1133
1134 tracecomp: FORCE
1135         $(USAGE)
1136         $(USAGE)"Trace component list:"
1137         $(USAGE)
1138         $(USAGE)"Channel"
1139         $(USAGE)"XmlParser"
1140         $(USAGE)"XmlWriter"
1141         $(USAGE)"XmlReader"
1142         $(USAGE)"XmlIO"
1143         $(USAGE)"Http"
1144         $(USAGE)"CimData"
1145         $(USAGE)"ProvManager"
1146         $(USAGE)"Repository"
1147         $(USAGE)"Dispatcher"
1148         $(USAGE)"OsAbstraction"
1149         $(USAGE)"Config"
1150         $(USAGE)"IndDelivery"
1151         $(USAGE)"IndHandler"
1152         $(USAGE)"Authentication"
1153         $(USAGE)"Authorization"
1154         $(USAGE)"UserManager"
1155         $(USAGE)"SubscriptionService"
1156         $(USAGE)"Registration"
1157         $(USAGE)"Shutdown"
1158         $(USAGE)"Server"
1159         $(USAGE)"IndicationService"
1160         $(USAGE)"IndicationServiceInternal"
1161         $(USAGE)"ConfigurationManager"
1162         $(USAGE)"MessageQueueService"
1163         $(USAGE)"ProviderManager"
1164         $(USAGE)"ObjectResolution"
1165         $(USAGE)"WQL"
1166         $(USAGE)"CQL"
1167         $(USAGE)"Thread"
1168         $(USAGE)"MetaDispatcher"
1169         $(USAGE)"IPC"
1170         $(USAGE)"IndicationHandlerService"
1171         $(USAGE)"CIMExportRequestDispatcher"
1172         $(USAGE)"Memory"
1173         $(USAGE)"SSL"
1174         $(USAGE)"ControlProvider"
1175         $(USAGE)"AsyncOpNode"
1176         $(USAGE)"CIMOMHandle"
1177         $(USAGE)"L10N"
1178         $(USAGE)"ExportClient"
1179         $(USAGE)"Listener"
1180         $(USAGE)"DiscardedData"
1181         $(USAGE)"ProviderAgent"
1182         $(USAGE)
1183
1184 ###############################################################################
1185 ##
1186 ## Trace Configuration - Old rules being deprecated
1187 ##
1188 ## Options:
1189 ##      XMLTraceOn: Enables XML request and response tracing.
1190 ##      ProviderLoadTraceOn: Enables Provider load tracing.
1191 ##      XML+ProviderLoadTraceOn: Enables both XML request/response and Provider
1192 ##                                 load tracing.
1193 ##      AllTraceOn: Enables all tracing.
1194 ##      AllTraceOff: Disables all tracing.
1195 ##      list: Lists trace settings.
1196 ##
1197 ###############################################################################
1198
1199 XMLTraceOn:
1200         cimconfig -s traceComponents=XmlIO -c
1201         cimconfig -s traceLevel=3 -c
1202         cimconfig -g traceComponents
1203         cimconfig -g traceLevel
1204
1205 ProviderLoadTraceOn:
1206         cimconfig -s traceComponents=ProvManager,OsAbstraction
1207         cimconfig -s traceLevel=3 -c
1208         cimconfig -g traceComponents
1209         cimconfig -g traceLevel
1210
1211 XML+ProviderLoadTraceOn:
1212         cimconfig -s traceComponents=XmlIO,ProvManager,OsAbstraction
1213         cimconfig -s traceLevel=3 -c
1214         cimconfig -g traceComponents
1215         cimconfig -g traceLevel
1216
1217 AllTraceOn: traceon
1218
1219 AllTraceOff: traceoff
1220
1221 list: tracesettings
1222
1223 #########################################################################
1224 # standardtests
1225 #
1226 # More testing options...
1227 #
1228 # The standard test seem to contain additional test that may not be able
1229 # to run on all platforms so they have been grouped here for now rather than
1230 # being included in the serversuite rule.
1231 #
1232 # The test are:
1233 #      TestCimmof
1234 #      TestNoSecurity
1235 #      TestLocalSecurity
1236 #      TestRemoteSecurity
1237 #      TestAuthorization
1238 #
1239 # NOTE: The TestsNoSecurity test is comprised of DisableSecurity and
1240 #       TestNoSecurity.
1241 #
1242 # NOTE: The TestNoSecurity step runs the servertests which builds the
1243 #       the repository that is then left in place for the remaining tests.
1244 #       The cimof test must be before the TestNosecurity step as it removes
1245 #       the repository builds a new one with cimmofl and another one with
1246 #       cimmof and then compares them.
1247 #
1248 # NOTE: The Authentication test is comprised of EnableAuthentication,
1249 #       TestLocalSecurity and TestRemoteSecurity.
1250 #
1251 # NOTE: The Authorization test is comprised of EnableAuthorization and
1252 #       TestAuthorization.
1253 #
1254 # NOTE: The EnableAuthentication and EnableAuthorization steps require
1255 #       root access. Pegasus doesn't currently have the infrastructure
1256 #       in place to run the server as root and run the test as non-root.
1257 #       Rather than run everything, server, tests, providers, clients etc.
1258 #       as root many testers prefer to run the tests as non-root. Setting
1259 #       PEGASUS_DISABLE_PRIVILEGED_TESTS in the environment helps to
1260 #       facilitate that.
1261 #
1262
1263 standardtests: FORCE
1264         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i DisableSecurity
1265         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestCimmof
1266 #       $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestNoSecurity
1267         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository testrepository
1268 ifndef PEGASUS_DISABLE_PRIVILEGED_TESTS
1269         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile EnableAuthentication
1270         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestLocalSecurity
1271         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestRemoteSecurity
1272         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile EnableAuthorization
1273         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestAuthorization
1274 else
1275         @ $(ECHO) "+++++ PEGASUS_DISABLE_PRIVILEGED_TESTS defined: Skipping EnableAuthentication, TestLocalSecurity, and TestRemoteSecurity "
1276         @ $(ECHO) "+++++ PEGASUS_DISABLE_PRIVILEGED_TESTS defined: Skipping EnableAuthorization and TestAuthorization " 
1277 endif
1278         # Reset the security options to the defaults
1279         cimconfig -u enableNamespaceAuthorization -p
1280         cimconfig -u enableAuthentication -p
1281         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1282         @ $(ECHO) "+++++ TestMakefile standardtests complete"
1283
1284 TestNoSecurity:
1285         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile servertests
1286         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
1287         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile RunTestClientLocal
1288
1289 TestLocalSecurity:
1290         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile RunTestClientLocal
1291         $(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest -f Makefile poststarttests HOSTNAME= PORT= USER= PASSWORD= SECURITY_ENABLED=true
1292
1293 TestRemoteSecurity:
1294         TestClient -user $(PEGASUS_TEST_USER_ID) -password $(PEGASUS_TEST_USER_PASS) $(system):5988
1295         $(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
1296
1297 TestAuthorization:
1298         TestPegClientDeleteNamespace -a -user $(PEGASUS_TEST_USER_ID) -password $(PEGASUS_TEST_USER_PASS)
1299         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile RunTestClientLocal
1300         TestClient -user $(PEGASUS_TEST_USER_ID) -password $(PEGASUS_TEST_USER_PASS) $(system):5988
1301         $(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
1302
1303 TestSubscriptions:
1304         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile DisableSecurity
1305         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository
1306         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepository
1307         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
1308         $(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest/cimv2/Subscription -f Makefile poststarttests
1309         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile cimstop
1310
1311 TestCimmof:
1312         # Build the repository with cimmofl and cimmof and compare them.
1313         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1314         -@$(MOVE) $(REPOSITORY_DIR)/repository $(REPOSITORY_DIR)/repository-save
1315         @$(RMREPOSITORY) $(REPOSITORY_DIR)/repository-cimmofl
1316         @$(RMREPOSITORY) $(REPOSITORY_DIR)/repository-cimmof
1317         @$(ECHO) $(CIM_SCHEMA_DIR)
1318         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository
1319         @$(MOVE) $(REPOSITORY_DIR)/repository $(REPOSITORY_DIR)/repository-cimmofl
1320         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile cimstart
1321         @$(ECHO) $(CIM_SCHEMA_DIR)
1322         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryServer
1323         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile cimstop
1324         @$(MOVE) $(REPOSITORY_DIR)/repository $(REPOSITORY_DIR)/repository-cimmof
1325         -@$(MOVE) $(REPOSITORY_DIR)/repository-save $(REPOSITORY_DIR)/repository
1326         TestCompareRepositories $(REPOSITORY_DIR)/repository-cimmofl $(REPOSITORY_DIR)/repository-cimmof
1327         @$(RMREPOSITORY) $(REPOSITORY_DIR)/repository-cimmofl
1328         @$(RMREPOSITORY) $(REPOSITORY_DIR)/repository-cimmof
1329
1330 RunTestClientLocal:
1331         TestClient -local
1332
1333 DisableSecurity:
1334         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1335         cimconfig -s enableAuthentication=false -p
1336         cimconfig -s enableNamespaceAuthorization=false -p
1337
1338 EnableUsers:
1339         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1340         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
1341         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile ConfigureUsers
1342
1343 EnableAuthentication:
1344         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1345         cimconfig -s enableAuthentication=true -p
1346         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
1347         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile ConfigureUsers
1348
1349 EnableAuthorization:
1350         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1351         cimconfig -s enableNamespaceAuthorization=true -p
1352         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
1353         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i ConfigureAuthorizations
1354
1355 EnableSSL:
1356         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1357         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithSSL
1358
1359 #
1360 # ConfigureUsers
1361 #
1362 # The server must be running prior to invoking this rule
1363 #
1364 ConfigureUsers:
1365 ifndef PEGASUS_PAM_AUTHENTICATION
1366         -cimuser -l
1367         -cimuser -a -u $(PEGASUS_TEST_USER_ID) -w $(PEGASUS_TEST_USER_PASS)
1368 endif
1369
1370 #
1371 # ConfigureAuthorizations rule
1372 #
1373 # The server must be running prior to invoking this rule
1374 #
1375 ConfigureAuthorizations:
1376         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test/cimv2 -R -W
1377         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/cimv2 -R -W
1378         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/PG_Internal -R -W
1379         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/PG_InterOp -R -W
1380         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/benchmark -R -W
1381         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/sampleprovider -R -W
1382         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test/static -R -W
1383         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/SampleProvider -R -W
1384         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root -R -W
1385         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/MCCAtest/A -R -W
1386         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/MCCAtest/B -R -W
1387         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test/TestProvider -R -W
1388         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test1 -R -W
1389         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test2 -R -W
1390         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test3 -R -W
1391         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test4 -R -W
1392         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test5 -R -W
1393         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test6 -R -W
1394         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test1/test2 -R -W
1395         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test1/test2/test3 -R -W
1396         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test1/test2/test3/test4 -R -W
1397         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test1/test2/test3/test4/test5 -R -W
1398         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test1/test2/test3/test4/test5/test6 -R -W
1399 ifeq ($(PEGASUS_ENABLE_PRIVILEGE_SEPARATION),true)
1400         cimauth -a -u $(PEGASUS_CIMSERVERMAIN_USER) -n root/cimv2 -R -W
1401 endif
1402
1403 startcimWithoutSSL: FORCE
1404         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart
1405         $(SLEEP) 5
1406
1407 startcimWithSSL: FORCE
1408         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart CIMSERVER_CONFIG_OPTIONS="enableHttpConnection=false enableHttpsConnection=true"
1409         $(SLEEP) 5
1410
1411 ###############################################################################
1412 ##
1413 ## check_for_cores - used to search for core files in the build environment.
1414 ##
1415 ## This option will search (1) each source directory, (2) the PEGASUS_CORE_DIR
1416 ## if it is defined and (3) the PEGASUS_TMP directory.
1417 ##
1418 ###############################################################################
1419 CORE_FILE_LIST = $(PEGASUS_HOME)/CoreFileList
1420
1421 check_core_search_results:
1422 ifneq ($(wildcard $(CORE_FILE_LIST)), )
1423         @$(ECHO) "*** One or more core files found. ***"
1424         @$(CAT) $(CORE_FILE_LIST)
1425         @exit 1
1426 endif
1427
1428 ifdef PEGASUS_CORE_DIR
1429    CORE_FILES_IN_CORE_DIR = \
1430        $(wildcard $(PEGASUS_CORE_DIR)/$(PLATFORM_CORE_PATTERN))
1431 endif
1432 ifdef PEGASUS_TMP
1433    CORE_FILES_IN_TMP_DIR = \
1434        $(wildcard $(PEGASUS_TMP)/$(PLATFORM_CORE_PATTERN))
1435 endif
1436
1437 generate_core_file_list:
1438         @$(RM) $(CORE_FILE_LIST)
1439         @$(MAKE) -s directory=$(PEGASUS_ROOT) general OPTION=CORE_SEARCH \
1440             CORE_FILE_LIST=$(CORE_FILE_LIST)
1441 ifdef PEGASUS_CORE_DIR
1442    ifneq ($(CORE_FILES_IN_CORE_DIR), )
1443         @$(ECHO) $(CORE_FILES_IN_CORE_DIR) >> $(CORE_FILE_LIST)
1444    endif
1445 endif
1446 ifdef PEGASUS_TMP
1447    ifneq ($(CORE_FILES_IN_TMP_DIR), )
1448         @$(ECHO) $(CORE_FILES_IN_TMP_DIR) >> $(CORE_FILE_LIST)
1449    endif
1450 endif
1451
1452 check_for_cores:
1453         @$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile \
1454             generate_core_file_list
1455         @$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile \
1456             check_core_search_results
1457
1458 ###############################################################################
1459 ##
1460 ## option_summary - used to generate a concise list of build options for use in
1461 ## a nightly build status report.  This is not intended to be a complete list,
1462 ## so it is likely that some options are omitted.  New options may be added
1463 ## here as needs dictate.
1464 ##
1465 ###############################################################################
1466
1467 OPTION_SUMMARY =
1468 ifeq ($(PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER),true)
1469     OPTION_SUMMARY += "+CMPI"
1470 endif
1471 ifeq ($(PEGASUS_ENABLE_CQL),true)
1472     OPTION_SUMMARY += "+CQL"
1473 endif
1474 ifeq ($(PEGASUS_HAS_ICU),true)
1475     OPTION_SUMMARY += "+ICU"
1476 endif
1477 ifeq ($(PEGASUS_ENABLE_IPV6),true)
1478     OPTION_SUMMARY += "+IPv6"
1479 endif
1480 ifeq ($(PEGASUS_ENABLE_JMPI_PROVIDER_MANAGER),true)
1481     OPTION_SUMMARY += "+JMPI"
1482 endif
1483 ifeq ($(PEGASUS_ENABLE_PRIVILEGE_SEPARATION),true)
1484     OPTION_SUMMARY += "+PrivSep"
1485 endif
1486 ifdef PEGASUS_ENABLE_EXECQUERY
1487     OPTION_SUMMARY += "+Query"
1488 endif
1489 ifdef PEGASUS_ENABLE_REMOTE_CMPI
1490     OPTION_SUMMARY += "+RCMPI"
1491 endif
1492 ifeq ($(PEGASUS_ENABLE_SLP),true)
1493     OPTION_SUMMARY += "+SLP"
1494 endif
1495 ifeq ($(PEGASUS_USE_SQLITE_REPOSITORY),true)
1496     OPTION_SUMMARY += "+SQLite"
1497 endif
1498 ifdef PEGASUS_HAS_SSL
1499     OPTION_SUMMARY += "+SSL"
1500 endif
1501 ifeq ($(PEGASUS_ENABLE_PROTOCOL_WSMAN),true)
1502     OPTION_SUMMARY += "+WSMan"
1503 endif
1504
1505 option_summary:
1506         @$(ECHO) "$(OPTION_SUMMARY)"