BUG#: 5113
[tpot/pegasus/.git] / TestMakefile
1 #//%2006////////////////////////////////////////////////////////////////////////
2 #//
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.
13 #//
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:
20 #// 
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.
29 #//
30 #//==============================================================================
31 ###############################################################################
32 ##
33 ## Test Makefile for Pegasus CIMOM
34 ##
35 ## see the usage rule for documentation of rules etc.
36 ##
37 ##
38 ###############################################################################
39
40 error:
41         @ $(ECHO) "Specify desired makefile option (i.e., unittests, usage )"
42
43 include $(PEGASUS_ROOT)/mak/config.mak
44 include $(PEGASUS_ROOT)/mak/test.mak
45 include $(PEGASUS_ROOT)/mak/commands.mak
46
47 system = localhost
48
49 .PHONY: FORCE
50
51 FORCE:
52
53 usage: FORCE
54         $(USAGE)
55         $(USAGE)"TestMakefile Primary Targets:"
56         $(USAGE)
57         $(USAGE)"The following are all standalone tests. They stop and start the server,"
58         $(USAGE)"and build repositories as needed."
59         $(USAGE)
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)"serverquicktests   - Executes a brief server test"
67         $(USAGE)"perftests          - Executes a brief server performance test"
68         $(USAGE)
69         $(USAGE)"usage2             - usage on secondary test targets"
70         $(USAGE)"usagetrace         - usage on trace targets"
71         $(USAGE)"stresstests        - Execute the default stress test suite"
72         $(USAGE)
73
74 usage2: FORCE
75         $(USAGE)
76         $(USAGE)"TestMakefile Secondary Targets:"
77         $(USAGE)
78         $(USAGE)"The following are run as part of the Primary target test suites and may"
79         $(USAGE)"also be invoked as standalone tests."
80         $(USAGE)
81         $(USAGE)"TestXMLRepository       - Executes poststarttests on XML repository"
82         $(USAGE)"                          built with cimmofl."
83         $(USAGE)"TestXMLRepositoryServer - Executes poststarttests on XML repository" 
84         $(USAGE)"                          built with cimmof."
85         $(USAGE)"TestXMLCmpRepository    - Executes poststarttests on XML compressed"
86         $(USAGE)"                          repository built with cimmofl."
87         $(USAGE)"TestBinRepository       - Executes poststarttests on binary repository "
88         $(USAGE)"                          built with cimmofl."
89         $(USAGE)"TestBinRepositoryServer - Executes poststarttests on binary repository"
90         $(USAGE)"                          built with cimmof."
91         $(USAGE)"TestBinCmpRepository    - Executes poststarttests on binary compressed"
92         $(USAGE)"                          repository built with cimmofl."
93         $(USAGE)
94         $(USAGE)"The following require the repository to be pre-built."
95         $(USAGE)
96         $(USAGE)"run_SSL_TS1             - Executes the SSL tests"
97         $(USAGE)"run_OOP_TS1             - Executes the Out Of Process Provider tests"
98         $(USAGE)"run_G11N_TS1            - Executes the Globalization tests"
99         $(USAGE)
100         $(USAGE)"The following require the repository to be pre-built and the server to be started."
101         $(USAGE)
102         $(USAGE)"serversuite             - the collection of test run by the servertests rule"
103         $(USAGE)"serverquicksuite        - The collection of test run by the serverquicktests rule"
104         $(USAGE)"run_STRESS_TS1          - Executes the stresstests"
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 ############################################################
131 #
132 # rules defined here
133 #
134 ############################################################
135
136 ##
137 ## Although the macros CIMSERVER_STOP_SERVICE and CIMSERVER_START_SERVICE
138 ## are available and could be invoked directly, their direct usage is
139 ## discouraged in favor of invoking the cimstop and the cimstart rules
140 ## as this allows one place where additional checks, delays etc may be 
141 ## added in the future to control or further test the servers performance
142 ## in executing these commands.
143 ##
144
145 #######################
146 #
147 # doc
148 #
149 doc:
150         $(MAKE) --directory=$(PEGASUS_ROOT)/doc/ProviderSpec -f Makefile
151         $(MAKE) --directory=$(PEGASUS_ROOT)/doc/DevManual -f Makefile
152
153
154 #######################
155 #
156 # repositoryServer
157 #
158 repositoryServer: FORCE
159         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
160         $(SLEEP) 5
161         $(RMDIRHIER) $(REPOSITORY_ROOT)
162         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart
163         $(SLEEP) 5
164         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryServer
165         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepositoryServer
166
167 ######################
168 #
169 # prestarttests is being deprecated since poststarttest is being deprecated
170 # in favor of name more related to its intended functionality. 
171 #
172 prestarttests: prestarttests_msg shortsleep unittests
173
174 prestarttests_msg: FORCE
175         @$(ECHO) "=============================================================================="
176         @$(ECHO) "TestMakefile: The \"prestarttests\" rule is being deprecated."
177         @$(ECHO) "              Use \"make testusage\" for a description of the usage model."   
178         @$(ECHO) "              The equivalent new rule is \"unittests\"."  
179         @$(ECHO) "              Invoking the \"unittests\" rule now."
180         @$(ECHO) "=============================================================================="
181
182 ####################
183 #
184 # poststarttests is being deprecated since it multiply defines a 
185 # recursive make rule leading to ambuguity and confusion.
186 #
187 poststarttests: poststarttests_msg shortsleep servertests 
188
189 poststarttests_msg: FORCE
190         @$(ECHO) "==============================================================================="
191         @$(ECHO) "TestMakefile: The \"posstarttests\" rule is being deprecated.."  
192         @$(ECHO) "              Use \"make testusage\" for a description of the usage model."   
193         @$(ECHO) "              The equivalent new rule is \"servertests\"."  
194         @$(ECHO) "              Invoking the \"servertests\" rule now."
195         @$(ECHO) "==============================================================================="
196
197 #####################
198 #
199 # tests is being deprecated since it multiply defines a 
200 # recursive make rule leading to ambuguity and confusion.
201 #
202 tests: tests_msg shortsleep alltests
203
204 tests_msg: FORCE
205         @$(ECHO) "==================================================================="
206         @$(ECHO) "TestMakefile: The \"tests\" rule is being deprecated."
207         @$(ECHO) "              Use \"make testusage\" for a description of the usage model."   
208         @$(ECHO) "              The equivalent new rule is \"alltests\"."  
209         @$(ECHO) "              Invoking the \"alltests\" rule now."
210         @$(ECHO) "==================================================================="
211
212
213 shortsleep: FORCE
214         @$(SLEEP) 5
215
216 ####################
217 #
218 # unittests
219 #
220 unittests: FORCE
221         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile tests
222         @ $(ECHO) "+++++ TestMakefile unittests complete"
223
224 #####################
225 #
226 # servertests
227 #
228
229 servertestsclean: FORCE
230         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
231         $(MAKE) --directory=$(PEGASUS_ROOT)/src/Pegasus/CQL/tests/Queries -f Makefile clean
232         $(MAKE) --directory=$(PEGASUS_ROOT)/src/Pegasus/Query/QueryExpression/tests/Queries -f Makefile clean
233         $(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest -f Makefile clean
234
235 servertestssetup: FORCE
236 ifdef PEGASUS_HAS_SSL
237 #
238 # The association between user names and certificates is stored in the 
239 # repository.  If the repository is recreated, we also need to re-initialize
240 # the trust store directories. Otherwise, the truststore content will be 
241 # out-of-sync with the mapping stored in the repository.
242 #
243         $(MAKE) --directory=$(PEGASUS_ROOT)/src/Server -f Makefile removeSSLTrustDirectories
244         $(MAKE) --directory=$(PEGASUS_ROOT)/src/Server -f Makefile createSSLTrustDirectories
245 endif
246         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository
247         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepository
248         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile cimstart
249         $(SLEEP) 5
250         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile ConfigureUsers
251         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile Create_SSL_Certificate
252
253
254 servertests: servertestsclean servertestssetup serversuite
255         @ $(ECHO) "+++++ TestMakefile servertests suites complete"
256
257 serversuite: FORCE
258         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile poststarttests
259         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestBinRepository
260         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_OOP_TS1
261         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_IndInit_TS1
262         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_OOPProvFail_TS1
263         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_OOPProvFail_TS2
264         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_INDSSL_TS1
265         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_SSL_TS1
266         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_G11N_TS1
267
268 #####################
269 #
270 # stresstests
271 #
272 stresstests:
273         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_STRESS_TS1
274
275 ####################
276 #
277 # serverquicktests
278 #
279 serverquicktests: servertestsclean servertestssetup serverquicksuite
280         @ $(ECHO) "+++++ TestMakefile serverquicktests complete"
281
282 serverquicksuite: FORCE
283         $(PEGASUS_HOME)/bin/Client
284         $(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest -f Makefile poststarttests
285         $(PEGASUS_HOME)/bin/TestClient
286
287 ####################
288 #
289 # perftests - simple performance test until we have better
290 #
291 # - Turns statistics on (uses TestInterop until we have better)
292 # - runs and times serverquicktests suite 
293 # - runs cimperf to displat the statistics
294 # - turns statistics off 
295 #
296 perftests: servertestsclean servertestssetup perfsuite
297
298 perfsuite: FORCE
299         $(PEGASUS_HOME)/bin/TestInterop on
300         $(TIME_CMD) $(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest -f Makefile poststarttests
301         @ $(ECHO) " "
302         $(TIME_CMD) $(PEGASUS_HOME)/bin/TestClient
303         @ $(ECHO) " "
304         $(TIME_CMD) $(PEGASUS_HOME)/bin/benchmarkTest
305         @ $(ECHO) " "
306         @ $(ECHO) " "
307         $(TIME_CMD) $(PEGASUS_HOME)/bin/cimperf
308         @ $(ECHO) " "
309         $(PEGASUS_HOME)/bin/TestInterop off
310
311
312 ####################
313 #
314 # alltests
315 #
316 alltests: unittests servertests
317 ifeq ($(PEGASUS_PLATFORM),WIN32_IX86_MSVC)
318         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
319         $(MAKE) --directory=$(PEGASUS_ROOT)/src/Server -f Makefile uninstall
320 endif
321         @ $(ECHO) "+++++ TestMakefile alltests Complete"
322
323 ###############################################################################
324 ##  Test Suite Definitions
325 ###############################################################################
326
327 ###############################################################################
328 ##  OOP Test Suite 1: "Out-of-Process"(OOP) Provider Tests 
329 ##
330 ##  Configuration Options: forceProviderProcesses=true
331 ##
332 ##  If PEGASUS_DEFAULT_ENABLE_OOP is set, then tests are run with OOP disabled
333 ##  since tests have already been run with OOP enabled.
334 ##
335 ##
336 ###############################################################################
337 ifeq ($(PEGASUS_DEFAULT_ENABLE_OOP),true)
338 OOP_TS1_CONFIG_OPTIONS = forceProviderProcesses=false
339 else
340 OOP_TS1_CONFIG_OPTIONS = forceProviderProcesses=true
341 endif
342
343 OOP_TS1_TEST_CMDS = \
344         $(MAKE)@@--directory=$(PEGASUS_ROOT)@@Makefile@@-s@@poststarttests
345
346 run_OOP_TS1:
347         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
348             CIMSERVER_CONFIG_OPTIONS="$(OOP_TS1_CONFIG_OPTIONS)" \
349             TESTSUITE_CMDS="$(OOP_TS1_TEST_CMDS)"
350
351 ###############################################################################
352
353 ###############################################################################
354 ##  IndInit Test Suite 1: IndicationService Initialization Tests 
355 ##
356 ##  Configuration Options: (none)
357 ##
358 ###############################################################################
359 IndInit_TS1_CONFIG_OPTIONS = 
360 IndInit_TS1a_TEST_CMDS = \
361         $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Pegasus/IndicationService/tests/ProcessIndication@@IndInit_TS1a
362 IndInit_TS1b_TEST_CMDS = \
363         $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Pegasus/IndicationService/tests/ProcessIndication@@IndInit_TS1b
364
365 run_IndInit_TS1:
366         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
367             CIMSERVER_CONFIG_OPTIONS="$(IndInit_TS1_CONFIG_OPTIONS)" \
368             TESTSUITE_CMDS="$(IndInit_TS1a_TEST_CMDS)"
369         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
370             CIMSERVER_CONFIG_OPTIONS="$(IndInit_TS1_CONFIG_OPTIONS)" \
371             TESTSUITE_CMDS="$(IndInit_TS1b_TEST_CMDS)"
372
373 ###############################################################################
374 ##  OOPProvFail Test Suite 1: OOP Provider Module Failure Tests
375 ##
376 ##  Configuration Options: forceProviderProcesses=true
377 ##  enableAuthentication=true, enableAuthentication=false
378 ##
379 ##  NOTE: Regardless of the setting of PEGASUS_DEFAULT_ENABLE_OOP, this test
380 ##  suite is always run with OOP enabled.  This test suite causes a provider to
381 ##  exit.  Running this test suite with OOP disabled would cause the cimserver
382 ##  to exit and the test suite to fail.
383 ##
384 ##  NOTE: The test is run once with authentication enabled, and once without
385 ##  authentication enabled.
386 ##
387 ###############################################################################
388 OOPProvFail_TS1a_CONFIG_OPTIONS = forceProviderProcesses=true enableAuthentication=true
389 OOPProvFail_TS1b_CONFIG_OPTIONS = forceProviderProcesses=true enableAuthentication=false
390 OOPProvFail_TS1_TEST_CMDS = \
391         $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Providers/TestProviders/OOPModuleFailureProvider/testclient@@OOPProvFail_TS1
392
393 ifndef PEGASUS_DISABLE_PRIVILEGED_TESTS
394 run_OOPProvFail_TS1:
395         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
396             CIMSERVER_CONFIG_OPTIONS="$(OOPProvFail_TS1a_CONFIG_OPTIONS)" \
397             TESTSUITE_CMDS="$(OOPProvFail_TS1_TEST_CMDS)"
398         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
399             CIMSERVER_CONFIG_OPTIONS="$(OOPProvFail_TS1b_CONFIG_OPTIONS)" \
400             TESTSUITE_CMDS="$(OOPProvFail_TS1_TEST_CMDS)"
401 else
402 run_OOPProvFail_TS1: FORCE
403         @ $(ECHO) "+++++ PEGASUS_DISABLE_PRIVILEGED_TESTS defined: Skipping run_OOPProvFail_TS1"
404 endif
405
406 ###############################################################################
407 ##  OOPProvFail Test Suite 2: OOP Provider Module Failure on IndicationService 
408 ##                            Initialization Tests
409 ##
410 ##  Configuration Options: forceProviderProcesses=true
411 ##                         enableAuthentication=true
412 ##
413 ##  NOTE: Regardless of the setting of PEGASUS_DEFAULT_ENABLE_OOP, this test
414 ##  suite is always run with OOP enabled.  This test suite causes a provider to
415 ##  exit.  Running this test suite with OOP disabled would cause the cimserver
416 ##  to exit and the test suite to fail.
417 ##
418 ###############################################################################
419 OOPProvFail_TS2_CONFIG_OPTIONS = forceProviderProcesses=true enableAuthentication=true
420 OOPProvFail_TS2a_TEST_CMDS = \
421         $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Providers/TestProviders/OOPModuleFailureProvider/testclient@@OOPProvFail_TS2a
422 OOPProvFail_TS2b_TEST_CMDS = \
423         $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Providers/TestProviders/OOPModuleFailureProvider/testclient@@OOPProvFail_TS2b
424
425 ifndef PEGASUS_DISABLE_PRIVILEGED_TESTS
426 run_OOPProvFail_TS2:
427         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
428             CIMSERVER_CONFIG_OPTIONS="$(OOPProvFail_TS2_CONFIG_OPTIONS)" \
429             TESTSUITE_CMDS="$(OOPProvFail_TS2a_TEST_CMDS)"
430         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
431             CIMSERVER_CONFIG_OPTIONS="$(OOPProvFail_TS2_CONFIG_OPTIONS)" \
432             TESTSUITE_CMDS="$(OOPProvFail_TS2b_TEST_CMDS)"
433 else
434 run_OOPProvFail_TS2: FORCE
435         @ $(ECHO) "+++++ PEGASUS_DISABLE_PRIVILEGED_TESTS defined: Skipping run_OOPProvFail_TS2"
436 endif
437
438 ###############################################################################
439 ##  Indication SSL Test Suite 1: Indication Testing over HTTPS
440 ##
441 ##  Configuration Options: (none)
442 ##
443 ###############################################################################
444 INDSSL_TS1a_CONFIG_OPTIONS = enableHttpsConnection=true enableAuthentication=false
445 INDSSL_TS1a_TEST_CMDS = \
446         $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Providers/TestProviders/IndicationStressTestProvider/testclient@@-f@@Makefile@@run_TS1_AuthenticationDisabled
447
448 INDSSL_TS1b_CONFIG_OPTIONS = enableHttpsConnection=true enableAuthentication=true sslClientVerificationMode=required
449 INDSSL_TS1b_TEST_CMDS = \
450         $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Providers/TestProviders/IndicationStressTestProvider/testclient@@-f@@Makefile@@run_TS1_AuthenticationEnabled
451
452
453 ifdef PEGASUS_HAS_SSL
454 ifndef PEGASUS_DISABLE_PRIVILEGED_TESTS
455 run_INDSSL_TS1: EnableUsers Create_SSL_Certificate_ignore
456         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
457             CIMSERVER_CONFIG_OPTIONS="$(INDSSL_TS1a_CONFIG_OPTIONS)" \
458             TESTSUITE_CMDS="$(INDSSL_TS1a_TEST_CMDS)"
459         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
460             CIMSERVER_CONFIG_OPTIONS="$(INDSSL_TS1b_CONFIG_OPTIONS)" \
461             TESTSUITE_CMDS="$(INDSSL_TS1b_TEST_CMDS)"
462 else
463 run_INDSSL_TS1: FORCE
464         @ $(ECHO) "+++++ PEGASUS_DISABLE_PRIVILEGED_TESTS defined: Skipping run_INDSSL_TS1"     
465 endif
466 else
467 run_INDSSL_TS1: FORCE
468         @ $(ECHO) "+++++ PEGASUS_HAS_SSL not defined: Skipping run_INDSSL_TS1"
469 endif
470
471
472 ###############################################################################
473  
474 ###############################################################################
475 ##  SSL Test Suite 1: SSL Tests
476 ##
477 ##  Configuration Options: enableAuthentication=true
478 ##                         enableHttpsConnection=true
479 ##                         sslClientVerificationMode=optional
480 ##                         sslTrustStoreUserName=$(CURRENT_USER)
481 ##
482 ###############################################################################
483 SSL_TS1_CONFIG_OPTIONS = enableHttpsConnection=true enableAuthentication=true \
484        sslClientVerificationMode=optional sslTrustStoreUserName=$(CURRENT_USER)
485 SSL_TS1_TEST_CMDS = \
486        $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Clients/ssltrustmgr/tests@@SSLCertificateTest1
487
488 ifdef PEGASUS_HAS_SSL
489 ifndef PEGASUS_DISABLE_PRIVILEGED_TESTS
490 run_SSL_TS1: FORCE
491         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
492             CIMSERVER_CONFIG_OPTIONS="$(SSL_TS1_CONFIG_OPTIONS)" \
493             TESTSUITE_CMDS="$(SSL_TS1_TEST_CMDS)"
494 else
495 run_SSL_TS1: FORCE
496         @ $(ECHO) "+++++ PEGASUS_DISABLE_PRIVILEGED_TESTS defined: Skipping run_SSL_TS1"        
497 endif
498 else
499 run_SSL_TS1: FORCE
500         @ $(ECHO) "+++++ PEGASUS_HAS_SSL not defined: Skipping run_SSL_TS1 poststarttest"
501
502 endif
503
504 ############################################################################
505
506 # Create_SSL_Certificate
507 #
508 # create a certificate that can be used for certification testing.
509 # It is currently used by the following tests:
510 #            -run_INDSSL_TS1
511 #
512 Create_SSL_Certificate_ignore: FORCE
513         -$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile Create_SSL_Certificate
514
515 Create_SSL_Certificate: FORCE
516 ifdef PEGASUS_HAS_SSL
517 ifdef PEGASUS_TEST_USER_DEFINED
518         $(ECHO) "Creating SSL certificate for test"
519         ssltrustmgr -a -c $(PEGASUS_TEST_USER_ID) -f $(PEGASUS_HOME)/server.pem
520 endif
521 else
522         $(ECHO) "PEGASUS_HAS_SSL not defined - Not Creating SSL certificate for test"
523 endif
524
525 ###############################################################################
526 ##  G11N Test Suite 1: Globalization Tests 
527 ##
528 ##  Configuration Options: forceProviderProcesses=false
529 ##
530 ###############################################################################
531 G11N_TS1_CONFIG_OPTIONS = forceProviderProcesses=false
532 G11N_TS1_TEST_CMDS = \
533         $(MAKE) --directory $(PEGASUS_ROOT)/src/Clients/g11ntest \
534             -f Makefile g11ntest
535
536 run_G11N_TS1:
537         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
538             CIMSERVER_CONFIG_OPTIONS="$(G11N_TS1_CONFIG_OPTIONS)" \
539             TESTSUITE_CMDS="$(G11N_TS1_TEST_CMDS)"
540
541 ###############################################################################
542 ##  Stress Test Suite 1:  Default Stress Tests
543 ##
544 ##  Configuration Options: (none)
545 ##
546 ###############################################################################
547 STRESS_TS1_CONFIG_OPTIONS =
548 STRESS_TS1_TEST_CMDS = \
549         TestStressTestController
550
551 run_STRESS_TS1:
552         $(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
553             CIMSERVER_CONFIG_OPTIONS="$(STRESS_TS1_CONFIG_OPTIONS)" \
554             TESTSUITE_CMDS="$(STRESS_TS1_TEST_CMDS)"
555 ###############################################################################
556
557
558 ###############################################################################
559
560
561
562 ##############################################################################
563 ##
564 ## TestXMLRepository rule is used to run the poststarttests suite on
565 ## the XML Repository built using cimmofl
566 ##
567 ## TestXMLRepositoryServer rule is used to run the poststarttests suite on
568 ## the XML Repository built using cimmof
569 ##
570 ## TestXMLCmpRepository rule is used to run the poststarttest suite on 
571 ## the XML Compressed Repository built using cimmofl
572 ##
573
574 ############################
575 ##
576 ## TestXMLRepository
577 ##
578
579 TestXMLRepository: TestXMLClean TestXMLBuildRepo  TestXMLRepo
580         @ $(ECHO) TestXMLRepository +++++ passed all test
581
582 ############################
583 ##
584 ## TestXMLRepositoryServer
585 ##
586 TestXMLRepositoryServer: TestXMLClean  TestXMLBuildRepoServ TestXMLRepo
587         @ $(ECHO) TestXMLRepositoryServer +++++ passed all test
588
589 ############################
590 ##
591 ## TestXMLCmpRepository -  run poststarttest on Compressed BIN Repository
592 ##
593 ifdef PEGASUS_ENABLE_COMPRESSED_REPOSITORY
594 TestXMLCmpRepository: FORCE
595         @ $(ECHO) TestXMLCmpRepository +++++ Repository compressed by default - nothing more to test.
596         @ $(ECHO) TestXMLCmpRepository +++++ passed all test
597 else
598
599 ifdef PEGASUS_ENABLE_COMPRESSED_REPOSITORY_TEST
600
601 TestXMLCmpRepository: TestXMLClean  TestCmpBuild TestXMLBuildRepo TestXMLRepo TestRegBuild
602         @ $(ECHO) TestXMLCmpRepository +++++ passed all test
603 else
604 TestXMLCmpRepository: FORCE
605         @ $(ECHO) TestXMLCmpRepository +++++ Not tested 
606         @ $(ECHO) TestXMLCmpRepository +++++ refer to readme.compressed_repository
607         @ $(ECHO) TestXMLCmpRepository +++++ to enable: set PEGASUS_ENABLE_COMPRESSED_REPOSITORY_TEST=true 
608 endif
609 endif
610
611 ###########################
612 ##
613 ## TestXMLClean
614 ##
615 TestXMLClean: FORCE
616         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop 
617         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryclean REPOSITORY_NAME=repository_xml
618
619
620 ###########################
621 ##
622 ## TestXMLStartServer
623 ##
624 TestXMLStartServer: FORCE
625         $(MAKE) --directory=$(PEGASUS_ROOT)/src/Server -f Makefile install_run
626         - $(MKDIRHIER) $(PEGASUS_HOME)/repository_xml
627         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart CIMSERVER_CONFIG_OPTIONS="repositoryDir=$(PEGASUS_HOME)/repository_xml"
628         $(SLEEP) 5
629
630 ####
631 #### The following caused the cimserver to fail on startup
632 ####
633 ####    $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart CIMSERVER_CONFIG_OPTIONS="enableBinRepository=false repositoryDir=$(PEGASUS_HOME)/repository_xml"
634
635 ###########################
636 ##
637 ## TestXMLBuildRepo
638 ##
639 TestXMLBuildRepo: FORCE
640         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository REPOSITORY_NAME=repository_xml REPOSITORY_MODE=XML
641         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepository REPOSITORY_NAME=repository_xml REPOSITORY_MODE=XML
642
643
644 ###########################
645 ##
646 ## TestXMLBuildRepoServ
647 ##
648 TestXMLBuildRepoServ: TestXMLStartServer
649         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryServer REPOSITORY_NAME=repository_xml REPOSITORY_MODE=XML
650         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepositoryServer REPOSITORY_NAME=repository_xml REPOSITORY_MODE=XML
651         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop 
652
653
654 ###########################
655 ##
656 ## TestXMLRepo
657 ##
658 TestXMLRepo: servertestsclean
659         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestXMLStartServer
660         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile poststarttests REPOSITORY_NAME=repository_xml REPOSITORY_MODE=XML
661         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop 
662
663
664
665
666
667
668 ##############################################################################
669 ##
670 ## TestBinRepository rule is used to run the poststarttests suite on
671 ## the Binary Repository built using cimmofl
672 ##
673 ## TestBinRepositoryServer rule is used to run the poststarttests suite on
674 ## the Binary Repository built using cimmof
675 ##
676 ## TestBinCmpRepository rule is used to run the poststarttest suite on 
677 ## the Binry Compressed Repository built using cimmofl
678 ##
679
680 ############################
681 ##
682 ## TestBinRepository
683 ##
684 ### bug 3011 disabled Binary Repository testing on LINUX_IA64 to allow
685 ### the nightly tests to run
686
687 TestBinRepository: TestBinClean TestBinBuildRepo  TestBinRepo
688         @ $(ECHO) TestBinRepository +++++ passed all test
689
690
691 ############################
692 ##
693 ## TestBinRepositoryServer
694 ##
695 TestBinRepositoryServer: TestBinClean  TestBinBuildRepoServ TestBinRepo
696         @ $(ECHO) TestBinRepositoryServer +++++ passed all test
697
698 ############################
699 ##
700 ## TestBinCmpRepository -  run poststarttest on Compressed BIN Repository
701 ##
702 ifdef PEGASUS_ENABLE_COMPRESSED_REPOSITORY
703 TestBinCmpRepository: FORCE
704         @ $(ECHO) TestBinCmpRepository +++++ Repository compressed by default - nothing more to test.
705         @ $(ECHO) TestBinCmpRepository +++++ passed all test
706 else
707
708 ifdef PEGASUS_ENABLE_COMPRESSED_REPOSITORY_TEST
709
710 TestBinCmpRepository: TestBinClean  TestCmpBuild TestBinBuildRepo TestBinRepo TestRegBuild
711         @ $(ECHO) TestBinCmpRepository +++++ passed all test
712 else
713 TestBinCmpRepository: FORCE
714         @ $(ECHO) TestBinCmpRepository +++++ Not tested 
715         @ $(ECHO) TestBinCmpRepository +++++ refer to readme.compressed_repository
716         @ $(ECHO) TestBinCmpRepository +++++ to enable: set PEGASUS_ENABLE_COMPRESSED_REPOSITORY_TEST=true 
717 endif
718 endif
719
720
721 ###########################
722 ##
723 ## TestBinClean
724 ##
725 TestBinClean: FORCE
726         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop 
727         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryclean REPOSITORY_NAME=repository_bin
728
729
730 ###########################
731 ##
732 ## TestBinStartServer
733 ##
734 TestBinStartServer: FORCE
735         $(MAKE) --directory=$(PEGASUS_ROOT)/src/Server -f Makefile install_run
736         - $(MKDIRHIER) $(PEGASUS_HOME)/repository_bin
737         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart CIMSERVER_CONFIG_OPTIONS="enableBinaryRepository=true repositoryDir=$(PEGASUS_HOME)/repository_bin"
738         $(SLEEP) 5
739
740 ###########################
741 ##
742 ## TestBinBuildRepo
743 ##
744 TestBinBuildRepo: FORCE
745         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
746         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepository REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
747
748
749 ###########################
750 ##
751 ## TestBinBuildRepoServ
752 ##
753 TestBinBuildRepoServ: TestBinStartServer
754         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryServer REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
755         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepositoryServer REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
756         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop 
757
758
759 ###########################
760 ##
761 ## TestBinRepo
762 ##
763 TestBinRepo: servertestsclean 
764         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestBinStartServer
765         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile poststarttests REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
766         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop 
767
768
769
770
771 ############################
772 ##
773 ## TestCmpBuild - used to compile the repository for compression
774 ##
775 TestCmpBuild: FORCE
776         @ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository clean
777         @ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository depend PEGASUS_ENABLE_COMPRESSED_REPOSITORY=1
778         @ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository PEGASUS_ENABLE_COMPRESSED_REPOSITORY=1
779
780
781 ############################
782 ##
783 ## TestRegBuild - used to compile the repository for no compression
784 ##
785 TestRegBuild: FORCE
786         @ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository clean
787         @ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository depend 
788         @ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository 
789
790
791 ###############################################################################
792 ##
793 ## Trace Configuration
794 ##
795 ## Options: see usagetrace rule
796 ##
797 ###############################################################################
798
799 usagetrace: FORCE
800         $(USAGE)
801         $(USAGE)"TestMakefile Trace Commands: "
802         $(USAGE)"  The cimserver must be running when using W=c which is the default for W"
803         $(USAGE)
804         $(USAGE)" traceon  W=[current/planned(c,p):   Enables all tracing."
805         $(USAGE)" traceoff W=[current/planned(c,p):   Disables all tracing."
806         $(USAGE)" tracesettings:                      Displays all trace settings."
807         $(USAGE)" tracecomp:                          Displays a trace componenets list."
808         $(USAGE)" traceon-CL C=[comp] L=[level(1,2,3,4)] W=[current/planned(c,p): "
809         $(USAGE)"                           Enables tracing on component C at trace level L."
810         $(USAGE)
811         $(USAGE)" W defaults to c in the above commands where W can be specified" 
812         $(USAGE)
813         $(USAGE)"  Usage examples:"
814         $(USAGE)"   traceon       turns on trace in current server config"
815         $(USAGE)"   traceon W=c   turns on trace in current server config"
816         $(USAGE)"   traceon W=p   turns on trace in planned server config"
817         $(USAGE)"   traceoff      turns on trace in current server config"
818         $(USAGE)"   traceoff W=c  turns on trace in current server config"
819         $(USAGE)"   traceoff W=p  turns on trace in planned server config"
820         $(USAGE)
821         $(USAGE)"   traceon-CL C=DiscardedData L=3 W=c"
822         $(USAGE)"     Turns on trace for DiscardedData at level 3 in current server config"
823         $(USAGE)"   traceon-CL C=DiscardedData L=3 W=p"
824         $(USAGE)"     Turns on trace for DiscardedData at level 3 in planned server config"
825         $(USAGE)
826         $(USAGE)
827
828 traceon: FORCE
829         @ cimconfig -s traceComponents=ALL -$W 
830         @ cimconfig -s traceLevel=3 -$W
831         $(MAKE) -f $(ROOT)/TestMakefile tracesettings
832
833
834 traceoff: FORCE
835         @ cimconfig -s traceComponents=  -$W
836         $(MAKE) -f $(ROOT)/TestMakefile tracesettings
837
838
839 tracesettings: FORCE
840         @ $(ECHO) " "
841         cimconfig -g traceComponents -c -p
842         @ $(ECHO) " "
843         cimconfig -g traceLevel -c -p
844         @ $(ECHO) " "
845         cimconfig -g traceFilePath -c -p
846         @ $(ECHO) " "
847
848 traceon-CL: FORCE
849         @ cimconfig -s traceComponents=$C -$W
850         @ cimconfig -s traceLevel=$L -$W
851         $(MAKE) -f $(ROOT)/TestMakefile tracesettings
852
853 tracecomp: FORCE
854         $(USAGE)
855         $(USAGE)"Trace component list:"
856         $(USAGE)
857         $(USAGE)"Channel"
858         $(USAGE)"XmlParser"
859         $(USAGE)"XmlWriter"
860         $(USAGE)"XmlReader"
861         $(USAGE)"XmlIO"
862         $(USAGE)"Http"
863         $(USAGE)"CimData"
864         $(USAGE)"ProvManager"
865         $(USAGE)"Repository"
866         $(USAGE)"Dispatcher"
867         $(USAGE)"OsAbstraction"
868         $(USAGE)"Config"
869         $(USAGE)"IndDelivery"
870         $(USAGE)"IndHandler"
871         $(USAGE)"Authentication"
872         $(USAGE)"Authorization"
873         $(USAGE)"UserManager"
874         $(USAGE)"SubscriptionService"
875         $(USAGE)"Registration"
876         $(USAGE)"Shutdown"
877         $(USAGE)"Server"
878         $(USAGE)"IndicationService"
879         $(USAGE)"IndicationServiceInternal"
880         $(USAGE)"ConfigurationManager"
881         $(USAGE)"MessageQueueService"
882         $(USAGE)"ProviderManager"
883         $(USAGE)"ObjectResolution"
884         $(USAGE)"WQL"
885         $(USAGE)"CQL"
886         $(USAGE)"Thread"
887         $(USAGE)"MetaDispatcher"
888         $(USAGE)"IPC"
889         $(USAGE)"IndicationHandlerService"
890         $(USAGE)"CIMExportRequestDispatcher"
891         $(USAGE)"Memory"
892         $(USAGE)"SSL"
893         $(USAGE)"ControlProvider"
894         $(USAGE)"AsyncOpNode"
895         $(USAGE)"CIMOMHandle"
896         $(USAGE)"BinaryMessageHandler"
897         $(USAGE)"L10N"
898         $(USAGE)"ExportClient"
899         $(USAGE)"Listener"
900         $(USAGE)"DiscardedData"
901         $(USAGE)"ProviderAgent"
902         $(USAGE)
903
904 ###############################################################################
905 ##
906 ## Trace Configuration - Old rules being deprecated
907 ##
908 ## Options:
909 ##      XMLTraceOn: Enables XML request and response tracing.
910 ##      ProviderLoadTraceOn: Enables Provider load tracing.
911 ##      XML+ProviderLoadTraceOn: Enables both XML request/response and Provider
912 ##                                 load tracing.
913 ##      AllTraceOn: Enables all tracing.
914 ##      AllTraceOff: Disables all tracing.
915 ##      list: Lists trace settings.
916 ##
917 ###############################################################################
918
919 XMLTraceOn:
920         cimconfig -s traceComponents=XmlIO -c
921         cimconfig -s traceLevel=3 -c
922         cimconfig -g traceComponents
923         cimconfig -g traceLevel
924
925 ProviderLoadTraceOn:
926         cimconfig -s traceComponents=ProvManager,OsAbstraction
927         cimconfig -s traceLevel=3 -c
928         cimconfig -g traceComponents
929         cimconfig -g traceLevel
930
931 XML+ProviderLoadTraceOn:
932         cimconfig -s traceComponents=XmlIO,ProvManager,OsAbstraction
933         cimconfig -s traceLevel=3 -c
934         cimconfig -g traceComponents
935         cimconfig -g traceLevel
936
937 AllTraceOn: traceon
938
939 AllTraceOff: traceoff
940
941 list: tracesettings
942
943 #########################################################################
944 # standardtests
945 #
946 # More testing options...
947 #
948 # The standard test seem to contain additional test that may not be able 
949 # to run on all platforms so they have been grouped here for now rather than
950 # being included in the serversuite rule.
951 #
952 # The test are:
953 #      TestCimmof
954 #      TestNoSecurity
955 #      TestLocalSecurity
956 #      TestRemoteSecurity
957 #      TestAuthorization
958 #
959 # NOTE: The TestsNoSecurity test is comprised of DisableSecurity and
960 #       TestNoSecurity.
961 #
962 # NOTE: The TestNoSecurity step runs the servertests which builds the
963 #       the repository that is then left in place for the remaining tests.
964 #       The cimof test must be before the TestNosecurity step as it removes
965 #       the repository builds a new one with cimmofl and another one with
966 #       cimmof and then compares them. 
967 #
968 # NOTE: The Authentication test is comprised of EnableAuthentication, 
969 #       TestLocalSecurity and TestRemoteSecurity. 
970 #
971 # NOTE: The Authorization test is comprised of EnableAuthorization and
972 #       TestAuthorization. 
973 #
974 # NOTE: The EnableAuthentication and EnableAuthorization steps require 
975 #       root access. Pegasus doesn't currently have the infrastructure
976 #       in place to run the server as root and run the test as non-root.
977 #       Rather than run everything, server, tests, providers, clients etc.
978 #       as root many testers prefer to run the tests as non-root. Setting
979 #       PEGASUS_DISABLE_PRIVILEGED_TESTS in the environment helps to 
980 #       facilitate that.
981 #
982
983 standardtests: FORCE
984         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i DisableSecurity
985         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestCimmof
986         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestNoSecurity
987 ifndef PEGASUS_DISABLE_PRIVILEGED_TESTS
988         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile EnableAuthentication
989         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestLocalSecurity
990         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestRemoteSecurity
991         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile EnableAuthorization
992         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestAuthorization
993 else
994         @ $(ECHO) "+++++ PEGASUS_DISABLE_PRIVILEGED_TESTS defined: Skipping EnableAuthentication, TestLocalSecurity, and TestRemoteSecurity "
995         @ $(ECHO) "+++++ PEGASUS_DISABLE_PRIVILEGED_TESTS defined: Skipping EnableAuthorization and TestAuthorization " 
996 endif
997         @ $(ECHO) "+++++ TestMakefile standardtests complete"
998
999 TestNoSecurity:
1000         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile servertests
1001         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
1002         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile RunTestClientLocal
1003
1004 TestLocalSecurity:
1005         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile RunTestClientLocal
1006         $(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest -f Makefile poststarttests HOSTNAME= PORT= USER= PASSWORD= SECURITY_ENABLED=true
1007
1008 TestRemoteSecurity:
1009         TestClient -user $(PEGASUS_TEST_USER_ID) -password $(PEGASUS_TEST_USER_PASS) $(system):5988
1010         $(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
1011
1012 TestAuthorization:
1013         TestPegClientDeleteNamespace -a -user $(PEGASUS_TEST_USER_ID) -password $(PEGASUS_TEST_USER_PASS)
1014         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile RunTestClientLocal
1015         TestClient -user $(PEGASUS_TEST_USER_ID) -password $(PEGASUS_TEST_USER_PASS) $(system):5988
1016         $(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
1017
1018 TestSubscriptions:
1019         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile DisableSecurity
1020         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository
1021         $(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepository
1022         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
1023         $(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest/cimv2/Subscription -f Makefile poststarttests
1024         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile cimstop
1025
1026 TestCimmof:
1027         $(MAKE) --directory=$(PEGASUS_ROOT) -f Testcimmof poststarttests
1028
1029 RunTestClientLocal:
1030         TestClient -local
1031
1032 DisableSecurity:
1033         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1034         cimconfig -s enableAuthentication=false -p
1035         cimconfig -s enableNamespaceAuthorization=false -p
1036
1037 EnableUsers:
1038         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1039         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
1040         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile ConfigureUsers
1041
1042 EnableAuthentication:
1043         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1044         cimconfig -s enableAuthentication=true -p
1045         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
1046         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile ConfigureUsers
1047
1048 EnableAuthorization:
1049         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1050         cimconfig -s enableNamespaceAuthorization=true -p
1051         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
1052         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i ConfigureAuthorizations
1053
1054 EnableSSL:
1055         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
1056         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithSSL
1057
1058 #
1059 # ConfigureUsers
1060 #
1061 # The server must be running prior to invoking this rule
1062 #
1063 ConfigureUsers:
1064 ifndef PEGASUS_PAM_AUTHENTICATION
1065         -cimuser -l
1066         -cimuser -a -u $(PEGASUS_TEST_USER_ID) -w $(PEGASUS_TEST_USER_PASS)
1067 endif
1068
1069 #
1070 # ConfigureAuthorizations rule
1071 #
1072 # The server must be running prior to invoking this rule
1073 #
1074 ConfigureAuthorizations:
1075         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test/cimv2 -R -W
1076         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/cimv2 -R -W
1077         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/PG_Internal -R -W
1078         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/PG_InterOp -R -W
1079         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/benchmark -R -W
1080         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/sampleprovider -R -W
1081         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test/static -R -W
1082         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/SampleProvider -R -W
1083         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root -R -W
1084         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/test/A -R -W
1085         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n root/test/B -R -W
1086         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test/TestProvider -R -W
1087         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test1 -R -W
1088         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test2 -R -W
1089         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test3 -R -W
1090         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test4 -R -W
1091         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test5 -R -W
1092         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test6 -R -W
1093         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test1/test2 -R -W
1094         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test1/test2/test3 -R -W
1095         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test1/test2/test3/test4 -R -W
1096         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test1/test2/test3/test4/test5 -R -W
1097         cimauth -a -u $(PEGASUS_TEST_USER_ID) -n test1/test2/test3/test4/test5/test6 -R -W
1098
1099 startcimWithoutSSL: FORCE
1100         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart
1101         $(SLEEP) 5
1102
1103 startcimWithSSL: FORCE
1104         $(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart CIMSERVER_CONFIG_OPTIONS="enableHttpConnection=false enableHttpsConnection=true"
1105         $(SLEEP) 5
1106