jameskibirige / codurancecodingexcercise Goto Github PK
View Code? Open in Web Editor NEWCoding excercise given by Codurance
Coding excercise given by Codurance
Is your feature request related to a problem? Please describe.
Integration tests need refactoring.
Describe the solution you'd like
A couple of notes here: ConfigurationShould seems not testing too much (only that there is not a null configuration object), maybe a fuller test checking that the object was correctly filled would have been better; WallHandlerShould would have benefited in terms of readability if the Dictionaries initialization covered less space, especially around lines 70 to 80.
TestUtilities and TestUtilityUnitTests seem a bit funky. For the former, it is due to design decisions taken elsewhere, for the latter is that I'm not sure that adding unit tests here would be completely warranted, as the normal unit tests where they are used can indirectly serve as tests for TestUtilities. Also, there is a small dissonance between the names. MappingTestData has the same readability issue that WallHandlerShould. Not sure why the test class MappingOptionsTestDataShould exists. It seems a bit anaemic. Could have checked not only the count but also confirm what is inside. Furthermore, the comments for Arrange Act Assert tend to be superfluous in general (either the distribution of your code makes them self-evident or the test code needs some cleaning), but over here, when there is nothing for Arrange nor Act, is just wasted keypresses and space. As there are tests for MockUserRepositoryBuilder, they tend to not completely test the achieved state. As an example, Build_GenerateMockUserRepository should not only test that is not null, but it initializes with no information.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Associated with following pull request #6
Is your feature request related to a problem? Please describe.
Readme.md was basic, it would have been better to also show the actual commands that could be used. The text is not specific about what instructions are expected but is something that benefits by thinking from the point of view of a new user.
Describe the solution you'd like
Concise, pragmatic and clear instruction on how to use the application from the perspective of a user. Mention the commands available and more detail on how to use the application.
Describe alternatives you've considered
Additional context
Look at example Readme documents and best practices.
Is your feature request related to a problem? Please describe.
Again nitpicking here as it is not part of the text given to James, but there is no way to exit, it seems, other than Ctrl+C.
Describe the solution you'd like
Create a command that allows users to exit via the user interface.
Describe alternatives you've considered
Additional context
The work for this is done in pull request: #7
Is your feature request related to a problem? Please describe.
On opening the solution I had an issue compiling: The TestUtilities project had the assembly of Moq linked, but not as part of a Nuget download. Once I added it, the application compiled.
Describe the solution you'd like
Resolve this issue with Nuget download in TestUtilities project
Describe alternatives you've considered
Additional context
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.