Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(138)

Side by Side Diff: Source/WebKit/chromium/tests/IDBTransactionTest.cpp

Issue 78053006: [oilpan] Move IDBDatabase, IDBDatabaseCallbacks, IDBDatabaseBackendInterface and other related clas… (Closed) Base URL: svn://svn.chromium.org/blink/branches/oilpan
Patch Set: Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2013 Google Inc. All rights reserved. 2 * Copyright (C) 2013 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
77 { 77 {
78 return static_cast<WebFrameImpl*>(m_webView->mainFrame())->frame()->docu ment(); 78 return static_cast<WebFrameImpl*>(m_webView->mainFrame())->frame()->docu ment();
79 } 79 }
80 80
81 private: 81 private:
82 WebView* m_webView; 82 WebView* m_webView;
83 }; 83 };
84 84
85 class FakeIDBDatabaseBackendProxy : public IDBDatabaseBackendInterface { 85 class FakeIDBDatabaseBackendProxy : public IDBDatabaseBackendInterface {
86 public: 86 public:
87 static PassRefPtr<FakeIDBDatabaseBackendProxy> create() { return adoptRef(ne w FakeIDBDatabaseBackendProxy()); } 87 static FakeIDBDatabaseBackendProxy* create() { return new FakeIDBDatabaseBac kendProxy(); }
88 88
89 virtual void createObjectStore(int64_t transactionId, int64_t objectStoreId, const String& name, const IDBKeyPath&, bool autoIncrement) OVERRIDE { } 89 virtual void createObjectStore(int64_t transactionId, int64_t objectStoreId, const String& name, const IDBKeyPath&, bool autoIncrement) OVERRIDE { }
90 virtual void deleteObjectStore(int64_t transactionId, int64_t objectStoreId) OVERRIDE { } 90 virtual void deleteObjectStore(int64_t transactionId, int64_t objectStoreId) OVERRIDE { }
91 virtual void createTransaction(int64_t transactionId, PassRefPtr<IDBDatabase Callbacks>, const Vector<int64_t>& objectStoreIds, unsigned short mode) OVERRIDE { } 91 virtual void createTransaction(int64_t transactionId, IDBDatabaseCallbacks*, const Vector<int64_t>& objectStoreIds, unsigned short mode) OVERRIDE { }
92 virtual void close(PassRefPtr<IDBDatabaseCallbacks>) OVERRIDE { } 92 virtual void close(IDBDatabaseCallbacks*) OVERRIDE { }
93 93
94 virtual void commit(int64_t transactionId) OVERRIDE { } 94 virtual void commit(int64_t transactionId) OVERRIDE { }
95 virtual void abort(int64_t transactionId) OVERRIDE { } 95 virtual void abort(int64_t transactionId) OVERRIDE { }
96 virtual void abort(int64_t transactionId, PassRefPtr<IDBDatabaseError>) OVER RIDE { } 96 virtual void abort(int64_t transactionId, PassRefPtr<IDBDatabaseError>) OVER RIDE { }
97 97
98 virtual void createIndex(int64_t transactionId, int64_t objectStoreId, int64 _t indexId, const String& name, const IDBKeyPath&, bool unique, bool multiEntry) OVERRIDE { } 98 virtual void createIndex(int64_t transactionId, int64_t objectStoreId, int64 _t indexId, const String& name, const IDBKeyPath&, bool unique, bool multiEntry) OVERRIDE { }
99 virtual void deleteIndex(int64_t transactionId, int64_t objectStoreId, int64 _t indexId) OVERRIDE { } 99 virtual void deleteIndex(int64_t transactionId, int64_t objectStoreId, int64 _t indexId) OVERRIDE { }
100 100
101 virtual void get(int64_t transactionId, int64_t objectStoreId, int64_t index Id, PassRefPtr<IDBKeyRange>, bool keyOnly, PassRefPtr<IDBCallbacks>) OVERRIDE { } 101 virtual void get(int64_t transactionId, int64_t objectStoreId, int64_t index Id, PassRefPtr<IDBKeyRange>, bool keyOnly, IDBCallbacks*) OVERRIDE { }
102 virtual void put(int64_t transactionId, int64_t objectStoreId, PassRefPtr<Sh aredBuffer> value, PassRefPtr<IDBKey>, PutMode, PassRefPtr<IDBCallbacks>, const Vector<int64_t>& indexIds, const Vector<IndexKeys>&) OVERRIDE { } 102 virtual void put(int64_t transactionId, int64_t objectStoreId, PassRefPtr<Sh aredBuffer> value, PassRefPtr<IDBKey>, PutMode, IDBCallbacks*, const Vector<int6 4_t>& indexIds, const Vector<IndexKeys>&) OVERRIDE { }
103 virtual void setIndexKeys(int64_t transactionId, int64_t objectStoreId, Pass RefPtr<IDBKey>, const Vector<int64_t>& indexIds, const Vector<IndexKeys>&) OVERR IDE { } 103 virtual void setIndexKeys(int64_t transactionId, int64_t objectStoreId, Pass RefPtr<IDBKey>, const Vector<int64_t>& indexIds, const Vector<IndexKeys>&) OVERR IDE { }
104 virtual void setIndexesReady(int64_t transactionId, int64_t objectStoreId, c onst Vector<int64_t>& indexIds) OVERRIDE { } 104 virtual void setIndexesReady(int64_t transactionId, int64_t objectStoreId, c onst Vector<int64_t>& indexIds) OVERRIDE { }
105 virtual void openCursor(int64_t transactionId, int64_t objectStoreId, int64_ t indexId, PassRefPtr<IDBKeyRange>, IndexedDB::CursorDirection, bool keyOnly, Ta skType, PassRefPtr<IDBCallbacks>) OVERRIDE { } 105 virtual void openCursor(int64_t transactionId, int64_t objectStoreId, int64_ t indexId, PassRefPtr<IDBKeyRange>, IndexedDB::CursorDirection, bool keyOnly, Ta skType, IDBCallbacks*) OVERRIDE { }
106 virtual void count(int64_t transactionId, int64_t objectStoreId, int64_t ind exId, PassRefPtr<IDBKeyRange>, PassRefPtr<IDBCallbacks>) OVERRIDE { } 106 virtual void count(int64_t transactionId, int64_t objectStoreId, int64_t ind exId, PassRefPtr<IDBKeyRange>, IDBCallbacks*) OVERRIDE { }
107 virtual void deleteRange(int64_t transactionId, int64_t objectStoreId, PassR efPtr<IDBKeyRange>, PassRefPtr<IDBCallbacks>) OVERRIDE { } 107 virtual void deleteRange(int64_t transactionId, int64_t objectStoreId, PassR efPtr<IDBKeyRange>, IDBCallbacks*) OVERRIDE { }
108 virtual void clear(int64_t transactionId, int64_t objectStoreId, PassRefPtr< IDBCallbacks>) OVERRIDE { } 108 virtual void clear(int64_t transactionId, int64_t objectStoreId, IDBCallback s*) OVERRIDE { }
109
110 virtual void trace(Visitor*) OVERRIDE { }
109 111
110 private: 112 private:
111 FakeIDBDatabaseBackendProxy() { } 113 FakeIDBDatabaseBackendProxy() { }
112 }; 114 };
113 115
114 class FakeIDBDatabaseCallbacks : public IDBDatabaseCallbacks { 116 class FakeIDBDatabaseCallbacks : public IDBDatabaseCallbacks {
115 public: 117 public:
116 static PassRefPtr<FakeIDBDatabaseCallbacks> create() { return adoptRef(new F akeIDBDatabaseCallbacks()); } 118 static FakeIDBDatabaseCallbacks* create() { return new FakeIDBDatabaseCallba cks(); }
117 virtual void onVersionChange(int64_t oldVersion, int64_t newVersion) OVERRID E { } 119 virtual void onVersionChange(int64_t oldVersion, int64_t newVersion) OVERRID E { }
118 virtual void onForcedClose() OVERRIDE { } 120 virtual void onForcedClose() OVERRIDE { }
119 virtual void onAbort(int64_t transactionId, PassRefPtr<IDBDatabaseError> err or) OVERRIDE { } 121 virtual void onAbort(int64_t transactionId, PassRefPtr<IDBDatabaseError> err or) OVERRIDE { }
120 virtual void onComplete(int64_t transactionId) OVERRIDE { } 122 virtual void onComplete(int64_t transactionId) OVERRIDE { }
123 virtual void trace(Visitor*) OVERRIDE { }
121 private: 124 private:
122 FakeIDBDatabaseCallbacks() { } 125 FakeIDBDatabaseCallbacks() { }
123 }; 126 };
124 127
125 TEST_F(IDBTransactionTest, EnsureLifetime) 128 TEST_F(IDBTransactionTest, EnsureLifetime)
126 { 129 {
127 v8::HandleScope handleScope; 130 v8::HandleScope handleScope;
128 v8::Context::Scope scope(context()); 131 v8::Context::Scope scope(context());
129 132
130 RefPtr<FakeIDBDatabaseBackendProxy> proxy = FakeIDBDatabaseBackendProxy::cre ate(); 133 FakeIDBDatabaseBackendProxy* proxy = FakeIDBDatabaseBackendProxy::create();
131 RefPtr<FakeIDBDatabaseCallbacks> connection = FakeIDBDatabaseCallbacks::crea te(); 134 FakeIDBDatabaseCallbacks* connection = FakeIDBDatabaseCallbacks::create();
132 RefPtr<IDBDatabase> db = IDBDatabase::create(scriptExecutionContext(), proxy , connection); 135 RefPtr<IDBDatabase> db = IDBDatabase::create(scriptExecutionContext(), proxy , connection);
133 136
134 const int64_t transactionId = 1234; 137 const int64_t transactionId = 1234;
135 const Vector<String> transactionScope; 138 const Vector<String> transactionScope;
136 RefPtr<IDBTransaction> transaction = IDBTransaction::create(scriptExecutionC ontext(), transactionId, transactionScope, IndexedDB::TransactionReadOnly, db.ge t()); 139 RefPtr<IDBTransaction> transaction = IDBTransaction::create(scriptExecutionC ontext(), transactionId, transactionScope, IndexedDB::TransactionReadOnly, db.ge t());
137 140
138 // Local reference, IDBDatabase's reference and IDBPendingTransactionMonitor 's reference: 141 // Local reference, IDBDatabase's reference and IDBPendingTransactionMonitor 's reference:
139 EXPECT_EQ(3, transaction->refCount()); 142 EXPECT_EQ(3, transaction->refCount());
140 143
141 RefPtr<IDBRequest> request = IDBRequest::create(scriptExecutionContext(), ID BAny::createInvalid(), transaction.get()); 144 RefPtr<IDBRequest> request = IDBRequest::create(scriptExecutionContext(), ID BAny::createInvalid(), transaction.get());
142 IDBPendingTransactionMonitor::deactivateNewTransactions(); 145 IDBPendingTransactionMonitor::deactivateNewTransactions();
143 146
144 // Local reference, IDBDatabase's reference, and the IDBRequest's reference 147 // Local reference, IDBDatabase's reference, and the IDBRequest's reference
145 EXPECT_EQ(3, transaction->refCount()); 148 EXPECT_EQ(3, transaction->refCount());
146 149
147 // This will generate an abort() call to the back end which is dropped by th e fake proxy, 150 // This will generate an abort() call to the back end which is dropped by th e fake proxy,
148 // so an explicit onAbort call is made. 151 // so an explicit onAbort call is made.
149 scriptExecutionContext()->stopActiveDOMObjects(); 152 scriptExecutionContext()->stopActiveDOMObjects();
150 transaction->onAbort(IDBDatabaseError::create(IDBDatabaseException::AbortErr or, "Aborted")); 153 transaction->onAbort(IDBDatabaseError::create(IDBDatabaseException::AbortErr or, "Aborted"));
151 154
152 EXPECT_EQ(1, transaction->refCount()); 155 EXPECT_EQ(1, transaction->refCount());
153 } 156 }
154 157
155 } // namespace 158 } // namespace
OLDNEW
« no previous file with comments | « Source/WebKit/chromium/tests/IDBRequestTest.cpp ('k') | Source/bindings/scripts/CodeGeneratorV8.pm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698