mirror of
https://github.com/facebook/sapling.git
synced 2024-12-29 08:02:24 +03:00
56c0cdb002
Summary: In order to grep, the body of the file is decoded to utf8 with the error handling "replace". This is probably OK as I would expect histgrep to be used on text files, not random binary ones where grepping would probably not make a lot of sense. Reviewed By: sfilipco Differential Revision: D20965178 fbshipit-source-id: 9ba234f33e801a78537c22b61dee434625449c01
36 lines
1.3 KiB
Python
36 lines
1.3 KiB
Python
# Copyright (c) Facebook, Inc. and its affiliates.
|
|
#
|
|
# This software may be used and distributed according to the terms of the
|
|
# GNU General Public License version 2 or any later version.
|
|
|
|
from __future__ import absolute_import
|
|
|
|
from testutil.dott import feature, sh, testtmp # noqa: F401
|
|
|
|
|
|
# Simulate an environment that disables allowfullrepogrep:
|
|
sh % "setconfig 'histgrep.allowfullrepogrep=False'"
|
|
|
|
# Test histgrep and check that it respects the specified file:
|
|
sh % "hg init repo"
|
|
sh % "cd repo"
|
|
sh % "mkdir histgrepdir"
|
|
sh % "cd histgrepdir"
|
|
sh % "echo ababagalamaga" > "histgrepfile1"
|
|
sh % "echo ababagalamaga" > "histgrepfile2"
|
|
sh % "hg add histgrepfile1"
|
|
sh % "hg add histgrepfile2"
|
|
sh % "hg commit -m 'Added some files'"
|
|
sh % "hg histgrep ababagalamaga histgrepfile1" == "histgrepdir/histgrepfile1:bdc1161fcbee:ababagalamaga"
|
|
sh % "hg histgrep ababagalamaga" == r"""
|
|
abort: can't run histgrep on the whole repo, please provide filenames
|
|
(this is disabled to avoid very slow greps over the whole repo)
|
|
[255]"""
|
|
|
|
# Now allow allowfullrepogrep:
|
|
sh % "setconfig 'histgrep.allowfullrepogrep=True'"
|
|
sh % "hg histgrep ababagalamaga" == r"""
|
|
histgrepdir/histgrepfile1:bdc1161fcbee:ababagalamaga
|
|
histgrepdir/histgrepfile2:bdc1161fcbee:ababagalamaga"""
|
|
sh % "cd .."
|