Closed db0 closed 2 years ago
What arguments are you passing?
Are you using the checkout action? It's basically required for this to be useful. You'll also want to set the timeout to see output for what happened because I've seen badly written tests (it was me lol) just get stuck and it hangs the process.
Also does it work with v2.1?
There's honestly so many things that can go wrong that I don't actually check for in this action. Like do you have GUT installed, are you requesting the right version of Godot, does your testing work when you run it locally, did GUT make breaking changes recently.
GUT is installed and passing all tests. You can see my current args here: https://github.com/db0/godot-card-game-framework/blob/main/.github/workflows/main.yml
The 4th time I used this action, it run. Unfortunately GUT failed miserably when running the tests. Are you using the GUT CLI commands?
Pass rate is 0 to 1 so 100 would always fail. I think you want to increase your import time? Im seeing lots of script errors.
This does use the cli to run the tests, it's pretty much all in entrypoint.sh if you want to see what's happening.
I'll just fork your repo, I didn't test this on any really big projects anyways.
Tried to increase the import time, but it seems to be stuck on unzipping again :-/
Ye go ahead. I'm having trouble making GUT cli run on my desktop, but it's windows and GUT says it's untested in git bash so I thought this was why.
Hmm there's about 100+ errors running your project on a linux machine. I also can't get headless to finish testing running locally on my computer.
Doesn't seem like it'll be compatible with headless version, i'll see how it does with standard linux version and if that can be run in a container.
Oh nevermind it fails on the linux version of godot too. It appears to be pathing issues due to filename issues probably. Linux is case sensitive and I think windows isn't
I see. I'll see if I can get a linux box running somewhere I can use to test and adjust.
However the main issue persists, in that the Github actions are never finishing unzipping. See the last one still running: https://github.com/db0/godot-card-game-framework/runs/4123813583
No it finishes unzipping I just don't write any output after unzipping until tests complete. What's happening is your tests take forever for CLI to complete because it's getting a ton of errors. Might be a GUT issue with CLI not working as well for mouse movements.
Seeing the same issue when I run the standard godot linux
But the other time it run, it did put an output, and I've put 20 minutes timeout, no?
Sometimes it'll run faster? You cancelled the last run at 17 minutes, so it might have just needed a few more.
If you can get rid of the errors it'll probably work within a reasonable amount of time. Seems like it's because the gut scene doesn't get parented to the root scene when its run from CLI so get_tree() returns nothing. I think I had a workaround for this IIRC, I'll look through some of my old code.
Interesting, I have a workaround. I'll PR my changes for your repo and add an option to my action to allow this style of running from CLI.
Oof or maybe not just yet. Forgot a step :/
Alright now it's working on my fork. I'll update godot-tester to allow this to work on my end tomorrow.
Seems like it's because the gut scene doesn't get parented to the root scene when its run from CLI so get_tree() returns nothing. I think I had a workaround for this IIRC, I'll look through some of my old code.
Oh? Yes please, I'm completely lost on why GUT is failing so miserably on CLI :-/
Also, a suggestion, just print out something else like "Starting GUT tests" after "unzipping", so it's a bit more obvious what is happening :) Also, isn't it possible to just spit out the logs real-time?
Also, a suggestion, just print out something else like "Starting GUT tests" after "unzipping", so it's a bit more obvious what is happening :)
Oh 100% going to log that. I'll also add some extra info if I can't figure out a way to do real time test logging.
Also, isn't it possible to just spit out the logs real-time?
I need to capture the output so I can determine pass/fail, but I'll look into work arounds that allow normal logging.
v2.3 has real time logging and I can run your tests but they aren't fully compatible with linux headless. i got 91% pass rate, i'll see if running with linux standard works when there's no gui.
i'm closing this issue and i'll make a new linux standard issue, as this specific issue has been resolved
I'm trying to create my first pipeline using godot-tester, but it's failing because it's getting stuck during unzipping
I've waited over an hour for this to proceed, but it never does.