-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add new features to client-side testing document #575
Comments
@dondi and @eileenchoe walked @mihirsamdarshi and @yshin4 through the feature file JSON format located in https://github.com/dondi/GRNsight/tree/master/documents/developer_documents/testing_script_generator and they will start trying their hand at editing this file. |
We need to do this, too, so that we can systematically test interactions between features. |
Completed for node coloring, and wiki has ben updated. Included in PR #582 |
All new features have been added to |
I'm going to keep this one open because we will need to work on it during the sprint. We need to add two columns to the |
@kdahlquist is working on this now. Upon discussion with @mihirsamdarshi and @johnllopez616, the columns of the function availability table will be "no graph loaded", "unweighted graph/no node coloring", "unweighted graph/node coloring", "weighted graph/no node coloring", "weighted graph/node coloring". |
I have finished updating the GRNsight Function Availability Table on the wiki. I have a question: does the automatic client-side test generator just make the testing protocol or does it also automatically generate the tables in the wiki document? If it does, then what I wrote up directly on the wiki needs to be encoded. Also, I still need to review the GRNsight Client Side Testing Overview Table (above the other one in the wiki.) Will do this tomorrow. |
Worked on the Overview table today. I'm re-organizing it in order of the Drop-down menus because the options are a little scattered right now. Will need to finish tomorrow. |
I finished the Overview table doing the following:
I also added the items to the Function availability table. What I want to do next is give a finer scale to the Function availability table. Right now it has columns for no graph, and the four types of graphs loaded (weighted/unweighted and node color/no node color). There are certain functions that should only be available under other conditions. For example, we don't show the weight display options when an unweighted graph is displayed. Once these are enumerated, then we will basically have our "state diagram". We will need to make sure the logic is encoded in the actual Client Side Test Generator script. This will also serve as a guide to the state controller. |
@dondi will advise @kdahlquist how to edit code and json file to work on this next week.
|
Green light on file separation—ultimately these files serve the purpose of making it easier to do client-side testing so anything that makes this information easier to manage is worth considering. We will also go ahead and come up with an ID system that will allow us to reference specific cases succinctly. IDs can also be included in Markdown and as long as they are stable over the lifetime of the use case/JSON then that looks good. |
Another next-step would be for @ahmad00m to start auditing some of the test cases to check whether they make sense in the context of latest beta/UI/etc. and to see whether additional logic might need to be applied (e.g., inapplicable sequences, sequences that have no effect, etc.). |
PR #909 addresses this issue with a quick fix for #907 included. Broke up the featurelist into multiple json files and added simple ids for each feature that can be easily scaled as new features are added/removed. The screenshot below shows the new format of the client side testing document. If approved, I will add it to the wiki in this format. (I am waiting to be sure the group is okay with ID as its stands and doesn't want a more complicated id system) |
Format looks good, as well as the new file structure. Looks like we can proceed with next steps:
|
Commit #61eb5ecee2f3e184573d5ec032f143fa9900d4a0 added command line options to allow the user to specify which ids (features) to test. @igreen1 tested this a few times and it is working. However, it is prone to the same issues of odd language. @igreen1 and @ahmad00m will continue to work on the language used and other improvements to the logic of the testing script For reference (this is also in the testing-script-generator.js file), |
@ahmad00m finished checking the client side testing document. A few bugs and language errors were found. One of the bugs was that the node coloring checkbox in the dropdown menu would not toggle off and it would always remain on. The other bug was found to be related to the viewport size. Even though when the viewport size changed automatically the viewport checkbox in the dropdown menu would always be checked as medium size unless the size was changed manually in the dropdown menu. |
As the script generator settles, let's sample some scripts to check for intelligibility/errors and validate some of the sequences. Let's do two samples:
Based on what happens here we can determine next steps. |
Some minor graphics bugs were fixed. Also, there is an issue (though not a bug) in how to represent empty/default values. @ahmad00m has mentioned this before, but another example is the 'click node to display gene information'. How is 'no click' to be represented. If 'no click' performs no actions, and the 'result' is left empty, it creates a minor bug of an extra bullet point. But, adding a phrasing that is clear is difficult. Perhaps someone else had a better a idea than "the gene page should no open" for "no click". However, there is a deeper issue in the logic, best shown by the following example. Exports cannot work if no graph is loaded. And, the testing script should 'know' this as Second, species commands are redundant. Because dropdown and sidebar are treated as separate features, they can create odd combinations like this. But, if they are treated as the same, bugs like #906 might not be caught. And, the sidebar and dropdown are only mostly identical, there are some differences in their operation. Test 1Instructions:
Results:
|
After discussion, a few possibilities emerged: (a) some new features might need updates to the |
Given the number of new features/pathways involved with the year’s overall work, it remains important to keep the features updated. Even if the number of cases grows significantly, what matters most is the awareness of the new variations in the latest functionality |
The new features that @eileenchoe, @yshin4, and @mihirsamdarshi worked on this semester (and last) need to be added to the client-side testing document.
The text was updated successfully, but these errors were encountered: