OLD | NEW |
1 #!/bin/bash | 1 #!/bin/bash |
2 | 2 |
3 # Copyright (c) 2009 The Chromium Authors. All rights reserved. | 3 # Copyright (c) 2009 The Chromium Authors. All rights reserved. |
4 # Use of this source code is governed by a BSD-style license that can be | 4 # Use of this source code is governed by a BSD-style license that can be |
5 # found in the LICENSE file. | 5 # found in the LICENSE file. |
6 | 6 |
7 # Test of the Mac Chrome installer. | 7 # Test of the Mac Chrome installer. |
8 | 8 |
9 | 9 |
10 # Where I am | 10 # Where I am |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
65 | 65 |
66 # Make an old-style destination directory, to test updating from old-style | 66 # Make an old-style destination directory, to test updating from old-style |
67 # versions to new-style versions. | 67 # versions to new-style versions. |
68 function make_old_dest() { | 68 function make_old_dest() { |
69 DEST="${TEMPDIR}"/Dest.app | 69 DEST="${TEMPDIR}"/Dest.app |
70 rm -rf "${DEST}" | 70 rm -rf "${DEST}" |
71 mkdir -p "${DEST}"/Contents | 71 mkdir -p "${DEST}"/Contents |
72 defaults write "${DEST}/Contents/Info" KSVersion 0 | 72 defaults write "${DEST}/Contents/Info" KSVersion 0 |
73 cat >"${TEMPDIR}"/ksadmin <<EOF | 73 cat >"${TEMPDIR}"/ksadmin <<EOF |
74 #!/bin/sh | 74 #!/bin/sh |
| 75 if [ -z "\${FAKE_SYSTEM_TICKET}" ] && [ "\${1}" = "-S" ] ; then |
| 76 echo no system tix! >& 2 |
| 77 exit 1 |
| 78 fi |
75 echo " xc=<KSPathExistenceChecker:0x45 path=${DEST}>" | 79 echo " xc=<KSPathExistenceChecker:0x45 path=${DEST}>" |
76 exit 0 | 80 exit 0 |
77 EOF | 81 EOF |
78 chmod u+x "${TEMPDIR}"/ksadmin | 82 chmod u+x "${TEMPDIR}"/ksadmin |
79 } | 83 } |
80 | 84 |
81 # Make a new-style destination directory, to test updating between new-style | 85 # Make a new-style destination directory, to test updating between new-style |
82 # versions. | 86 # versions. |
83 function make_new_dest() { | 87 function make_new_dest() { |
84 DEST="${TEMPDIR}"/Dest.app | 88 DEST="${TEMPDIR}"/Dest.app |
85 rm -rf "${DEST}" | 89 rm -rf "${DEST}" |
86 RSRCDIR="${DEST}/Contents/Versions/0/${FWKNAME}/Resources" | 90 RSRCDIR="${DEST}/Contents/Versions/0/${FWKNAME}/Resources" |
87 mkdir -p "${RSRCDIR}" | 91 mkdir -p "${RSRCDIR}" |
88 defaults write "${DEST}/Contents/Info" CFBundleShortVersionString 0 | 92 defaults write "${DEST}/Contents/Info" CFBundleShortVersionString 0 |
89 defaults write "${RSRCDIR}/Info" KSVersion 0 | 93 defaults write "${RSRCDIR}/Info" KSVersion 0 |
90 cat >"${TEMPDIR}"/ksadmin <<EOF | 94 cat >"${TEMPDIR}"/ksadmin <<EOF |
91 #!/bin/sh | 95 #!/bin/sh |
| 96 if [ -z "\${FAKE_SYSTEM_TICKET}" ] && [ "\${1}" = "-S" ] ; then |
| 97 echo no system tix! >& 2 |
| 98 exit 1 |
| 99 fi |
92 echo " xc=<KSPathExistenceChecker:0x45 path=${DEST}>" | 100 echo " xc=<KSPathExistenceChecker:0x45 path=${DEST}>" |
93 exit 0 | 101 exit 0 |
94 EOF | 102 EOF |
95 chmod u+x "${TEMPDIR}"/ksadmin | 103 chmod u+x "${TEMPDIR}"/ksadmin |
96 } | 104 } |
97 | 105 |
98 # Make a simple source directory - the update that is to be applied | 106 # Make a simple source directory - the update that is to be applied |
99 function make_src() { | 107 function make_src() { |
100 chmod ugo+w "${TEMPDIR}" | 108 chmod ugo+w "${TEMPDIR}" |
101 rm -rf "${TEMPDIR}/${APPNAME}" | 109 rm -rf "${TEMPDIR}/${APPNAME}" |
(...skipping 17 matching lines...) Expand all Loading... |
119 mkdir "${TEMPDIR}"/"${APPNAME}" | 127 mkdir "${TEMPDIR}"/"${APPNAME}" |
120 fail_installer "No source bundle" | 128 fail_installer "No source bundle" |
121 | 129 |
122 make_basic_src_and_dest | 130 make_basic_src_and_dest |
123 chmod ugo-w "${TEMPDIR}" | 131 chmod ugo-w "${TEMPDIR}" |
124 fail_installer "Writable dest directory" | 132 fail_installer "Writable dest directory" |
125 | 133 |
126 make_basic_src_and_dest | 134 make_basic_src_and_dest |
127 fail_installer "Was no KSUpdateURL in dest after copy" | 135 fail_installer "Was no KSUpdateURL in dest after copy" |
128 | 136 |
| 137 make_basic_src_and_dest |
| 138 defaults write \ |
| 139 "${TEMPDIR}/${APPNAME}/Contents/Versions/1/${FWKNAME}/Resources/Info" \ |
| 140 KSUpdateURL "http://foo.bar" |
| 141 export FAKE_SYSTEM_TICKET=1 |
| 142 fail_installer "User and system ticket both present" |
| 143 export -n FAKE_SYSTEM_TICKET |
| 144 |
129 make_src | 145 make_src |
130 make_old_dest | 146 make_old_dest |
131 defaults write \ | 147 defaults write \ |
132 "${TEMPDIR}/${APPNAME}/Contents/Versions/1/${FWKNAME}/Resources/Info" \ | 148 "${TEMPDIR}/${APPNAME}/Contents/Versions/1/${FWKNAME}/Resources/Info" \ |
133 KSUpdateURL "http://foo.bar" | 149 KSUpdateURL "http://foo.bar" |
134 pass_installer "Old-style update" | 150 pass_installer "Old-style update" |
135 | 151 |
136 make_basic_src_and_dest | 152 make_basic_src_and_dest |
137 defaults write \ | 153 defaults write \ |
138 "${TEMPDIR}/${APPNAME}/Contents/Versions/1/${FWKNAME}/Resources/Info" \ | 154 "${TEMPDIR}/${APPNAME}/Contents/Versions/1/${FWKNAME}/Resources/Info" \ |
139 KSUpdateURL "http://foo.bar" | 155 KSUpdateURL "http://foo.bar" |
140 pass_installer "ALL" | 156 pass_installer "ALL" |
141 | 157 |
142 cleanup_tempdir | 158 cleanup_tempdir |
OLD | NEW |