summaryrefslogtreecommitdiff
path: root/src/mongo/db/auth/authz_manager_external_state_mock.h
diff options
context:
space:
mode:
authorSpencer T Brody <spencer@10gen.com>2013-06-27 17:10:39 -0400
committerSpencer T Brody <spencer@10gen.com>2013-07-01 17:41:53 -0400
commit90f1d8947a26b330accfaf69dc25ee1d892891d1 (patch)
tree320cfc0363fbbbb09b85f1743b200cb76cd0949b /src/mongo/db/auth/authz_manager_external_state_mock.h
parentd15b27260f62349d9d9aac0b53d60eaf284492c3 (diff)
downloadmongo-90f1d8947a26b330accfaf69dc25ee1d892891d1.tar.gz
SERVER-9518 Initial implementation of acquire/releaseUser methods in AuthorizationManager
Diffstat (limited to 'src/mongo/db/auth/authz_manager_external_state_mock.h')
-rw-r--r--src/mongo/db/auth/authz_manager_external_state_mock.h23
1 files changed, 14 insertions, 9 deletions
diff --git a/src/mongo/db/auth/authz_manager_external_state_mock.h b/src/mongo/db/auth/authz_manager_external_state_mock.h
index 3a2eadd5456..dd026c2764f 100644
--- a/src/mongo/db/auth/authz_manager_external_state_mock.h
+++ b/src/mongo/db/auth/authz_manager_external_state_mock.h
@@ -22,6 +22,7 @@
#include "mongo/base/status.h"
#include "mongo/db/auth/authz_manager_external_state.h"
#include "mongo/db/jsobj.h"
+#include "mongo/platform/unordered_map.h"
namespace mongo {
@@ -35,21 +36,25 @@ namespace mongo {
AuthzManagerExternalStateMock() {};
+ // no-op for the mock
virtual Status insertPrivilegeDocument(const std::string& dbname,
- const BSONObj& userObj) const {
- return Status::OK();
- }
+ const BSONObj& userObj) const;
+ // no-op for the mock
virtual Status updatePrivilegeDocument(const UserName& user,
- const BSONObj& updateObj) const {
- return Status::OK();
- }
+ const BSONObj& updateObj) const;
+
+ // Non-const version that puts document into a vector that can be accessed later
+ Status insertPrivilegeDocument(const std::string& dbname, const BSONObj& userObj);
+
+ void clearPrivilegeDocuments();
virtual bool _findUser(const std::string& usersNamespace,
const BSONObj& query,
- BSONObj* result) const {
- return false;
- }
+ BSONObj* result) const;
+
+ private:
+ unordered_map<std::string, BSONObj> _userDocuments; // dbname to user document
};
} // namespace mongo