> On Feb. 5, 2013, 5:41 p.m., Cristian Oneț wrote:
> > It's really nice that you made an effort to create test cases for this part 
> > of the application that did not have any before. See my comments bellow 
> > regarding the current behavior.

Thanks for your insights, and sorry for keeping you waiting - it's been busy 
time becoming a father :)


> On Feb. 5, 2013, 5:41 p.m., Cristian Oneț wrote:
> > kmymoney/converter/matchfindertest.cpp, lines 206-214
> > <http://git.reviewboard.kde.org/r/108489/diff/1/?file=108027#file108027line206>
> >
> >     Consider the following case:
> >     The user import's the statement and matches the transactions. Now if 
> > the user imports the same statements again wouldn't the behavior you desire 
> > create the same transactions again?

You have a point, this one needs to stay as is.


> On Feb. 5, 2013, 5:41 p.m., Cristian Oneț wrote:
> > kmymoney/converter/matchfindertest.cpp, lines 291-300
> > <http://git.reviewboard.kde.org/r/108489/diff/1/?file=108027#file108027line291>
> >
> >     I consider the current behavior correct considering that the bankId can 
> > only be saved once a transaction has been imported. The bankId can migrate 
> > in only one way from the outside world into KMyMoney. That's the source of 
> > the asymmetry.
> >     
> >     If you have in KMyMoney a transaction without a bankId you can match to 
> > it an imported transaction (you probably need to update the bankId) but 
> > it's wrong to match a KMyMoney transaction which has a bankId because it 
> > was already matched at a previous import.
> >     
> >     The bankId is the common key between KMyMoney and the outside world (a 
> > kind of external identifier).

Not sure I get you right. Every transaction with bankId set must be an imported 
transaction. But not every imported transaction must have a bankId. Is that 
what you mean?

You've lost me in the 2nd paragraph :) I can't get the relation between what 
you wrote and the testcase, could you please explain it in a bit more details?


> On Feb. 5, 2013, 5:41 p.m., Cristian Oneț wrote:
> > kmymoney/converter/matchfindertest.cpp, lines 196-204
> > <http://git.reviewboard.kde.org/r/108489/diff/1/?file=108027#file108027line196>
> >
> >     I'm not sure about the desired behavior that you described. I think 
> > that the bankId should be the strongest criteria for matching transactions 
> > because it should really be a unique ID of the transaction. Could you point 
> > to a use case in which two unrelated transactions get the same bankId?

I also think that the bankId should be the strongest criteria, and I think it 
should not be the only one. It seems to be the case already - if two 
transactions have the same bankId, but:
- a different amount OR
- mismatching post date OR 
- refer different accounts 
they will not be considered duplicates. I think payee check should be added to 
the list, especially that it's rather a loose check - an empty payee in either 
transaction will be a match as well, just like in "regular" (non-duplicate) 
matching.


- Łukasz


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/108489/#review26703
-----------------------------------------------------------


On Jan. 19, 2013, 5:08 p.m., Łukasz Maszczyński wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/108489/
> -----------------------------------------------------------
> 
> (Updated Jan. 19, 2013, 5:08 p.m.)
> 
> 
> Review request for KMymoney.
> 
> 
> Description
> -------
> 
> Added some tests to characterize application behavior regarding matching an 
> imported transaction with existing/scheduled one.
> 
> I'd like to emphasize two important things in this review:
> 1. I've marked three tests with a comment "revise behavior", I believe they 
> show unwanted behavior. Description of what I think should be expected is 
> inside the test functions, so please comment those parts and let me know if 
> my understanding is (in)correct.
> 2. I've removed a check, which I believe is superfluous - 
> splitsReferenceSameAccount(), as transaction filter already takes care of 
> filtering off the transactions which refer to a different account. I believe 
> the 4 tests (*_accountMismatch_* and *_multipleAccounts_*) show that this 
> check is not needed, however it was in the code for a long time, only 
> rewritten during recent refactoring.
> 
> 
> Diffs
> -----
> 
>   kmymoney/converter/CMakeLists.txt 8433630af638df863dad55e10a3ead60f0b4c7f6 
>   kmymoney/converter/matchfindertest.h PRE-CREATION 
>   kmymoney/converter/matchfindertest.cpp PRE-CREATION 
>   kmymoney/converter/transactionmatchfinder.h 
> 5f276a846de4cc72bd2700f2560a64b8ee260217 
>   kmymoney/converter/transactionmatchfinder.cpp 
> 35e72cbc65dde762ed2e11651185afe2c4a14a3c 
> 
> Diff: http://git.reviewboard.kde.org/r/108489/diff/
> 
> 
> Testing
> -------
> 
> make test
> 
> 
> Thanks,
> 
> Łukasz Maszczyński
> 
>

_______________________________________________
KMyMoney-devel mailing list
KMyMoney-devel@kde.org
https://mail.kde.org/mailman/listinfo/kmymoney-devel

Reply via email to