Thank you for your suggestion. I will look at adding more test cases.
I tried to keep it simple since more complicated expressions will need more simplifying and that can also be challenging to implement.
Very interesting one, but it needs more complicated test cases to earn his current rank estimation, imo.
What about things like: 2x + sin(3 * exp(5x)), 3x^-3 + 7x^2 + 25 - ln(2*x^2), ...?
2x + sin(3 * exp(5x))
3x^-3 + 7x^2 + 25 - ln(2*x^2)
ok, thx. I believe I'm overkilling the kata with what I'm implementing now... ;-x
I think that's because it's a subset of Lisp this way. First function, then any number of arguments, allowing implementations with no special cases for unary and binary functions.
Why the use of parenthesis while "not infix" notations main interest is they DO NOT need parenthesis...? :o
Thank you. I edited the description and removed the unused method.
Tests will use IdGenerator.GetId<IPost>() but it is possible to generate id values in a different way in the solution and still pass the tests.
Okay, re-raising these again since obviously they aren't "issues" according to the author ;-):
Thank you for the suggestion.
Thank you for the suggestion. Filter can be used depending on how you want to solve it. The description is clear that it does not need to be implemented.
GetPending is not tested. In fact, it's unnecessary given how GetFriends can be implemented.
(Even filter is unneeded.)
(Also, the name of GetPending would be misleading: it implies that it also receives all the pending friends, but the comment above suggests that it's actually the friends+pending equivalent of GetFriends (but then it'd also have the incorrect param signature).)
The tests expect you to use exactly IdGenerator.GetId<Post>(); to pass VerifyPostInformation, but it really should be IdGenerator.GetId<IPost>();. Otherwise other implementations of IPost will cause an ID collision.
The IEnumerable interface and read-only properties are unnecessarily complicating things IMO.
It's an error in the description, it should be GetId
the following error occures by using IdGenerator.Get< Member >():error CS0117: 'KataSocialNetwork.IdGenerator' does not contain a definition for 'Get'
error CS0117: 'KataSocialNetwork.IdGenerator' does not contain a definition for 'Get'
Can you please check it?