diff options
Diffstat (limited to 'devicetree/early_mount/dt_early_mount_test.py')
-rwxr-xr-x | devicetree/early_mount/dt_early_mount_test.py | 84 |
1 files changed, 0 insertions, 84 deletions
diff --git a/devicetree/early_mount/dt_early_mount_test.py b/devicetree/early_mount/dt_early_mount_test.py deleted file mode 100755 index 6cabde4..0000000 --- a/devicetree/early_mount/dt_early_mount_test.py +++ /dev/null @@ -1,84 +0,0 @@ -#!/usr/bin/python -# -# Copyright 2017 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. - -"""Test cases for device tree overlays for early mounting partitions.""" - -import os -import unittest - - -# Early mount fstab entry must have following properties defined. -REQUIRED_FSTAB_PROPERTIES = [ - 'dev', - 'type', - 'mnt_flags', - 'fsmgr_flags', -] - - -def ReadFile(file_path): - with open(file_path, 'r') as f: - # Strip all trailing spaces, newline and null characters. - return f.read().rstrip(' \n\x00') - - -def GetAndroidDtDir(): - """Returns location of android device tree directory.""" - with open('/proc/cmdline', 'r') as f: - cmdline_list = f.read().split() - - # Find android device tree directory path passed through kernel cmdline. - for option in cmdline_list: - if option.startswith('androidboot.android_dt_dir'): - return option.split('=')[1] - - # If no custom path found, return the default location. - return '/proc/device-tree/firmware/android' - - -class DtEarlyMountTest(unittest.TestCase): - """Test device tree overlays for early mounting.""" - - def setUp(self): - self._android_dt_dir = GetAndroidDtDir() - self._fstab_dt_dir = os.path.join(self._android_dt_dir, 'fstab') - - def GetEarlyMountedPartitions(self): - """Returns a list of partitions specified in fstab for early mount.""" - # Device tree nodes are represented as directories in the filesystem. - return [x for x in os.listdir(self._fstab_dt_dir) if os.path.isdir(x)] - - def VerifyFstabEntry(self, partition): - partition_dt_dir = os.path.join(self._fstab_dt_dir, partition) - properties = [x for x in os.listdir(partition_dt_dir)] - - self.assertTrue( - set(REQUIRED_FSTAB_PROPERTIES).issubset(properties), - 'fstab entry for /%s is missing required properties' % partition) - - def testFstabCompatible(self): - """Verify fstab compatible string.""" - compatible = ReadFile(os.path.join(self._fstab_dt_dir, 'compatible')) - self.assertEqual('android,fstab', compatible) - - def testFstabEntries(self): - """Verify properties of early mount fstab entries.""" - for partition in self.GetEarlyMountedPartitions(): - self.VerifyFstabEntry(partition) - -if __name__ == '__main__': - unittest.main() - |