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

snatalenko / node-cqrs / 21966362039

12 Feb 2026 10:15PM UTC coverage: 85.328% (-9.1%) from 94.396%
21966362039

Pull #28

github

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

671 of 1008 branches covered (66.57%)

927 of 1051 new or added lines in 67 files covered. (88.2%)

49 existing lines in 13 files now uncovered.

1262 of 1479 relevant lines covered (85.33%)

33.76 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);
354✔
3
        if (!parentPrototype)
354✔
4
                return [];
108✔
5

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

9
        return [
246✔
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[] {
44✔
20
        if (!observerInstanceOrClass)
108!
UNCOV
21
                throw new TypeError('observerInstanceOrClass argument required');
×
22

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

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

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

34
        return propNames.filter(key =>
108✔
35
                !key.startsWith('_') &&
292✔
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