diff options
| author | Felix S Klock II <pnkfelix@pnkfx.org> | 2015-02-06 13:04:59 +0100 |
|---|---|---|
| committer | Felix S Klock II <pnkfelix@pnkfx.org> | 2015-02-06 13:04:59 +0100 |
| commit | ec81a95287a69bb36d1535a972e5afb46948247d (patch) | |
| tree | 49f7924bc7335d3799c9d97530badd4989b9ac7f /rust-mode-tests.el | |
| parent | 351cc916938f13a354f2ffe471bda8eb30765fa3 (diff) | |
| parent | 55e7483d507b8ff88e7f84685ab83a10ac754856 (diff) | |
| download | rust-mode-ec81a95287a69bb36d1535a972e5afb46948247d.tar.gz | |
Merge pull request #22 from nikomatsakis/align-method-chain
Fix aligning of method chains (more-or-less), add various unit tests, and add matching angle brackets.
Diffstat (limited to 'rust-mode-tests.el')
| -rw-r--r-- | rust-mode-tests.el | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/rust-mode-tests.el b/rust-mode-tests.el index 3ef4cb6..a0e27b0 100644 --- a/rust-mode-tests.el +++ b/rust-mode-tests.el @@ -922,3 +922,89 @@ list of substrings of `STR' each followed by its face." "main" font-lock-function-name-face "let" font-lock-keyword-face "'\\''" font-lock-string-face))) + +(ert-deftest indent-method-chains-no-align () + (let ((rust-indent-method-chain nil)) (test-indent + " +fn main() { + let x = thing.do_it() + .aligned() + .more_alignment(); +} +" + ))) + +(ert-deftest indent-method-chains-with-align () + (let ((rust-indent-method-chain t)) (test-indent + " +fn main() { + let x = thing.do_it() + .aligned() + .more_alignment(); +} +" + ))) + +(ert-deftest indent-method-chains-with-align-and-second-stmt () + (let ((rust-indent-method-chain t)) (test-indent + " +fn main() { + let x = thing.do_it() + .aligned() + .more_alignment(); + foo.bar(); +} +" + ))) + +(ert-deftest indent-method-chains-field () + (let ((rust-indent-method-chain t)) (test-indent + " +fn main() { + let x = thing.do_it + .aligned + .more_alignment(); +} +" + ))) + +(ert-deftest indent-method-chains-double-field-on-first-line () + (let ((rust-indent-method-chain t)) (test-indent + " +fn main() { + let x = thing.a.do_it + .aligned + .more_alignment(); +} +" + ))) + +(ert-deftest indent-method-chains-no-let () + (let ((rust-indent-method-chain t)) (test-indent + " +fn main() { + thing.a.do_it + .aligned + .more_alignment(); +} +" + ))) + +(ert-deftest indent-method-chains-comment () + (let ((rust-indent-method-chain t)) (test-indent + " +fn main() { + // thing.do_it() + // .aligned() +} +" + ))) + +(ert-deftest indent-method-chains-close-block () + (let ((rust-indent-method-chain t)) (test-indent + " +fn main() { + foo.bar() +} +" + ))) |
