Coverage for dcim/graphql/gfk_mixins.py: 0%
71 statements
« prev ^ index » next coverage.py v7.15.2, created at 2026-10-10 18:35 +0000
« prev ^ index » next coverage.py v7.15.2, created at 2026-10-10 18:35 +0000
1from strawberry.types import Info
3from circuits.graphql.types import CircuitTerminationType, ProviderNetworkType
4from circuits.models import CircuitTermination, ProviderNetwork
5from dcim.graphql.types import (
6 ConsolePortTemplateType,
7 ConsolePortType,
8 ConsoleServerPortTemplateType,
9 ConsoleServerPortType,
10 FrontPortTemplateType,
11 FrontPortType,
12 InterfaceTemplateType,
13 InterfaceType,
14 PowerFeedType,
15 PowerOutletTemplateType,
16 PowerOutletType,
17 PowerPortTemplateType,
18 PowerPortType,
19 RearPortTemplateType,
20 RearPortType,
21)
22from dcim.models import (
23 ConsolePort,
24 ConsolePortTemplate,
25 ConsoleServerPort,
26 ConsoleServerPortTemplate,
27 FrontPort,
28 FrontPortTemplate,
29 Interface,
30 InterfaceTemplate,
31 PowerFeed,
32 PowerOutlet,
33 PowerOutletTemplate,
34 PowerPort,
35 PowerPortTemplate,
36 RearPort,
37 RearPortTemplate,
38)
41class InventoryItemTemplateComponentType:
42 class Meta:
43 types = (
44 ConsolePortTemplateType,
45 ConsoleServerPortTemplateType,
46 FrontPortTemplateType,
47 InterfaceTemplateType,
48 PowerOutletTemplateType,
49 PowerPortTemplateType,
50 RearPortTemplateType,
51 )
53 @classmethod
54 def resolve_type(cls, instance, info: Info):
55 if type(instance) is ConsolePortTemplate:
56 return ConsolePortTemplateType
57 if type(instance) is ConsoleServerPortTemplate:
58 return ConsoleServerPortTemplateType
59 if type(instance) is FrontPortTemplate:
60 return FrontPortTemplateType
61 if type(instance) is InterfaceTemplate:
62 return InterfaceTemplateType
63 if type(instance) is PowerOutletTemplate:
64 return PowerOutletTemplateType
65 if type(instance) is PowerPortTemplate:
66 return PowerPortTemplateType
67 if type(instance) is RearPortTemplate:
68 return RearPortTemplateType
69 return None
72class InventoryItemComponentType:
73 class Meta:
74 types = (
75 ConsolePortType,
76 ConsoleServerPortType,
77 FrontPortType,
78 InterfaceType,
79 PowerOutletType,
80 PowerPortType,
81 RearPortType,
82 )
84 @classmethod
85 def resolve_type(cls, instance, info: Info):
86 if type(instance) is ConsolePort:
87 return ConsolePortType
88 if type(instance) is ConsoleServerPort:
89 return ConsoleServerPortType
90 if type(instance) is FrontPort:
91 return FrontPortType
92 if type(instance) is Interface:
93 return InterfaceType
94 if type(instance) is PowerOutlet:
95 return PowerOutletType
96 if type(instance) is PowerPort:
97 return PowerPortType
98 if type(instance) is RearPort:
99 return RearPortType
100 return None
103class ConnectedEndpointType:
104 class Meta:
105 types = (
106 CircuitTerminationType,
107 ConsolePortType,
108 ConsoleServerPortType,
109 FrontPortType,
110 InterfaceType,
111 PowerFeedType,
112 PowerOutletType,
113 PowerPortType,
114 ProviderNetworkType,
115 RearPortType,
116 )
118 @classmethod
119 def resolve_type(cls, instance, info: Info):
120 if type(instance) is CircuitTermination:
121 return CircuitTerminationType
122 if type(instance) is ConsolePort:
123 return ConsolePortType
124 if type(instance) is ConsoleServerPort:
125 return ConsoleServerPortType
126 if type(instance) is FrontPort:
127 return FrontPortType
128 if type(instance) is Interface:
129 return InterfaceType
130 if type(instance) is PowerFeed:
131 return PowerFeedType
132 if type(instance) is PowerOutlet:
133 return PowerOutletType
134 if type(instance) is PowerPort:
135 return PowerPortType
136 if type(instance) is ProviderNetwork:
137 return ProviderNetworkType
138 if type(instance) is RearPort:
139 return RearPortType
140 return None