Commit c54265da by Francois-Rene Rideau

Add a regression tests for upgrade

Test more versions during upgrade tests.
parent 652d1c08
(in-package :asdf-test)
(assert (asymval '#:*file1* :test-package))
(assert (asymval '#:*file3* :test-package))
;; This broke at least when upgrading from 3.1.6-3.1.7 to 3.2.0-3.3.1
(assert-equal (asdf/bundle::gather-type (asdf:make-operation 'asdf:monolithic-lib-op)) :object)
(defparameter *properly-upgraded* t)
......@@ -366,12 +366,18 @@ upgrade_tags () {
# The 3.2 series provides the asdf3.2 feature, meaning users can rely on
# all its new features (launch-program, improved bundle support), as well as
# the improvements done in 3.1 (e.g. XDG support).
# 3.2.0 (2017-01-08) first (and latest) in 3.2 series
# 3.2.0 (2017-01-08) first in 3.2 series
# 3.2.1 (2017-04-03) bug fixes, second and last in 3.2 series
#
# The 3.3 series provides the asdf3.3 feature, meaning users can rely on
# all its new features (proper phase separation) as well as earlier features.
# 3.3.0 (2017-10-06) first in 3.3 series
# 3.3.1 (2017-11-14) bug fixes, second and latest in 3.3 series
#
# We return the above designated versions in order of decreasing relevance,
# which pretty much means REQUIRE and most recent first.
# We picked the last in each relevant series.
echo REQUIRE 3.3.0 3.2.1 3.2.0 3.1.7 3.1.2 3.0.3 2.26
# We picked the last and first in each relevant series, plus 2.26.
echo REQUIRE 3.3.1 3.3.0 3.2.1 3.2.0 3.1.7 3.1.2 3.0.3 2.26
#echo 3.1.7 3.1.6 3.1.5 3.1.4 3.1.3 3.1.2
#echo 3.0.3 3.0.2 3.0.1
......
......@@ -756,9 +756,9 @@ is bound, write a message and exit on an error. If
(acall (list new-method :asdf-test))
(format t "Testing it~%")
(register-directory *test-directory*)
(load-test-system :test-asdf/all)
(assert (asymval '#:*file1* :test-package))
(assert (asymval '#:*file3* :test-package))))
(load-test-system :test-asdf/upgrade)
(assert (symbol-value '*properly-upgraded*))))
(defun join-namestrings (namestrings)
(format nil (format nil "~~{~~A~~^~A~~}" (acall :inter-directory-separator)) namestrings))
......
......@@ -103,3 +103,9 @@
(defsystem "test-asdf/dep-can-appear"
:depends-on ("test-asdf-location-change")
:perform (load-op (o c) (incf *ta/dca*)))
(defsystem :test-asdf/upgrade
:version "0"
:depends-on (:test-asdf/all)
:components ((:file "properly-upgraded")))
......@@ -6,15 +6,24 @@
;; We return a list of entries in reverse chronological order,
;; which should also be more or less the order of decreasing relevance.
;; By default, we only test the last of each relevant series.
'("REQUIRE" "3.3.0" "3.2.1" "3.2.0" "3.1.7" "3.1.2" "3.0.3" "2.26"))
'("REQUIRE" "3.3.1" "3.3.0" "3.2.1" "3.2.0" "3.1.7" "3.1.2" "3.0.3" "2.26"))
(defparameter *all-upgrade-test-tags*
'("REQUIRE" ;; a magic tag meaning whatever your implementation provides, if anything
;; Below are versions that once were notable enough to be worth testing an upgrade from.
;; This list is not meant at being exhaustive of releases, particularly not old ones.
;; The 3.3 series provides the asdf3.3 feature, meaning users can rely on
;; all its new features (proper phase separation) as well as earlier features.
"3.3.1" ;; (2017-11-14) bug fixes, second and latest in 3.3 series
"3.3.0" ;; (2017-10-06) first in 3.3 series
;; The 3.2 series provides the asdf3.2 feature, meaning users can rely on
;; all its new features (launch-program, improved bundle support), as well as
;; the improvements done in 3.1 (e.g. XDG support).
"3.2.0" ;; (2017-01-08) first (and latest) in 3.2 series
"3.2.1" ;; (2017-04-03) bug fixes, second and last in 3.2 series
"3.2.0" ;; (2017-01-08) first in 3.2 series
;; The 3.1 series provides the asdf3.1 feature, meaning users can rely on
;; all the stabilization work done in 3.0 so far, plus extra developments
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment