RFR: 8377427: Reduce substring allocations in Color.web(String, double) [v10]
Michael Strauß
mstrauss at openjdk.org
Thu Feb 19 19:49:26 UTC 2026
On Thu, 19 Feb 2026 19:26:53 GMT, Andy Goryachev <angorya at openjdk.org> wrote:
>> Hmm... but why? It seems to me that you're suggesting to test some kind of edge case, but I don't understand what the significance of closely adjacent values is in this test. In this test, we parse random number strings with both algorithms, and compare their bitwise equivalence. Since the numbers were random to begin with, a number right next to it is equally random. I don't think this adds any relevant test coverage.
>
> you are bringing a non-trivial algorithm, and I would like it well tested.
>
> in fact, I would suggest adding one more test for binary patterns such as 0x0...01, 0x0...10, ... 0xff..ff, 0xff..fe - walking ones, walking zeros, filling ones/zeros from one end, from the other end, 0xaa/0x55. this is different from random fuzzing but I feel is necessary simply because the search space is just too great (~2^64)
>
> the test patterns would be procedurally generated, then for each pattern use
> long -> Double -> String -> parse -> compare with Double
I also want this to be well-tested, but I want the tests to be meaningful and add significant test coverage, that is, each test should be testing something unique. I don't see anything that's unique in either testing values close to randomly selected numbers, nor in the bit patterns you suggest (there's nothing special about those bit patterns, they are as good as any other pattern). I already have tests for normal values, subnormal values, and significant limits (including rounding above and below). I'm not going to add more of the same, unless it's clear that a specific _kind_ of test is missing.
-------------
PR Review Comment: https://git.openjdk.org/jfx/pull/2069#discussion_r2829829604
More information about the openjfx-dev
mailing list