> On Jan. 20, 2015, 5:12 nachm., Christian David wrote: > > On my system the test fails as well, seems to be the same issue as before. > > This solved it: > > > > q.prepare(QString("SELECT MAX(CAST(SUBSTR(%1, :prefixLength) AS INTEGER)) > > FROM %2;").arg(tableField, tableName)); > > q.bindValue(":prefixLength", prefixLength + 1); > > > > As some tables have special ids like "AStd::Expense" in kmmAccounts I added > > this to the test: > > > > testAddNewAccount(); > > QCOMPARE(m->m_sql->highestIdNum(QLatin1String("kmmAccounts"), > > QLatin1String("id"), 1), 6ul); > > > > And: Your solouting works well! Now we just have to check if other > > databases bevhave this way (```cast("some string" as integer)``` -> 0) as > > well. > > > > Since GCI is over I can take over this task if you want.
Ups, if testAddNewAccount() is called again the new highest id is 8. So it should be removed. - Christian ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/122138/#review74404 ----------------------------------------------------------- On Jan. 20, 2015, 8:59 vorm., Daniel Ring wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://git.reviewboard.kde.org/r/122138/ > ----------------------------------------------------------- > > (Updated Jan. 20, 2015, 8:59 vorm.) > > > Review request for KMymoney and Christian David. > > > Bugs: 339103 > http://bugs.kde.org/show_bug.cgi?id=339103 > > > Repository: kmymoney > > > Description > ------- > > This adds a function to retrieve the highest ID number from the database. The > IDs are prefixed by a short identifier string, and are stored in the database > as strings. > > This review request was created as a part of Google Code-In 2014. The > specific task it refers to can be found here: > https://www.google-melange.com/gci/task/view/google/gci2014/5774859095244800 > > > Diffs > ----- > > kmymoney/mymoney/storage/mymoneydatabasemgrtest.h > 07fc175cd9381ef0fc7ad314cf905c22a43fca81 > kmymoney/mymoney/storage/mymoneydatabasemgrtest.cpp > 642fc53d9e220f34e463b2a27ab9a5d4b0c1e3ec > kmymoney/mymoney/storage/mymoneystoragesql.h > 469c0f47d61df783f48787660f526fccdf5264a4 > kmymoney/mymoney/storage/mymoneystoragesql.cpp > fa9fbdf7d77eaa4922302d1f583317212af45ddf > > Diff: https://git.reviewboard.kde.org/r/122138/diff/ > > > Testing > ------- > > I created a small sample database with SQLite and verified that the SQL > statment worked properly. I was able to successfully build and run KMyMoney > with this function included in Debian Stable (using cmake 2.8.11.1 from > backports). However, I was unsure how best to test the function itself, so > please let me know if any issues arise. > > > Thanks, > > Daniel Ring > >
_______________________________________________ KMyMoney-devel mailing list KMyMoney-devel@kde.org https://mail.kde.org/mailman/listinfo/kmymoney-devel