| Name |
Last commit
|
Last update |
|---|---|---|
| ci | ||
| googlemock | ||
| googletest | ||
| .gitignore | ||
| .travis.yml | ||
| BUILD.bazel | ||
| CMakeLists.txt | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| Makefile.am | ||
| README.md | ||
| WORKSPACE | ||
| appveyor.yml | ||
| configure.ac |
Fix Theta(N^2) memory usage of EXPECT_EQ(string) when the strings don't match. The underlying CalculateOptimalEdits() implementation used a simple dynamic-programming approach that always used N^2 memory and time. This meant that tests for equality of large strings were ticking time bombs: They'd work fine as long as the test passed, but as soon as the strings differed the test would OOM, which is very hard to debug. I switched it out for a Dijkstra search, which is still worst-case O(N^2), but in the usual case of mostly-matching strings, it is much closer to linear. PiperOrigin-RevId: 210405025
| Name |
Last commit
|
Last update |
|---|---|---|
| ci | Loading commit data... | |
| googlemock | Loading commit data... | |
| googletest | Loading commit data... | |
| .gitignore | Loading commit data... | |
| .travis.yml | Loading commit data... | |
| BUILD.bazel | Loading commit data... | |
| CMakeLists.txt | Loading commit data... | |
| CONTRIBUTING.md | Loading commit data... | |
| LICENSE | Loading commit data... | |
| Makefile.am | Loading commit data... | |
| README.md | Loading commit data... | |
| WORKSPACE | Loading commit data... | |
| appveyor.yml | Loading commit data... | |
| configure.ac | Loading commit data... |