Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(442)

Side by Side Diff: omaha_request_params_unittest.cc

Issue 6225001: AU: Don't allow stateful /etc/lsb-release override in normal boot mode... (Closed) Base URL: ssh://git@gitrw.chromium.org:9222/update_engine.git@master
Patch Set: Created 9 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« omaha_request_params.cc ('K') | « omaha_request_params.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010 The Chromium OS Authors. All rights reserved. 1 // Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <stdio.h> 5 #include <stdio.h>
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/file_util.h" 9 #include "base/file_util.h"
10 #include "gtest/gtest.h" 10 #include "gtest/gtest.h"
(...skipping 12 matching lines...) Expand all
23 // out is non-NULL, it's set w/ the generated data. 23 // out is non-NULL, it's set w/ the generated data.
24 bool DoTest(OmahaRequestParams* out, const string& app_version, 24 bool DoTest(OmahaRequestParams* out, const string& app_version,
25 const string& omaha_url); 25 const string& omaha_url);
26 26
27 virtual void SetUp() { 27 virtual void SetUp() {
28 ASSERT_EQ(0, System(string("mkdir -p ") + kTestDir + "/etc")); 28 ASSERT_EQ(0, System(string("mkdir -p ") + kTestDir + "/etc"));
29 ASSERT_EQ(0, System(string("mkdir -p ") + kTestDir + 29 ASSERT_EQ(0, System(string("mkdir -p ") + kTestDir +
30 utils::kStatefulPartition + "/etc")); 30 utils::kStatefulPartition + "/etc"));
31 params_.set_root(string("./") + kTestDir); 31 params_.set_root(string("./") + kTestDir);
32 params_.SetBuildTypeOfficial(false); 32 params_.SetBuildTypeOfficial(false);
33 params_.SetBootModeNormal(false);
33 } 34 }
34 35
35 virtual void TearDown() { 36 virtual void TearDown() {
36 EXPECT_EQ(0, System(string("rm -rf ") + kTestDir)); 37 EXPECT_EQ(0, System(string("rm -rf ") + kTestDir));
37 } 38 }
38 39
39 OmahaRequestDeviceParams params_; 40 OmahaRequestDeviceParams params_;
40 41
41 static const string kTestDir; 42 static const string kTestDir;
42 }; 43 };
(...skipping 214 matching lines...) Expand 10 before | Expand all | Expand 10 after
257 kTestDir + "/etc/lsb-release", 258 kTestDir + "/etc/lsb-release",
258 "CHROMEOS_RELEASE_BOARD=arm-generic\n" 259 "CHROMEOS_RELEASE_BOARD=arm-generic\n"
259 "CHROMEOS_RELEASE_FOO=bar\n" 260 "CHROMEOS_RELEASE_FOO=bar\n"
260 "CHROMEOS_RELEASE_VERSION=0.2.2.3\n" 261 "CHROMEOS_RELEASE_VERSION=0.2.2.3\n"
261 "CHROMEOS_RELEASE_TRACK=footrack\n" 262 "CHROMEOS_RELEASE_TRACK=footrack\n"
262 "CHROMEOS_AUSERVER=http://www.google.com")); 263 "CHROMEOS_AUSERVER=http://www.google.com"));
263 ASSERT_TRUE(WriteFileString( 264 ASSERT_TRUE(WriteFileString(
264 kTestDir + utils::kStatefulPartition + "/etc/lsb-release", 265 kTestDir + utils::kStatefulPartition + "/etc/lsb-release",
265 "CHROMEOS_RELEASE_BOARD=x86-generic\n" 266 "CHROMEOS_RELEASE_BOARD=x86-generic\n"
266 "CHROMEOS_RELEASE_TRACK=bartrack\n" 267 "CHROMEOS_RELEASE_TRACK=bartrack\n"
267 "CHROMEOS_AUSERVER=http://www.google.com")); 268 "CHROMEOS_AUSERVER=https://www.google.com"));
268 OmahaRequestParams out; 269 OmahaRequestParams out;
269 EXPECT_TRUE(DoTest(&out, "", "")); 270 EXPECT_TRUE(DoTest(&out, "", ""));
270 EXPECT_EQ("Chrome OS", out.os_platform); 271 EXPECT_EQ("Chrome OS", out.os_platform);
271 EXPECT_EQ(string("0.2.2.3_") + GetMachineType(), out.os_sp); 272 EXPECT_EQ(string("0.2.2.3_") + GetMachineType(), out.os_sp);
272 EXPECT_EQ("x86-generic", out.os_board); 273 EXPECT_EQ("x86-generic", out.os_board);
273 EXPECT_EQ("{87efface-864d-49a5-9bb3-4b050a7c227a}", out.app_id); 274 EXPECT_EQ("{87efface-864d-49a5-9bb3-4b050a7c227a}", out.app_id);
274 EXPECT_EQ("0.2.2.3", out.app_version); 275 EXPECT_EQ("0.2.2.3", out.app_version);
275 EXPECT_EQ("en-US", out.app_lang); 276 EXPECT_EQ("en-US", out.app_lang);
276 EXPECT_EQ("", out.hardware_class); 277 EXPECT_EQ("", out.hardware_class);
277 EXPECT_FALSE(out.delta_okay); 278 EXPECT_FALSE(out.delta_okay);
278 EXPECT_EQ("bartrack", out.app_track); 279 EXPECT_EQ("bartrack", out.app_track);
279 EXPECT_EQ("http://www.google.com", out.update_url); 280 EXPECT_EQ("https://www.google.com", out.update_url);
281 }
282
283 TEST_F(OmahaRequestDeviceParamsTest, OverrideNonOfficialNormalBootTest) {
284 ASSERT_TRUE(WriteFileString(
285 kTestDir + "/etc/lsb-release",
286 "CHROMEOS_RELEASE_BOARD=arm-generic\n"
287 "CHROMEOS_RELEASE_FOO=bar\n"
288 "CHROMEOS_RELEASE_VERSION=0.2.2.3\n"
289 "CHROMEOS_RELEASE_TRACK=footrack\n"
290 "CHROMEOS_AUSERVER=http://www.google.com"));
291 ASSERT_TRUE(WriteFileString(
292 kTestDir + utils::kStatefulPartition + "/etc/lsb-release",
293 "CHROMEOS_RELEASE_BOARD=x86-generic\n"
294 "CHROMEOS_RELEASE_TRACK=bartrack\n"
295 "CHROMEOS_AUSERVER=https://www.google.com"));
296 params_.SetBootModeNormal(true);
297 OmahaRequestParams out;
298 EXPECT_TRUE(DoTest(&out, "", ""));
299 EXPECT_EQ("x86-generic", out.os_board);
300 EXPECT_EQ("{87efface-864d-49a5-9bb3-4b050a7c227a}", out.app_id);
301 EXPECT_EQ("0.2.2.3", out.app_version);
302 EXPECT_EQ("", out.hardware_class);
303 EXPECT_FALSE(out.delta_okay);
304 EXPECT_EQ("bartrack", out.app_track);
305 EXPECT_EQ("https://www.google.com", out.update_url);
306 }
307
308 TEST_F(OmahaRequestDeviceParamsTest, OverrideOfficialNormalBootTest) {
309 ASSERT_TRUE(WriteFileString(
310 kTestDir + "/etc/lsb-release",
311 "CHROMEOS_RELEASE_BOARD=arm-generic\n"
312 "CHROMEOS_RELEASE_FOO=bar\n"
313 "CHROMEOS_RELEASE_VERSION=0.2.2.3\n"
314 "CHROMEOS_RELEASE_TRACK=footrack\n"
315 "CHROMEOS_AUSERVER=https://www.google.com"));
316 ASSERT_TRUE(WriteFileString(
317 kTestDir + utils::kStatefulPartition + "/etc/lsb-release",
318 "CHROMEOS_RELEASE_BOARD=x86-generic\n"
319 "CHROMEOS_RELEASE_TRACK=dev-channel\n"
320 "CHROMEOS_AUSERVER=http://www.google.com"));
321 params_.SetBuildTypeOfficial(true);
322 params_.SetBootModeNormal(true);
323 OmahaRequestParams out;
324 EXPECT_TRUE(DoTest(&out, "", ""));
325 EXPECT_EQ("arm-generic", out.os_board);
326 EXPECT_EQ("{87efface-864d-49a5-9bb3-4b050a7c227a}", out.app_id);
327 EXPECT_EQ("0.2.2.3", out.app_version);
328 EXPECT_EQ("", out.hardware_class);
329 EXPECT_FALSE(out.delta_okay);
330 EXPECT_EQ("dev-channel", out.app_track);
331 EXPECT_EQ("https://www.google.com", out.update_url);
280 } 332 }
281 333
282 TEST_F(OmahaRequestDeviceParamsTest, OverrideSameTrackTest) { 334 TEST_F(OmahaRequestDeviceParamsTest, OverrideSameTrackTest) {
283 ASSERT_TRUE(WriteFileString( 335 ASSERT_TRUE(WriteFileString(
284 kTestDir + "/etc/lsb-release", 336 kTestDir + "/etc/lsb-release",
285 "CHROMEOS_RELEASE_BOARD=arm-generic\n" 337 "CHROMEOS_RELEASE_BOARD=arm-generic\n"
286 "CHROMEOS_RELEASE_FOO=bar\n" 338 "CHROMEOS_RELEASE_FOO=bar\n"
287 "CHROMEOS_RELEASE_VERSION=0.2.2.3\n" 339 "CHROMEOS_RELEASE_VERSION=0.2.2.3\n"
288 "CHROMEOS_RELEASE_TRACK=footrack\n" 340 "CHROMEOS_RELEASE_TRACK=footrack\n"
289 "CHROMEOS_AUSERVER=http://www.google.com")); 341 "CHROMEOS_AUSERVER=http://www.google.com"));
290 ASSERT_TRUE(WriteFileString( 342 ASSERT_TRUE(WriteFileString(
291 kTestDir + utils::kStatefulPartition + "/etc/lsb-release", 343 kTestDir + utils::kStatefulPartition + "/etc/lsb-release",
292 "CHROMEOS_RELEASE_BOARD=x86-generic\n" 344 "CHROMEOS_RELEASE_BOARD=x86-generic\n"
293 "CHROMEOS_RELEASE_TRACK=footrack")); 345 "CHROMEOS_RELEASE_TRACK=footrack"));
294 OmahaRequestParams out; 346 OmahaRequestParams out;
295 EXPECT_TRUE(DoTest(&out, "", "")); 347 EXPECT_TRUE(DoTest(&out, "", ""));
296 EXPECT_EQ("Chrome OS", out.os_platform);
297 EXPECT_EQ(string("0.2.2.3_") + GetMachineType(), out.os_sp);
298 EXPECT_EQ("x86-generic", out.os_board); 348 EXPECT_EQ("x86-generic", out.os_board);
299 EXPECT_EQ("{87efface-864d-49a5-9bb3-4b050a7c227a}", out.app_id); 349 EXPECT_EQ("{87efface-864d-49a5-9bb3-4b050a7c227a}", out.app_id);
300 EXPECT_EQ("0.2.2.3", out.app_version); 350 EXPECT_EQ("0.2.2.3", out.app_version);
301 EXPECT_EQ("en-US", out.app_lang);
302 EXPECT_EQ("", out.hardware_class); 351 EXPECT_EQ("", out.hardware_class);
303 EXPECT_TRUE(out.delta_okay); 352 EXPECT_TRUE(out.delta_okay);
304 EXPECT_EQ("footrack", out.app_track); 353 EXPECT_EQ("footrack", out.app_track);
305 EXPECT_EQ("http://www.google.com", out.update_url); 354 EXPECT_EQ("http://www.google.com", out.update_url);
306 } 355 }
307 356
308 TEST_F(OmahaRequestDeviceParamsTest, SetTrackSimpleTest) { 357 TEST_F(OmahaRequestDeviceParamsTest, SetTrackSimpleTest) {
309 ASSERT_TRUE(WriteFileString( 358 ASSERT_TRUE(WriteFileString(
310 kTestDir + "/etc/lsb-release", 359 kTestDir + "/etc/lsb-release",
311 "CHROMEOS_RELEASE_BOARD=arm-generic\n" 360 "CHROMEOS_RELEASE_BOARD=arm-generic\n"
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
427 EXPECT_EQ("{87efface-864d-49a5-9bb3-4b050a7c227a}", out.app_id); 476 EXPECT_EQ("{87efface-864d-49a5-9bb3-4b050a7c227a}", out.app_id);
428 EXPECT_EQ("0.2.2.3", out.app_version); 477 EXPECT_EQ("0.2.2.3", out.app_version);
429 EXPECT_EQ("en-US", out.app_lang); 478 EXPECT_EQ("en-US", out.app_lang);
430 EXPECT_EQ("", out.hardware_class); 479 EXPECT_EQ("", out.hardware_class);
431 EXPECT_TRUE(out.delta_okay); 480 EXPECT_TRUE(out.delta_okay);
432 EXPECT_EQ("dev-channel", out.app_track); 481 EXPECT_EQ("dev-channel", out.app_track);
433 EXPECT_EQ("http://www.google.com", out.update_url); 482 EXPECT_EQ("http://www.google.com", out.update_url);
434 } 483 }
435 484
436 } // namespace chromeos_update_engine 485 } // namespace chromeos_update_engine
OLDNEW
« omaha_request_params.cc ('K') | « omaha_request_params.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698