void Test::quickdatabase()
{
    DataBase db;
    QVERIFY(db.load());
    QuickDatabase iv(&db);

    // Quick check a int overflow case
    iv.has(479906, 252);

    User user(&db, 6);
    for (int i = 0; i < db.totalUsers(); i += db.totalUsers() / 10) {
        int userNumber = db.mapUser(user.id());
        for (int j = 0; j < db.totalMovies(); ++j) {
            int m = user.seenMovie(j);
            QVERIFY(iv.has(userNumber, j) == (m != -1));
        }
        user.next();
    }
}
Exemple #2
0
void SvdOrder :: setUser(int user)
{
    currentUser = currDb->mapUser(user);
}
Exemple #3
0
/**
 * Loop through the entire list of finished features
 */
double SvdOrder::determine(int user)
{
    int movieIndex = currentMovie - 1;
    int userIndex  = currDb->mapUser(user);
    return currDb->getAverageRating() + predictRating(movieIndex, userIndex);
}