File tree Expand file tree Collapse file tree 3 files changed +25
-3
lines changed Expand file tree Collapse file tree 3 files changed +25
-3
lines changed Original file line number Diff line number Diff line change @@ -223,6 +223,20 @@ def write_concern
223
223
@write_concern ||= WriteConcern . get ( options [ :write ] )
224
224
end
225
225
226
+ # Get the names of all databases.
227
+ #
228
+ # @example Get the database names.
229
+ # client.database_names
230
+ #
231
+ # @return [ Array<String> ] The names of the databases.
232
+ #
233
+ # @since 2.0.5
234
+ def database_names
235
+ Database . new ( self , Database ::ADMIN , options ) . command (
236
+ listDatabases : 1
237
+ ) . first [ 'databases' ] . collect { |info | info [ 'name' ] }
238
+ end
239
+
226
240
private
227
241
228
242
def create_from_addresses ( addresses , opts = { } )
Original file line number Diff line number Diff line change 569
569
end
570
570
end
571
571
end
572
+
573
+ describe '#database_names' do
574
+
575
+ it 'returns a list of database names' do
576
+ expect ( root_authorized_client . database_names ) . to include ( 'admin' , 'local' )
577
+ end
578
+ end
572
579
end
Original file line number Diff line number Diff line change 77
77
Mongo ::Auth ::Roles ::USER_ADMIN_ANY_DATABASE ,
78
78
Mongo ::Auth ::Roles ::DATABASE_ADMIN_ANY_DATABASE ,
79
79
Mongo ::Auth ::Roles ::READ_WRITE_ANY_DATABASE ,
80
- Mongo ::Auth ::Roles ::HOST_MANAGER
80
+ Mongo ::Auth ::Roles ::HOST_MANAGER ,
81
+ Mongo ::Auth ::Roles ::CLUSTER_ADMIN
81
82
]
82
83
)
83
84
105
106
# @since 2.0.
106
107
TEST_READ_WRITE_USER = Mongo ::Auth ::User . new (
107
108
database : TEST_DB ,
108
- user : 'test-user' ,
109
- password : ' password' ,
109
+ user : TEST_USER . name ,
110
+ password : TEST_USER . password ,
110
111
roles : [ Mongo ::Auth ::Roles ::READ_WRITE , Mongo ::Auth ::Roles ::DATABASE_ADMIN ]
111
112
)
112
113
You can’t perform that action at this time.
0 commit comments