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

typeorm / typeorm / 15219332477

23 May 2025 09:13PM UTC coverage: 17.216% (-59.1%) from 76.346%
15219332477

Pull #11332

github

naorpeled
cr comments - move if block
Pull Request #11332: feat: add new undefined and null behavior flags

1603 of 12759 branches covered (12.56%)

Branch coverage included in aggregate %.

0 of 31 new or added lines in 3 files covered. (0.0%)

14132 existing lines in 166 files now uncovered.

4731 of 24033 relevant lines covered (19.69%)

60.22 hits per line

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

88.24
/src/decorator/tree/TreeParent.ts
1
import { getMetadataArgsStorage } from "../../globals"
1✔
2
import { RelationMetadataArgs } from "../../metadata-args/RelationMetadataArgs"
3
import { OnDeleteType } from "../../metadata/types/OnDeleteType"
4
import { RelationOptions } from "../options/RelationOptions"
5

6
/**
7
 * Marks a entity property as a parent of the tree.
8
 * "Tree parent" indicates who owns (is a parent) of this entity in tree structure.
9
 */
10
export function TreeParent(options?: {
1✔
11
    onDelete?: OnDeleteType
12
}): PropertyDecorator {
13
    return function (object: Object, propertyName: string) {
36✔
14
        if (!options) options = {} as RelationOptions
36✔
15

16
        // now try to determine it its lazy relation
17
        const reflectedType =
18
            Reflect && (Reflect as any).getMetadata
36!
19
                ? Reflect.getMetadata("design:type", object, propertyName)
20
                : undefined
21
        const isLazy =
22
            (reflectedType &&
36✔
23
                typeof reflectedType.name === "string" &&
24
                reflectedType.name.toLowerCase() === "promise") ||
25
            false
26

27
        getMetadataArgsStorage().relations.push({
36✔
28
            isTreeParent: true,
29
            target: object.constructor,
30
            propertyName: propertyName,
31
            isLazy: isLazy,
32
            relationType: "many-to-one",
UNCOV
33
            type: () => object.constructor,
×
34
            options: options,
35
        } as RelationMetadataArgs)
36
    }
37
}
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

© 2025 Coveralls, Inc