(file) Return to TestMakefile CVS log (file) (dir) Up to [Pegasus] / pegasus

File: [Pegasus] / pegasus / TestMakefile (download)
Revision: 1.29, Mon May 9 21:08:33 2005 UTC (19 years ago) by jim.wunderlich
Branch: MAIN
Changes since 1.28: +60 -0 lines
BUG#: 3432

TITLE: No functional unit test on the Binary Repository

DESCRIPTION:
 -Added TestBinReposiory rule to TestMakefile.
 -Modified tesst not using REPOSITORY_NAME build config var to determine
  name of repository.

###############################################################################
##
## Test Makefile for Pegasus CIMOM
##
## Options:
##      rebuild            - Rebuild
##      build              - Build
##      prestarttests      - Execute functional tests
##      poststarttests     - Execute poststarttests (No security, No SSL)
##      tests              - Execute prestarttests and poststarttests
##      standardtests      - Execute poststartests and a series of
##                           posstarttests using multiple options.
##
###############################################################################

error:
	@ $(ECHO) "Specify desired makefile option (i.e., build, rebuild)"

include $(PEGASUS_ROOT)/mak/config.mak
include $(PEGASUS_ROOT)/mak/test.mak
include $(PEGASUS_ROOT)/mak/commands.mak

system = localhost

TESTS = prestarttests poststarttests

rebuild: clean all tests

build: all tests

clean:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile clean

buildmu:
	$(MAKE) --directory=$(PEGASUS_ROOT)/src/utils/mu -f Makefile
	$(MKDIRHIER) $(BIN_DIR)

all: buildmu
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile depend
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile all

doc:
	$(MAKE) --directory=$(PEGASUS_ROOT)/doc/ProviderSpec -f Makefile
	$(MAKE) --directory=$(PEGASUS_ROOT)/doc/DevManual -f Makefile

repositoryServer:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
	$(SLEEP) 5
	$(RMDIRHIER) $(REPOSITORY_ROOT)
	$(CIMSERVER_START_SERVICE)
	$(SLEEP) 5
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryServer
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepositoryServer

prestarttests:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
	$(SLEEP) 5
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepository
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile tests
	$(MAKE) --directory=$(PEGASUS_ROOT)/src/Server -f Makefile install_run
	$(MAKE) --directory=$(PEGASUS_ROOT)/src/Clients/ssltrustmgr/tests -f Makefile test_setup

poststarttests:
	$(MAKE) --directory=$(PEGASUS_ROOT)/src/Pegasus/CQL/tests/Queries -f Makefile clean
	$(MAKE) --directory=$(PEGASUS_ROOT)/src/Pegasus/Query/QueryExpression/tests/Queries -f Makefile clean
	$(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest -f Makefile clean
	$(CIMSERVER_START_SERVICE)
	$(SLEEP) 5
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile poststarttests
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_OOP_TS1
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_IndInit_TS1

tests: $(TESTS)
ifeq ($(PEGASUS_PLATFORM),WIN32_IX86_MSVC)
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
	$(MAKE) --directory=$(PEGASUS_ROOT)/src/Server -f Makefile uninstall
endif
	@ $(ECHO) Finished Tests

###############################################################################
##  Test Suite Definitions
###############################################################################

###############################################################################
##  OOP Test Suite 1: "Out-of-Process"(OOP) Provider Tests 
##
##  Configuration Options: forceProviderProcesses=true
##
###############################################################################
OOP_TS1_CONFIG_OPTIONS = forceProviderProcesses=true
OOP_TS1_TEST_CMDS = \
        TestClient

run_OOP_TS1:
	$(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
            CIMSERVER_CONFIG_OPTIONS="$(OOP_TS1_CONFIG_OPTIONS)" \
            TESTSUITE_CMDS="$(OOP_TS1_TEST_CMDS)"
###############################################################################

###############################################################################
##  IndInit Test Suite 1: IndicationService Initialization Tests 
##
##  Configuration Options: (none)
##
###############################################################################
IndInit_TS1_CONFIG_OPTIONS = 
IndInit_TS1a_TEST_CMDS = \
	$(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Pegasus/IndicationService/tests/ProcessIndication@@IndInit_TS1a
IndInit_TS1b_TEST_CMDS = \
	$(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Pegasus/IndicationService/tests/ProcessIndication@@IndInit_TS1b

run_IndInit_TS1:
	$(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
            CIMSERVER_CONFIG_OPTIONS="$(IndInit_TS1_CONFIG_OPTIONS)" \
            TESTSUITE_CMDS="$(IndInit_TS1a_TEST_CMDS)"
	$(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
            CIMSERVER_CONFIG_OPTIONS="$(IndInit_TS1_CONFIG_OPTIONS)" \
            TESTSUITE_CMDS="$(IndInit_TS1b_TEST_CMDS)"

###############################################################################
##  SSL Test Suite 1: SSL Tests
##
##  Configuration Options: enableAuthentication=true
##                         enableHttpsConnection=true
##                         sslClientVerificationMode=optional
##                         sslTrustStoreUserName=$(CURRENT_USER)
##
###############################################################################
SSL_TS1_CONFIG_OPTIONS = enableHttpsConnection=true enableAuthentication=true \
       sslClientVerificationMode=optional sslTrustStoreUserName=$(CURRENT_USER)
SSL_TS1_TEST_CMDS = \
       $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Clients/ssltrustmgr/tests@@SSLCertificateTest1

run_SSL_TS1:
	$(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
            CIMSERVER_CONFIG_OPTIONS="$(SSL_TS1_CONFIG_OPTIONS)" \
            TESTSUITE_CMDS="$(SSL_TS1_TEST_CMDS)"
###############################################################################

##############################################################################
##
## TestBinReposiory rule is used to run the poststarttests suite on
## the Binary Reposiory.
##
## Running the poststarttests as part of the nightly's I have three choices.
## 1. a)remove repository, 
##    b)build bin repository as repository, 
##    c)run test, 
##    d)remove repository, 
##    e)build xml repository.
##
## 2. a)build bin repository as repository_bin, 
##    b)run test on repository_bin
##
## Currently scenaerio 1 works but it is slow.
## Scenaerio 2 is close to working. There may be a few test remaining that
## don't honor the REPOSITORY_NAME build config variable.
##



TestBinRepository: TestBinRepository2
	$(ECHO) TestBinRepository +++++ passed all test
##
## 1. a)remove repository, 
##    b)build bin repository as repository, 
##    c)run test, 
##    d)remove repository, 
##    e)build xml repository.
##
TestBinRepository1:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop 
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryclean
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository REPOSITORY_MODE=BIN
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepository REPOSITORY_MODE=BIN
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart CIMSERVER_CONFIG_OPTIONS="enableBinaryRepository=true"
	$(SLEEP) 5
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile poststarttests REPOSITORY_MODE=BIN
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryclean
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository 
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepository
##
## 2. a)build bin repository as repository_bin, 
##    b)run test on repository_bin
##
TestBinRepository2:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop 
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryclean REPOSITORY_NAME=repository_bin
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepository REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart CIMSERVER_CONFIG_OPTIONS="enableBinaryRepository=true repositoryDir=$(PEGASUS_HOME)/repository_bin"
	$(SLEEP) 5
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile poststarttests REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop




###############################################################################
##
## Trace Configuration
##
## Options:
##      XMLTraceOn: Enables XML request and response tracing.
##      ProviderLoadTraceOn: Enables Provider load tracing.
##      XML+ProviderLoadTraceOn: Enables both XML request/response and Provider
##                                 load tracing.
##      AllTraceOn: Enables all tracing.
##      AllTraceOff: Disables all tracing.
##      list: Lists trace settings.
##
###############################################################################

XMLTraceOn:
	cimconfig -s traceComponents=XmlIO -c
	cimconfig -s traceLevel=3 -c
	cimconfig -g traceComponents
	cimconfig -g traceLevel

ProviderLoadTraceOn:
	cimconfig -s traceComponents=ProvManager,OsAbstraction
	cimconfig -s traceLevel=3 -c
	cimconfig -g traceComponents
	cimconfig -g traceLevel

XML+ProviderLoadTraceOn:
	cimconfig -s traceComponents=XmlIO,ProvManager,OsAbstraction
	cimconfig -s traceLevel=3 -c
	cimconfig -g traceComponents
	cimconfig -g traceLevel

AllTraceOn:
	cimconfig -s traceComponents=ALL
	cimconfig -s traceLevel=3 -c
	cimconfig -g traceComponents
	cimconfig -g traceLevel

AllTraceOff:
	cimconfig -s traceComponents=
	cimconfig -g traceComponents
	cimconfig -g traceLevel

list:
	cimconfig -g traceComponents
	cimconfig -g traceLevel
	cimconfig -g traceFilePath

# More options...

standardtests:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i DisableSecurity
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestCimmof
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestNoSecurity
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile EnableAuthentication
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestLocalSecurity
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestRemoteSecurity
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile EnableAuthorization
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestAuthorization

TestNoSecurity:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile tests
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile RunTestClientLocal

TestLocalSecurity:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile RunTestClientLocal
	$(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest -f Makefile poststarttests HOSTNAME= PORT= USER= PASSWORD= SECURITY_ENABLED=true

TestRemoteSecurity:
	TestClient -user guest -password guest $(system):5988
	$(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest/static -f Makefile poststarttests HOSTNAME=-h$(system) USER=-uguest PASSWORD=-wguest SECURITY_ENABLED=true

TestAuthorization:
	DeleteNamespace -a -user guest -password guest
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile RunTestClientLocal
	TestClient -user guest -password guest $(system):5988
	$(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest/static -f Makefile poststarttests HOSTNAME=-h$(system) USER=-uguest PASSWORD=-wguest SECURITY_ENABLED=true

TestSubscriptions:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile DisableSecurity
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepository
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
	$(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest/cimv2/Subscription -f Makefile poststarttests
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile cimstop

TestCimmof:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Testcimmof poststarttests

RunTestClientLocal:
	TestClient -local

DisableSecurity:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
	cimconfig -s enableAuthentication=false -p
	cimconfig -s enableNamespaceAuthorization=false -p

EnableAuthentication:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
	cimconfig -s enableAuthentication=true -p
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile ConfigureUsers

EnableAuthorization:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
	cimconfig -s enableNamespaceAuthorization=true -p
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i ConfigureAuthorizations

EnableSSL:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithSSL

ConfigureUsers:
ifndef PEGASUS_PAM_AUTHENTICATION
	cimuser -a -u guest -w guest
endif

ConfigureAuthorizations:
	cimauth -a -u guest -n test/cimv2 -R -W
	cimauth -a -u guest -n root/cimv2 -R -W
	cimauth -a -u guest -n root/PG_Internal -R -W
	cimauth -a -u guest -n root/PG_InterOp -R -W
	cimauth -a -u guest -n root/benchmark -R -W
	cimauth -a -u guest -n root/sampleprovider -R -W
	cimauth -a -u guest -n test/static -R -W
	cimauth -a -u guest -n root/SampleProvider -R -W
	cimauth -a -u guest -n root -R -W
	cimauth -a -u guest -n test1 -R -W
	cimauth -a -u guest -n test2 -R -W
	cimauth -a -u guest -n test3 -R -W
	cimauth -a -u guest -n test4 -R -W
	cimauth -a -u guest -n test5 -R -W
	cimauth -a -u guest -n test6 -R -W
	cimauth -a -u guest -n test1/test2 -R -W
	cimauth -a -u guest -n test1/test2/test3 -R -W
	cimauth -a -u guest -n test1/test2/test3/test4 -R -W
	cimauth -a -u guest -n test1/test2/test3/test4/test5 -R -W
	cimauth -a -u guest -n test1/test2/test3/test4/test5/test6 -R -W

startcimWithoutSSL:
	$(CIMSERVER_START_SERVICE)
	$(SLEEP) 5

startcimWithSSL:
	$(CIMSERVER_START_SERVICE) enableHttpConnection=false enableHttpsConnection=true
	$(SLEEP) 5

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2