You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I think it would be beneficial to add tests that check for non-determinism and/or accidental misparsing/mutation. If not at the highest/largest levels, at least for smaller primitives like PsdLayer etc, using existing test inputs.
I did this manually and fell down a rabbit hole unearthing what seems to be issue #10. I think such a test feature would likely catch small and large regressions across the codebase, either retroactively or in the future.
That being said, I don't have a sufficient command of the Adobe spec to know as to whether there are situations where non-determinism is encouraged (!!), nor of your codebase to know if determinism and repeatability are inherit goals. So please forgive me if I'm quite offbase here.
Thank you!
-Andrew
The text was updated successfully, but these errors were encountered:
Even at the lowest level, for example Unicode strings, I was unable to achieve determinism. The strings are supposed to be terminated by two null bytes, except sometimes they are not. I'm not sure the current implementation is according to specification, but so far no-one complained.
Testing could definitely be improved. However, given the lack of time, access to Photoshop, anything "ground truth" to test against (like a reference implementation or dataset), and reliable specification, I am afraid the current state is as good as it gets for now.
I think it would be beneficial to add tests that check for non-determinism and/or accidental misparsing/mutation. If not at the highest/largest levels, at least for smaller primitives like PsdLayer etc, using existing test inputs.
I did this manually and fell down a rabbit hole unearthing what seems to be issue #10. I think such a test feature would likely catch small and large regressions across the codebase, either retroactively or in the future.
That being said, I don't have a sufficient command of the Adobe spec to know as to whether there are situations where non-determinism is encouraged (!!), nor of your codebase to know if determinism and repeatability are inherit goals. So please forgive me if I'm quite offbase here.
Thank you!
-Andrew
The text was updated successfully, but these errors were encountered: