blob: 3c8a73a59e321b6096bc4b90850325eaed920db1 [file] [log] [blame]
#!/usr/bin/env python
# Copyright 2019 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
"""Unit test for extracting resident pages."""
import random
import unittest
import extract_resident_pages
class ExtractResidentPagesUnittest(unittest.TestCase):
def testParseResidentPages(self):
max_pages = 10600
pages = []
resident_pages = ""
for i in range(max_pages):
is_resident = random.randint(0,1)
pages.append(is_resident)
if is_resident:
resident_pages += str(i) + '\n'
pages_list = extract_resident_pages.ParseResidentPages(resident_pages)
for i in range(len(pages_list)):
self.assertEqual(pages[i], pages_list[i])
# As ParseResidentPages is only aware of the maximum page number that is
# resident, check that all others are not resident.
for i in range(len(pages_list), len(pages)):
self.assertFalse(pages[i])
if __name__ == '__main__':
unittest.main()