-
Notifications
You must be signed in to change notification settings - Fork 4
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 device.getDirectory #28
base: master
Are you sure you want to change the base?
Add device.getDirectory #28
Conversation
ee13b1b
to
a89670e
Compare
Hey there! Another great looking PR at first glance, thanks a lot! I'll have a better look this weekend, when I hope to have a little spare time and access to my calculator. One thing that jumps out to me is the dropped test coverage. It would be nice to have a unit test for the |
Add a general purpose function for getting parameters Allow non-integer parameters to be destructed Don't get out of sync if the parameter is not returned Change format of destructed parameters
a89670e
to
0bb14dc
Compare
I've added a test for mergeBuffers. It didn't affect the coverage percentage, since it's already used by another function, but it did find a bug, so I guess it served its purpose? |
76d3685
to
e724b48
Compare
I've added a recording and tests for the TI-83 Premium CE, which work fine if you mark the device as "supported" and completely fail otherwise. I'm not really sure how to fix that, as the required support level isn't explicitly specified anywhere during the test. |
Alright, I made the build and CodeClimate (and myself 😉) happy again. However, there's this annoyance in the test output a couple of times now:
I'm not entirely sure why that didn't show up before, when I just changed the support type of the TI-83 Premium CE to supported. It's not really a huge issue I suppose. But if you have any ideas... 😄 If you're still happy after my changes, I'll merge the PR. |
Oh, and by the way, it works perfectly on my TI-84 Plus 👍🏻 |
I'm also seeing those warnings - I'm guessing it's because changing the support level caused it to check if the device was supported again? I'll investigate it later today, and if necessary, re-record the tests. |
Tbh, I don't think it's an issue with the recording. There shouldn't really be something like a second check for different support levels. Not sure what it is though. So maybe this shouldn't be a blocking issue. I guess it's a good idea if I add a getDirectory recording for TI-84+ though, and we should add this to the readme file, to round off this PR. |
Found anything? I myself am a bit pressed for time last week and this week, but I'll attempt to find a moment to make the TI-84+ recording and add it to the PR. |
I believe the issue is here. The properties required for device matching are checked once for each device for the current support level, so changing the support level changed the number of devices and caused the properties to be read more times than before. So, this is only a testing issue, not an issue with the actual code. |
You're a genius. That could very well be the issue 🎉 |
It would be nice if this support was added. |
Adds a method to get the list of variables on a device.
This PR also adds support for receiving fragmented virtual packets and an expectAny method for receiving a virtual packet of unknown type.
It also makes several changes to parameter handling:
I've only tested this on the CE, so it will probably need additional testing before being merged.