aiidalab / aiidalab-home

AiiDAlab Home App
MIT License
5 stars 9 forks source link

Feature/app compatibility with environment #47

Closed csadorf closed 4 years ago

csadorf commented 4 years ago

This is a large update to the home app to support the features introduced in https://github.com/aiidalab/aiidalab/pull/129 and https://github.com/aiidalab/aiidalab/pull/134 and some more cosmetic updates to the user interface.

Additional notes:

csadorf commented 4 years ago

@yakutovicha I'll leave this PR in draft stage until the changes related to aiidalab are merged, but this is ready for testing.

csadorf commented 4 years ago

Merge after: https://github.com/aiidalab/aiidalab/pull/134

yakutovicha commented 4 years ago

@csadorf something is wrong with the tests. I tried to rerun them, and they failed. Can you have a look?

csadorf commented 4 years ago

@csadorf something is wrong with the tests. I tried to rerun them, and they failed. Can you have a look?

I don't think those tests can succeed before the aiidalab version on the docker stack is updated.

yakutovicha commented 4 years ago

@csadorf something is wrong with the tests. I tried to rerun them, and they failed. Can you have a look?

I don't think those tests can succeed before the aiidalab version on the docker stack is updated.

ok

csadorf commented 4 years ago

@yakutovicha The tests still fail, because the selenium test for the app management widget fails. That's actually kind of expected, because the behavior of that widget has slightly changed (good sign that the test caught that 👍 ). That said, I've tried to re-implement the same test and had some trouble getting something proper, because I found no straight-forward way to detect whether an app is actually installed or uninstalled via selenium. It's obvious to a human, because the label texts change, but I have not yet found a way to access that information via selenium.

yakutovicha commented 4 years ago

@yakutovicha The tests still fail, because the selenium test for the app management widget fails. That's actually kind of expected, because the behavior of that widget has slightly changed (good sign that the test caught that 👍 ). That said, I've tried to re-implement the same test and had some trouble getting something proper, because I found no straight-forward way to detect whether an app is actually installed or uninstalled via selenium. It's obvious to a human, because the label texts change, but I have not yet found a way to access that information via selenium.

Maybe count how many accordions are there? Or how many app titles. They belong to a specific CSS class, so shouldn't be difficult to find how many they are:

Screenshot 2020-10-27 at 20 38 32

csadorf commented 4 years ago

@yakutovicha I've simplified the unit test and it now passes. It should still give us an indication if there is some issue with the app management widget.

I spent some time on trying to detect whether the button color changed (via css selection) and for some reason that only worked on my desktop. Your proposed solution is a possible option, but would be even more complicated with multiple windows etc. I'm calling it for now, because I've already spent a little too much time on this.