• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

GrottoCenter / grottocenter-api / 10996310862

23 Sep 2024 02:22PM UTC coverage: 46.158% (-2.8%) from 48.952%
10996310862

push

github

vmarseguerra
feat(entities): adds delete / restore for document

740 of 2203 branches covered (33.59%)

Branch coverage included in aggregate %.

24 of 153 new or added lines in 17 files covered. (15.69%)

484 existing lines in 49 files now uncovered.

2462 of 4734 relevant lines covered (52.01%)

4.5 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

64.71
/api/services/ParametersValidatorService.js
1
function errorMsgOneOfEntityExist(entitiesType) {
2
  return {
×
3
    message: `You must provide one existing entity id. The entity can be: ${entitiesType
4
      .map((e) => `'${e}'`)
×
5
      .join(',')} `,
6
  };
7
}
8
async function checkOneOfEntityExist(req, res, possibleEntities) {
9
  const ENTITIES_MODEL = {
3✔
10
    cave: TCave,
11
    entrance: TEntrance,
12
    document: TDocument,
13
    massif: TMassif,
14
    point: TPoint,
15
    grotto: TGrotto,
16
  };
17

18
  const possibleEntitesMixed = possibleEntities.map((e) => [e, req.param(e)]);
3✔
19
  const entity = possibleEntitesMixed.find(([, v]) => v !== undefined);
3✔
20
  if (!entity) {
3!
UNCOV
21
    res.badRequest(errorMsgOneOfEntityExist(possibleEntities));
×
22
    return false;
×
23
  }
24

25
  const [entityType, entityId] = entity;
3✔
26
  if (!ENTITIES_MODEL[entityType]) {
3!
UNCOV
27
    sails.log.error(
×
28
      'ParametersValidatorService checkOneOfEntityExist: Missing entity model mapping',
29
      entityType,
30
      possibleEntitesMixed
31
    );
UNCOV
32
    res.badRequest(errorMsgOneOfEntityExist(possibleEntities));
×
33
    return false;
×
34
  }
35

36
  const row = await ENTITIES_MODEL[entityType].findOne({
3✔
37
    id: entityId,
38
    isDeleted: false,
39
  });
40
  if (!row) {
3!
UNCOV
41
    res.badRequest(errorMsgOneOfEntityExist(possibleEntities));
×
42
    return false;
×
43
  }
44

45
  return {
3✔
46
    type: entityType,
47
    id: entityId,
48
    value: row,
49
  };
50
}
51

52
function errorMsgCheckAllExist(parametersName) {
53
  return {
3✔
54
    message: `The following parameters are mandatory: ${parametersName
55
      .map((e) => `'${e}'`)
8✔
56
      .join(', ')} `,
57
  };
58
}
59
function checkAllExist(req, res, params) {
60
  const values = params.map((e) => req.param(e));
16✔
61
  if (values.some((e) => !e)) {
14✔
62
    res.badRequest(errorMsgCheckAllExist(params));
3✔
63
    return false;
3✔
64
  }
65
  return values;
3✔
66
}
67

68
module.exports = {
1✔
69
  checkOneOfEntityExist,
70
  errorMsgOneOfEntityExist,
71
  checkAllExist,
72
  errorMsgCheckAllExist,
73
};
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc