Commit Graph

22 Commits

Author SHA1 Message Date
Kuba Mracek d9232a8d23 [clang] Get rid of "%T" expansions
The %T lit expansion expands to a common directory shared between all the tests in the same directory, which is unexpected and unintuitive, and more importantly, it's been a source of subtle race conditions and flaky tests. In https://reviews.llvm.org/D35396, it was agreed that it would be best to simply ban %T and only keep %t, which is unique to each test. When a test needs a temporary directory, it can just create one using mkdir %t.

This patch removes %T in clang.

Differential Revision: https://reviews.llvm.org/D36437



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@310950 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-15 19:47:06 +00:00
Antonio Maiorano 041d198771 clang-format: remove tests that assume no config file will be found as this is not always the case
These tests fail for developers who place their build directories under the
llvm root directory because llvm's own .clang-format file will be found.
Anyway these cases are covered by FormatStyle.GetStyleOfFile tests
(FormatTest.cpp).

Differential Revision: https://reviews.llvm.org/D28983

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292787 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-23 13:20:23 +00:00
Krasimir Georgiev 3f02d105b5 [clang-format] Remove redundant test in style-on-command-line.cpp
Summary:
rL292562 added a fix to always format if the fallback style is set to "none".
In test/Format/style-on-command-line.cpp:19 is redundant, since -fallback-style
has a default value of LLVM set in ClangFormat.cpp:72.

@amaiorano: I believe that the rest of the test cases still cover your change in
case the fallback style is explicitly set to "none". Please, if this is not the
case, initiate a discussion.

Reviewers: ioeric, bkramer

Reviewed By: ioeric

Subscribers: cfe-commits, klimek, amaiorano

Differential Revision: https://reviews.llvm.org/D28943

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292604 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-20 12:39:05 +00:00
Antonio Maiorano b19e13dd78 clang-format: fix fallback style set to "none" not always formatting
This fixes clang-format not formatting if fallback-style is explicitly set to
"none", and either a config file is found or YAML is passed in without a
"BasedOnStyle". With this change, passing "none" in these cases will have no
affect, and LLVM style will be used as the base style.

Differential Revision: https://reviews.llvm.org/D28844

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292562 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-20 01:22:42 +00:00
Antonio Maiorano 9163a05093 clang-format: Make GetStyle return Expected<FormatStyle> instead of FormatStyle
Change the contract of GetStyle so that it returns an error when an error occurs
(i.e. when it writes to stderr), and only returns the fallback style when it
can't find a configuration file.

Differential Revision: https://reviews.llvm.org/D28081

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292174 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-17 00:12:27 +00:00
Nico Weber de5085648a clang-format: Use pipes instead of temporary files for most lit tests.
This makes the format tests look more like most other FileCheck tests in clang.

The multiple-inputs tests still use temp files, to make sure that the file
input code in clang-format stays tested.

Stop stripping out the comment lines in style-on-command-line.cpp as they don't
get in the way and it makes the test simpler. Also remove 2>&1s on the tests in
that file that don't need it.

http://reviews.llvm.org/D13852


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@250706 91177308-0d34-0410-b5e6-96231b3b80d8
2015-10-19 16:21:29 +00:00
Reid Kleckner a21746428f Disable style-on-command-line test on Windows
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@239416 91177308-0d34-0410-b5e6-96231b3b80d8
2015-06-09 17:47:59 +00:00
Benjamin Kramer 35639de181 Remove rm invocations where the file is immediately rewritten later.
This may or may not help making this test less flaky on windows. There's
a race condition in lit somewhere.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@239402 91177308-0d34-0410-b5e6-96231b3b80d8
2015-06-09 12:41:02 +00:00
Manuel Klimek 79e3e8702a Remove error message when using the fallback style.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@238822 91177308-0d34-0410-b5e6-96231b3b80d8
2015-06-02 11:52:15 +00:00
Daniel Jasper b511fe9818 clang-format: Introduce style with spaces on both sides of */&.
Patch by Janusz Sobczak (slightly extended).
This fixes llvm.org/19929.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@211098 91177308-0d34-0410-b5e6-96231b3b80d8
2014-06-17 12:40:34 +00:00
Rafael Espindola 43a42fb5cd Allow lowercase messages in this test again.
I misunderstood where the message was being converted.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210774 91177308-0d34-0410-b5e6-96231b3b80d8
2014-06-12 12:40:04 +00:00
Rafael Espindola 7096fc133c Give clang-format its own error category.
The posix errno values are probably to the best thing to use for
describing parse errors.

This should also fix the mingw build.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210739 91177308-0d34-0410-b5e6-96231b3b80d8
2014-06-12 02:50:04 +00:00
Rafael Espindola 518ff651eb Accomodate for message differences on windows.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210722 91177308-0d34-0410-b5e6-96231b3b80d8
2014-06-11 23:53:06 +00:00
Daniel Jasper c54558231c clang-format: Explicitly set fallback style that is tested.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@196213 91177308-0d34-0410-b5e6-96231b3b80d8
2013-12-03 06:48:41 +00:00
Alexander Kornienko 34451b1a84 Added an option to specify fallback style.
Summary:
Added -fallback-style option. Changed clang-format to stop searching
for .clang-format when an invalid file is found.

Reviewers: djasper, klimek

Reviewed By: djasper

CC: cfe-commits, klimek

Differential Revision: http://llvm-reviews.chandlerc.com/D2292

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@196108 91177308-0d34-0410-b5e6-96231b3b80d8
2013-12-02 15:21:38 +00:00
Bill Wendling a5131ab23d Disable this check temporarily.
This is failing for me. When I run the command on my own, I get this:

Error reading /usr/local/google/home/morbo/llvm/llvm.obj/tools/clang/test/Format/Output/.clang-format: Invalid argument
void f() {
  int* i;
  int j;
}

The formatting is like this because I have the Google format version in my
~/.clang-format file. This test should be made independent of that.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195080 91177308-0d34-0410-b5e6-96231b3b80d8
2013-11-19 02:25:28 +00:00
Hans Wennborg 9a7a50eef7 Allow _clang-format as alternative to .clang-format config filename
Dotfiles are impractical on Windows. This makes clang-format search
for the style configuration file as '_clang-format' in addition to
the usual '.clang-format'. This is similar to how VIM searches for
'_vimrc' on Windows.

Differential Revision: http://llvm-reviews.chandlerc.com/D1629

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190413 91177308-0d34-0410-b5e6-96231b3b80d8
2013-09-10 15:41:12 +00:00
Alexander Kornienko 4ca401b88c Trying to fix tests with in-tree builds, that contain a .clang-format files in
both tools/clang and llvm directories.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189761 91177308-0d34-0410-b5e6-96231b3b80d8
2013-09-02 14:25:56 +00:00
Alexander Kornienko 3361f10d6b Test for empty .clang-format file.
Summary: Test clang-format's handling of empty .clang-format files.

Reviewers: djasper

Reviewed By: djasper

CC: cfe-commits, klimek

Differential Revision: http://llvm-reviews.chandlerc.com/D1562

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189757 91177308-0d34-0410-b5e6-96231b3b80d8
2013-09-02 13:44:16 +00:00
Chandler Carruth 439fc85f46 Switch the default mode for clang-format to '-file'. Make 'LLVM' the
fallback syntax used when we fail to find a '.clang-format' file. Adjust
variable names appropriately.

Update the editor integration pieces that specify a '-style' option to
specify it as '-style=file'. I left the functionality in place because
even if the preferred method is to use '.clang-format' files, this way
if someone needs to clobber the style in their editor we show how to do
so in these examples.

Also check in a '.clang-format' file for Clang to ensure that separate
checkouts and builds of Clang from LLVM can still get the nice
formatting. =] This unfortunately required nuking the test for the
absence of a '.clang-format' file as now the directory happening to be
under your clang source tree will cause there to always be a file. ;]

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189741 91177308-0d34-0410-b5e6-96231b3b80d8
2013-09-02 07:42:02 +00:00
Daniel Dunbar a4516a5fea [tests] Use 'printf' instead of 'echo -e', which is not part of BSD echo.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189562 91177308-0d34-0410-b5e6-96231b3b80d8
2013-08-29 03:02:39 +00:00
Alexander Kornienko 885f87b4be Clang-format: allow -style="{yaml/json}" on command line
Summary: + improved handling of default style and predefined styles.

Reviewers: djasper, klimek

Reviewed By: klimek

CC: cfe-commits

Differential Revision: http://llvm-reviews.chandlerc.com/D813

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@182205 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-19 00:53:30 +00:00