PERFORCE change 178076 for review
Garrett Cooper
gcooper at FreeBSD.org
Mon May 10 23:39:54 UTC 2010
http://p4web.freebsd.org/@@178076?ac=10
Change 178076 by gcooper at starr on 2010/05/10 23:39:32
Checkpoint testplan. Not much has been achieved yet..
Affected files ...
.. //depot/projects/soc2007/gcooper-pkg_install-enhancements-simplified/tools/regression/usr.sbin/pkg_install/create/testplan#2 edit
Differences ...
==== //depot/projects/soc2007/gcooper-pkg_install-enhancements-simplified/tools/regression/usr.sbin/pkg_install/create/testplan#2 (text+ko) ====
@@ -1,178 +1,38 @@
-Basic package installation.
+Basic package creation.
- Local package install:
+ Empty package:
- Type: Positive
- - Setup: Create basic package (no special metadata in package list).
- - Test: Install predefined package.
- - PF Criteria: The contents of the package must be installed in the
- defined prefix and the permissions and the mode must match the
- created package.
+ - Setup: Create basic comments and description files; do not add any
+ data to the package list.
+ - Test: Attempt to create package.
+ - PF Criteria: Package will be created with an empty package list,
+ and the associated comments and description files will
+ be added to the package with the appropriate modes
+ (00644).
- Remote package install (FTP, absolute):
+ Regular base package:
- Type: Positive
- - Setup: Create basic package (no special metadata in package list).
- Host said package on ftp server.
- - Test: Install predefined package via fully qualified URI.
- - PF Criteria: The package must be fetched. The contents of the
- package must be installed in the defined prefix and the permissions
- and the mode must match the created package. The package will be
- deleted after the installation is complete.
-
- Remote package install (HTTP, absolute):
- - Type: Positive
- - Setup: Create basic package (no special metadata in package list).
- Host said package on webserver.
- - Test: Install predefined package via fully qualified URI.
- - PF Criteria: The package must be fetched. The contents of the
- package must be installed in the defined prefix and the permissions
- and the mode must match the created package. The package will be
- deleted after the installation is complete.
-
- Remote package install (FTP, package name):
- - Type: Positive
- - Setup: Create basic package (no special metadata in package list).
- Host said package on webserver.
- - Test: Install predefined package.
- - PF Criteria: The package must be fetched. The contents of the
- package must be installed in the defined prefix and the permissions
- and the mode must match the created package. The package will be
- deleted after the installation is complete.
-
- Remote package install (HTTP, package name):
- - Type: Positive
- - Setup: Create basic package (no special metadata in package list).
- Host said package on webserver.
- - Test: Install predefined package.
- - PF Criteria: The package must be fetched. The contents of the
- package must be installed in the defined prefix and the permissions
- and the mode must match the created package. The package will be
- deleted after the installation is complete.
-
- Remote package install (pre-existing package):
- - Type: Positive
- - Setup: Create basic package (no special metadata in package list).
- - Test: Install pre-existing package.
- - PF Criteria: The package will not be fetched. The contents of the
- package must be installed in the defined prefix and the permissions
- and the mode must match the created package. The package will be
- deleted after the installation is complete.
-
- Remote package install (lacking space):
- - Type: Negative
- - Setup: Create a large package (or a small memory disk).
- - Test: Attempt to install package.
- - PF Criteria: The package will be partially fetched and fail. Thus,
- the installation will fail as well. The package will be deleted.
-
- Remote package install (unsupported URI scheme):
- - Type: Negative
- - Setup: n/a
- - Test: Attempt to install package via non-fetch(3) supported URI
- (say, gopher:// ?) scheme.
- - PF Criteria: The package fetch will fail and the install will fail
- with the utility claiming that the URI isn't supported, or something
- of the like.
-
- Already Installed package:
- - Type: Negative
- - Setup: Install a package.
- - Test: Attempt to reinstall package.
- - PF Criteria: The package will not be installed.
-
- Already Installed package:
- - Type: Positive
- - Setup: Install a package.
- - Test: Attempt to reinstall package with force option.
- - PF Criteria: The package will be installed.
+ - Setup: Create basic comments and description files; create dummy
+ files; add dummy files to package list.
+ - Test: Attempt to create package.
+ - PF Criteria: Package will be created with a package list containing
+ the dummy files; the associated comments and description
+ files will be added to the package with the appropriate
+ modes (00644).
- Local package install (package missing metadata):
- - Type: Negative
- - Setup: Create tarball missing required pieces (+CONTENTS, etc).
- - Test: Attempt to install predefined package.
- - PF Criteria: The payload contained in the package will not be
- installed as the metadata is missing.
-
- Missing package:
- - Type: Negative
- - Setup: n/a
- - Test: Attempt to install a non-existent package.
- - PF Criteria: The installation will fail.
-
- Missing dependency:
- - Type: Negative
- - Setup: Create package A, dependent on missing package B
- - Test: Attempt to install package A.
- - PF Criteria: The installation will fail because of the unfulfilled
- dependency requirement via package B.
-
- Conflicting package:
- - Type: Negative
- - Setup: Create package A and package B, s.t. package A conflicts with
- package B.
- - Test: Install package B. Attempt to install package A.
- - PF Criteria: package B will successfully install, but package A will
- be rejected due to the conflict between package A and package B
- noted in package A.
-
- Incomplete payload:
- - Type: Negative
- - Setup: Create package, but modify +CONTENTS to add more entries than
- are actually present in the package.
- - Test: Attempt to install package.
- - PF Criteria: package will fail to install because of missing payload
- entries. All of the files staged or installed will be rolled back.
-
- Corrupt payload:
- - Type: Negative
- - Setup: Create package. Flip some bits in one of the files,
- effectively changing the unique signature. Repackage.
- - Test: Attempt to install package.
- - PF Criteria: package will fail to install because of a checksum
- mismatch. All of the files staged or installed will be rolled back.
-
Tertiary functionality
- Install into prefix...
- - Precondition: the user must request that the package be installed in
- a non-standard location.
+ Backup package...
- ... package exists:
- - Setup: Create package which would install in /usr/local by default.
- Create a directory called /tmp/package .
- - Test: Install package in /tmp/package .
- - PF Criteria: package contents will be installed in a path rooted at
- /tmp/package
+ ... package already exists:
+ - Setup: Install package A.
+ - Test: Attempt to backup package A to B.tbz . Do not add an mtree file.
+ - PF Criteria: Resources permitting, package A will be backed up to
+ B.tbz . The contents of the package (sans metadata) will
+ match the contents on disk.
- ... non-existent prefix:
- - Setup: Create package which would install in /usr/local by default.
- - Test: Attempt to install package in /i/dont/exist .
- - PF Criteria: package will fail to install because /i/dont/exist
- doesn't exist :).
-
- Keep remote package...
- - Precondition: the specified package has a valid libfetch supported
- URI (ftp://, http://), or a package origin / basename is specified
- with remote fetch requested.
-
- ... package exists:
- - Setup: Create basic package (no special metadata in package list).
- Host said package on webserver.
- - Test: Install package; request that it be retained after the install.
- - PF Criteria: package will be installed; package will be retained
- after installation is complete.
-
- ... missing package on remote endpoint:
+ ... non-existent package:
- Setup: n/a
- - Test: Install package from non-existent URI.
- - PF Criteria: package will not be installed; package will not exist
- on the disk.
-
- ... unsupported URI scheme:
- - Type: Negative
- - Setup: n/a
- - Test: Attempt to install package via non-fetch(3) supported URI
- (say, gopher:// ?) scheme.
- - PF Criteria: The package fetch will fail and the install will fail
- with the utility claiming that the URI isn't supported, or something
- of the like. Package will not exist on the disk.
-
+ - Test: Attempt to backup non-existent package C .
+ - PF Criteria: package will fail to backup package C because it isn't
+ already installed on the system.
More information about the p4-projects
mailing list