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

snatalenko / node-cqrs / 22268237579

22 Feb 2026 01:41AM UTC coverage: 86.867% (-7.5%) from 94.396%
22268237579

Pull #28

github

web-flow
Merge 2c467a1d5 into 828e39903
Pull Request #28: TypeScript and event dispatching pipeline refactoring

475 of 691 branches covered (68.74%)

882 of 973 new or added lines in 65 files covered. (90.65%)

49 existing lines in 13 files now uncovered.

1217 of 1401 relevant lines covered (86.87%)

21.53 hits per line

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

88.24
/src/utils/getMessageHandlerNames.ts
1
function getInheritedPropertyNames(prototype: object): string[] {
2
        const parentPrototype = prototype && Object.getPrototypeOf(prototype);
117✔
3
        if (!parentPrototype)
117✔
4
                return [];
39✔
5

6
        const propDescriptors = Object.getOwnPropertyDescriptors(parentPrototype);
78✔
7
        const propNames = Object.keys(propDescriptors);
78✔
8

9
        return [
78✔
10
                ...propNames,
11
                ...getInheritedPropertyNames(parentPrototype)
12
        ];
13
}
14

15
/**
16
 * Get message handler names from a command/event handler class.
17
 * Assumes all private method names start from underscore ("_").
18
 */
19
export function getMessageHandlerNames(observerInstanceOrClass: (object | Function)): string[] {
21✔
20
        if (!observerInstanceOrClass)
39!
UNCOV
21
                throw new TypeError('observerInstanceOrClass argument required');
×
22

23
        const prototype = typeof observerInstanceOrClass === 'function' ?
39!
24
                observerInstanceOrClass.prototype :
25
                Object.getPrototypeOf(observerInstanceOrClass);
26

27
        if (!prototype)
39!
UNCOV
28
                throw new TypeError('prototype cannot be resolved');
×
29

30
        const inheritedProperties = getInheritedPropertyNames(prototype);
39✔
31
        const propDescriptors = Object.getOwnPropertyDescriptors(prototype);
39✔
32
        const propNames = Object.keys(propDescriptors);
39✔
33

34
        return propNames.filter(key =>
39✔
35
                !key.startsWith('_') &&
86✔
36
                !inheritedProperties.includes(key) &&
37
                typeof propDescriptors[key].value === 'function');
38
}
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