Skip to content

Test suite with a bunch of GLSL code ? #4

Description

@gre

Hi :-)

I've found a few bugs in the current glsl-min-stream after passing the 52 GLSL Transitions created on GLSL.io into glsl-min-stream.

I need minification because I'm making minified snapshots of all user transitions (glsl-transitions). Minification helps to make this snapshot smaller.

In the current state, this is too dangerous for my use-case to use glsl-min-stream until we fix those bugs (I really need to be sure something won't break on the final browser.)
I've already found a few bugs in glsl-parser/glsl-tokenizer the past months.
So I think we should improve the test-suite of all of these.

So here is my proposal

I think it would be great to make a page which automatically tests a bunch of GLSL codes and reports all errors:

  • first level: check if the minified is compiling.
  • second level: compare the 2 images (one resulting of the initial source code, the second resulting of the minification). (this second level checks the semantic – it mays be overkill and we may forget it)

When I say "automatically" I mean that we should easily be able to feed GLSL source code into this suite, I'm basically thinking about just a folder with a lot of GLSL source code.

I was thinking maybe we could retrieve a lot of GLSL code from some existing services (e.g. glsl.heroku.com / shadetoy / glsl transitions) and test glsl-min-stream with all of them.

BTW I don't know about the legal part of that (we have to check the licenses).

but I think this will be the base to have robust tools: at the same time this would also help testing glsl-parser, glsl-tokenizer, glsl-min-stream all in one !

What do you guys think?

Thanks

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions