dtolnay / proc-macro-workshop

Learn to write Rust procedural macros  [Rust Latam conference, Montevideo Uruguay, March 2019]
Apache License 2.0
4k stars 1.01k forks source link

Sorted: Tests for sorted match expressions do not catch if you always compare to the first arm #66

Open hnorkowski opened 1 year ago

hnorkowski commented 1 year ago

In sorted::check I forgot to update the last arm and ended comparing all arms with the first arm but still all tests (1-8) passed.

I only noticed my error because I was wondering why test 8 did not fail when having an arm that started with a lower case char (lower chase char > "-") before actually impl. it

EDIT: For test 8 it also would be a good idea to use match arms that start with a lower case letter (e.g. io::Result) because otherwise the order is correct anyways because all upper case chars are less than "_". At least if you use string comparison.