zcommand: Strip the slash in the backend.

The slash in command is stripped in the backend,
rather than in the client to make the client code
cleaner.
This would make client code cleaner in the slash
commands which include parameters.
This commit is contained in:
Rhea Parekh 2018-06-21 00:16:33 +05:30 committed by showell
parent 9b5986d320
commit d066c11b47
3 changed files with 9 additions and 8 deletions

View File

@ -65,7 +65,7 @@ exports.process = function (message_content) {
var start_time = new Date();
exports.send({
command: 'ping',
command: content,
on_success: function () {
var end_time = new Date();
var diff = end_time - start_time;
@ -78,12 +78,12 @@ exports.process = function (message_content) {
}
if (content === '/day') {
update_setting('day');
update_setting(content);
return true;
}
if (content === '/night') {
update_setting('night');
update_setting(content);
return true;
}

View File

@ -5,7 +5,8 @@ from zerver.models import UserProfile
from zerver.lib.actions import do_set_user_display_setting
from zerver.lib.exceptions import JsonableError
def process_zcommands(command: str, user_profile: UserProfile) -> Dict[str, Any]:
def process_zcommands(content: str, user_profile: UserProfile) -> Dict[str, Any]:
command = content.replace('/', '')
if command == 'ping':
ret = dict() # type: Dict[str, Any]

View File

@ -9,14 +9,14 @@ class ZcommandTest(ZulipTestCase):
def test_invalid_zcommand(self) -> None:
self.login(self.example_email("hamlet"))
payload = dict(command="boil-ocean")
payload = dict(command="/boil-ocean")
result = self.client_post("/json/zcommand", payload)
self.assert_json_error(result, "No such command: boil-ocean")
def test_ping_zcommand(self) -> None:
self.login(self.example_email("hamlet"))
payload = dict(command="ping")
payload = dict(command="/ping")
result = self.client_post("/json/zcommand", payload)
self.assert_json_success(result)
@ -26,7 +26,7 @@ class ZcommandTest(ZulipTestCase):
user.night_mode = False
user.save()
payload = dict(command="night")
payload = dict(command="/night")
result = self.client_post("/json/zcommand", payload)
self.assert_json_success(result)
self.assertIn('Changed to night', result.json()['msg'])
@ -41,7 +41,7 @@ class ZcommandTest(ZulipTestCase):
user.night_mode = True
user.save()
payload = dict(command="day")
payload = dict(command="/day")
result = self.client_post("/json/zcommand", payload)
self.assert_json_success(result)
self.assertIn('Changed to day', result.json()['msg'])