From 770ab053b097f6943e14ac7d3330dbf22cc83199 Mon Sep 17 00:00:00 2001 From: Yifan Hong Date: Fri, 2 Nov 2018 13:43:30 -0700 Subject: Add kernel info to compatibility.zip Add kernel configs / version to verified_assembled_vendor_manifest.xml so that the kernel of the incoming package can be checked against the framework. Previously, the running kernel was used instead. Bug: 111125947 Test: test_extract_kernel Test: manual OTA on Pixel 3 from build: Android P (kernel version 4.9.96) to ToT build: device kernel version = (manually modified) framework requirement = latest, PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS = true Change-Id: Id524a58e94bdb6bba348ca461c9d33614ce451a9 --- tools/test_extract_kernel.py | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 tools/test_extract_kernel.py (limited to 'tools/test_extract_kernel.py') diff --git a/tools/test_extract_kernel.py b/tools/test_extract_kernel.py new file mode 100644 index 0000000000..1a1cfcbdad --- /dev/null +++ b/tools/test_extract_kernel.py @@ -0,0 +1,30 @@ +#!/usr/bin/env python +# +# Copyright (C) 2018 The Android Open Source Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import unittest +from extract_kernel import get_version, dump_version + +class ExtractKernelTest(unittest.TestCase): + def test_extract_version(self): + self.assertEqual("4.9.100", get_version( + b'Linux version 4.9.100-a123 (a@a) (a) a\n\x00', 0)) + self.assertEqual("4.9.123", get_version( + b'Linux version 4.9.123 (@) () \n\x00', 0)) + + def test_dump_self(self): + self.assertEqual("4.9.1", dump_version( + b"trash\x00Linux version 4.8.8\x00trash\x00" + "other trash Linux version 4.9.1-g3 (2@s) (2) a\n\x00")) -- cgit v1.2.3-59-g8ed1b