Merge branch '2090-sms.validations' of verdnatura/salix into dev
gitea/salix/dev There was a failure building this commit Details

This commit is contained in:
Joan Sanchez 2020-02-10 12:33:37 +00:00 committed by Gitea
commit 2720f8a100
8 changed files with 84 additions and 12 deletions

View File

@ -8,7 +8,9 @@
<vn-textfield
vn-one
label="Destination"
ng-model="$ctrl.sms.destination">
ng-model="$ctrl.sms.destination"
required="true"
rule>
</vn-textfield>
</vn-horizontal>
<vn-horizontal >
@ -18,6 +20,7 @@
ng-model="$ctrl.sms.message"
rows="5"
maxlength="160"
required="true"
rule>
</vn-textarea>
</vn-horizontal>

View File

@ -28,12 +28,23 @@ class Controller extends Component {
onResponse(response) {
if (response === 'accept') {
this.$http.post(`Clients/${this.$params.id}/sendSms`, this.sms).then(res => {
this.vnApp.showMessage(this.$translate.instant('SMS sent!'));
try {
if (!this.sms.destination)
throw new Error(`The destination can't be empty`);
if (!this.sms.message)
throw new Error(`The message can't be empty`);
if (res.data) this.emit('send', {response: res.data});
});
this.$http.post(`Clients/${this.$params.id}/sendSms`, this.sms).then(res => {
this.vnApp.showMessage(this.$translate.instant('SMS sent!'));
if (res.data) this.emit('send', {response: res.data});
});
} catch (e) {
this.vnApp.showError(this.$translate.instant(e.message));
return false;
}
}
return true;
}
}

View File

@ -30,6 +30,26 @@ describe('Client', () => {
expect(controller.vnApp.showMessage).toHaveBeenCalledWith('SMS sent!');
});
it('should call onResponse without the destination and show an error snackbar', () => {
controller.sms = {destinationFk: 101, message: 'My SMS'};
spyOn(controller.vnApp, 'showError');
controller.onResponse('accept');
expect(controller.vnApp.showError).toHaveBeenCalledWith(`The destination can't be empty`);
});
it('should call onResponse without the message and show an error snackbar', () => {
controller.sms = {destinationFk: 101, destination: 222222222};
spyOn(controller.vnApp, 'showError');
controller.onResponse('accept');
expect(controller.vnApp.showError).toHaveBeenCalledWith(`The message can't be empty`);
});
});
describe('charactersRemaining()', () => {

View File

@ -2,4 +2,6 @@ Send SMS: Enviar SMS
Destination: Destinatario
Message: Mensaje
SMS sent!: ¡SMS enviado!
Characters remaining: Carácteres restantes
Characters remaining: Carácteres restantes
The destination can't be empty: El destinatario no puede estar vacio
The message can't be empty: El mensaje no puede estar vacio

View File

@ -8,7 +8,9 @@
<vn-textfield
vn-one
label="Destination"
ng-model="$ctrl.sms.destination">
ng-model="$ctrl.sms.destination"
required="true"
rule>
</vn-textfield>
</vn-horizontal>
<vn-horizontal >
@ -18,6 +20,7 @@
ng-model="$ctrl.sms.message"
rows="5"
maxlength="160"
required="true"
rule>
</vn-textarea>
</vn-horizontal>

View File

@ -28,12 +28,23 @@ class Controller extends Component {
onResponse(response) {
if (response === 'accept') {
this.$http.post(`Tickets/${this.$params.id}/sendSms`, this.sms).then(res => {
this.vnApp.showMessage(this.$translate.instant('SMS sent!'));
try {
if (!this.sms.destination)
throw new Error(`The destination can't be empty`);
if (!this.sms.message)
throw new Error(`The message can't be empty`);
if (res.data) this.emit('send', {response: res.data});
});
this.$http.post(`Tickets/${this.$params.id}/sendSms`, this.sms).then(res => {
this.vnApp.showMessage(this.$translate.instant('SMS sent!'));
if (res.data) this.emit('send', {response: res.data});
});
} catch (e) {
this.vnApp.showError(this.$translate.instant(e.message));
return false;
}
}
return true;
}
}

View File

@ -29,6 +29,26 @@ describe('Ticket', () => {
expect(controller.vnApp.showMessage).toHaveBeenCalledWith('SMS sent!');
});
it('should call onResponse without the destination and show an error snackbar', () => {
controller.sms = {destinationFk: 101, message: 'My SMS'};
spyOn(controller.vnApp, 'showError');
controller.onResponse('accept');
expect(controller.vnApp.showError).toHaveBeenCalledWith(`The destination can't be empty`);
});
it('should call onResponse without the message and show an error snackbar', () => {
controller.sms = {destinationFk: 101, destination: 222222222};
spyOn(controller.vnApp, 'showError');
controller.onResponse('accept');
expect(controller.vnApp.showError).toHaveBeenCalledWith(`The message can't be empty`);
});
});
describe('charactersRemaining()', () => {

View File

@ -2,4 +2,6 @@ Send SMS: Enviar SMS
Destination: Destinatario
Message: Mensaje
SMS sent!: ¡SMS enviado!
Characters remaining: Carácteres restantes
Characters remaining: Carácteres restantes
The destination can't be empty: El destinatario no puede estar vacio
The message can't be empty: El mensaje no puede estar vacio