blob: 642f2de7e0aad701e74f8adcf5e76b95d1bfc0e9 [file] [log] [blame]
// Copyright 2015 The Vanadium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package io.v.android.apps.reader.db;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import java.util.ArrayList;
import java.util.List;
import io.v.android.apps.reader.model.Listener;
import io.v.android.apps.reader.vdl.File;
/**
* A fake implementation of the DB interface for manual testing.
*/
public class FakeDB implements DB {
private static final String[] FILE_NAMES = {
"Foo.pdf",
"Bar.pdf"
};
private FakeFileList mFileList;
public FakeDB(Context context) {
mFileList = new FakeFileList();
}
static class FakeFileList implements DBList<File> {
private List<File> mFiles;
private Listener mListener;
public FakeFileList() {
mFiles = new ArrayList<>();
for (String fileName : FILE_NAMES) {
mFiles.add(createFile(fileName));
}
}
private static File createFile(String title) {
return new File(null, null, title, 0L, null);
}
@Override
public int getItemCount() {
return mFiles.size();
}
@Override
public File getItem(int position) {
return mFiles.get(position);
}
@Override
public void setListener(Listener listener) {
// This fake list never calls the notify methods.
// Just check if the listener is set only once.
assert mListener == null;
mListener = listener;
}
@Override
public void discard() {
// Nothing to do.
}
}
public void init(Activity activity) {
// Nothing to do.
}
@Override
public boolean onActivityResult(int requestCode, int resultCode, Intent data) {
// Nothing to do.
return false;
}
@Override
public DBList<File> getFileList() {
return mFileList;
}
}