mirror of
https://github.com/facebook/sapling.git
synced 2024-10-10 16:57:49 +03:00
48 lines
2.1 KiB
Python
48 lines
2.1 KiB
Python
|
#!/usr/bin/env python3
|
||
|
#
|
||
|
# Copyright (c) 2016-present, Facebook, Inc.
|
||
|
# All rights reserved.
|
||
|
#
|
||
|
# This source code is licensed under the BSD-style license found in the
|
||
|
# LICENSE file in the root directory of this source tree. An additional grant
|
||
|
# of patent rights can be found in the PATENTS file in the same directory.
|
||
|
|
||
|
import logging
|
||
|
|
||
|
from .lib import repobase, testcase
|
||
|
|
||
|
|
||
|
class RageTest(testcase.EdenRepoTest):
|
||
|
def populate_repo(self) -> None:
|
||
|
self.repo.write_file("README.md", "docs\n")
|
||
|
self.repo.commit("Initial commit.")
|
||
|
|
||
|
def create_repo(self, name: str) -> repobase.Repository:
|
||
|
return self.create_hg_repo(name)
|
||
|
|
||
|
def test_rage_output(self) -> None:
|
||
|
output = self.eden.run_cmd("rage", "--stdout")
|
||
|
logging.info(f"Rage output:\n{output}")
|
||
|
|
||
|
# Check to make sure that various important sections of information
|
||
|
# are present in the rage output.
|
||
|
#
|
||
|
# We may need to update this in the future if we modify the rage output; the
|
||
|
# main purpose it simply to make sure that the rage command did not exit early
|
||
|
# or crash partway through the output.
|
||
|
self.assertRegex(output, r"^User\s*:")
|
||
|
self.assertRegex(output, r"\nHostname\s*:")
|
||
|
# Allow the test to succeed even if the fb-eden RPM is not installed
|
||
|
self.assertRegex(output, r"\n(Rpm Version\s*:|Error getting the Rpm version)")
|
||
|
self.assertRegex(output, r"\nbuild_package_release\s*:")
|
||
|
self.assertRegex(output, r"\nbuild_package_version\s*:")
|
||
|
self.assertRegex(output, r"\nuptime\s*:")
|
||
|
self.assertIn("\neden doctor --dry-run", output)
|
||
|
self.assertIn(f"\nChecking {self.mount}\n", output)
|
||
|
self.assertIn("\nMost recent Eden logs:\n", output)
|
||
|
self.assertIn("\nList of running Eden processes:\n", output)
|
||
|
self.assertIn("\nList of mount points:\n", output)
|
||
|
self.assertIn(f"\nMount point info for path {self.mount}:\n", output)
|
||
|
self.assertIn("General EdenFS Statistics", output)
|
||
|
self.assertIn(f"\nMount information for {self.mount}\n", output)
|