diff options
author | David Bradford <david.bradford@mongodb.com> | 2018-04-27 09:24:01 -0400 |
---|---|---|
committer | David Bradford <david.bradford@mongodb.com> | 2018-04-27 09:24:01 -0400 |
commit | c159a533c4625ee2709ceba07f0f45e012647a80 (patch) | |
tree | 53b2acbc52e0c084041e1c976b4db9498fede1c4 /jstests/core/autocomplete.js | |
parent | 5891912b5622eed300b11b05cd3269be580e086c (diff) | |
download | mongo-c159a533c4625ee2709ceba07f0f45e012647a80.tar.gz |
SERVER-34536: Fix shell autocompletion
Diffstat (limited to 'jstests/core/autocomplete.js')
-rw-r--r-- | jstests/core/autocomplete.js | 30 |
1 files changed, 21 insertions, 9 deletions
diff --git a/jstests/core/autocomplete.js b/jstests/core/autocomplete.js index 6eb6e21a7a3..6511292a8d3 100644 --- a/jstests/core/autocomplete.js +++ b/jstests/core/autocomplete.js @@ -10,33 +10,45 @@ return __autocomplete__; } - // Create a collection + // Create a collection. db.auto_complete_coll.insert({}); - // Validate DB auto completion + // Validate DB auto completion. const db_stuff = testAutoComplete('db.'); - // Verify we enumerate built-in methods + // Verify we enumerate built-in methods. assert.contains('db.prototype', db_stuff); assert.contains('db.hasOwnProperty', db_stuff); assert.contains('db.toString(', db_stuff); - // Verify we have some methods we added + // Verify we have some methods we added. assert.contains('db.adminCommand(', db_stuff); assert.contains('db.runCommand(', db_stuff); - // Verify we enumerate collections + // Verify we enumerate collections. assert.contains('db.auto_complete_coll', db_stuff); - // Validate Collection autocompletion + // Validate Collection autocompletion. const coll_stuff = testAutoComplete('db.auto_complete_coll.'); - // Verify we enumerate built-in methods + // Verify we enumerate built-in methods. assert.contains('db.auto_complete_coll.prototype', coll_stuff); assert.contains('db.auto_complete_coll.hasOwnProperty', coll_stuff); assert.contains('db.auto_complete_coll.toString(', coll_stuff); - // Verify we have some methods we added + // Verify we have some methods we added. assert.contains('db.auto_complete_coll.aggregate(', coll_stuff); assert.contains('db.auto_complete_coll.runCommand(', coll_stuff); -})();
\ No newline at end of file + + // Validate autocompletion when prefix is specified. + const empty_stuff = testAutoComplete(''); + + assert.contains('Array(', empty_stuff); + assert.contains('print(', empty_stuff); + assert.contains('ErrorCodes', empty_stuff); + + // Validate autocompletion returns ErrorCodes when ErrorCodes is specified. + const error_codes_autocomplete = testAutoComplete('ErrorCodes.'); + + assert.contains('ErrorCodes.BadValue', error_codes_autocomplete); +})(); |