Giter Club home page Giter Club logo

codurancecodingexcercise's People

Contributors

jameskibirige avatar

codurancecodingexcercise's Issues

Refactor Integration Tests and TestUtilityUnitTests

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

Improve Read Me documentation

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.

Add Exit command

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

Resolve Nuget download issue for distributed code

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

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.