The program is functioning well and I find it enjoyable and interesting to observe the varied sentences that the Markov sequence generates. It appears that the project's primary components are in place, and the code is easily understandable. The tests appear to cover most of the core functionality.
Things I found out
As a user, I have encountered errors when using too high degrees, initially I was unaware that these errors were caused by a too high degree value, I wonder whether the input for degree variable could have some kind of errors pointing to this when too high
It might be beneficial to include some validation in the configure -method to confirm that the specified file or folder exists
Additionally, if the program receives incorrect input, such as a string being entered as a degree value, it could either terminate the method or prompt the user to enter a valid input
The code is very well documented and easy to understand, and well structured to their own classes, the logic is well commented, maybe the UI -class could be commented briefly also
While it is a minor point, it would be helpful to display the pipeline status in the README.md file alongside the test coverage badge
I think there is redundant conditional in Markov -class, which could be removed:
if __name__ == '__main__':
pass
In summary, I believe this is a fantastic project that is enjoyable to experiment with and user-friendly. Great work!
"As a user, I have encountered errors when using too high degrees"
I hadn't encountered this bug, thanks! I think it results from using a degree larger than the longest sentence in the text, if you count by the words and punctuation chars.
Thanks for all the good advice, I’m fixing everything :D
Peer review
The program is functioning well and I find it enjoyable and interesting to observe the varied sentences that the Markov sequence generates. It appears that the project's primary components are in place, and the code is easily understandable. The tests appear to cover most of the core functionality.
Things I found out
In summary, I believe this is a fantastic project that is enjoyable to experiment with and user-friendly. Great work!