Coverage for gws-app / gws / ext / __init__.py: 98%

124 statements  

« prev     ^ index     » next       coverage.py v7.13.4, created at 2026-03-03 10:12 +0100

1"""Dummy decorators to support extension typing.""" 

2 

3 

4class _classTag: 

5 extName = '' 

6 

7 def __init__(self, typ): 

8 pass 

9 

10 def __call__(self, target): 

11 return target 

12 

13 

14class _methodTag: 

15 def __init__(self, typ): 

16 pass 

17 

18 def __call__(self, target): 

19 return target 

20 

21 

22def name_for(obj: str | type) -> str | None: 

23 if isinstance(obj, str) and obj.startswith('gws.ext.'): 

24 return obj 

25 if isinstance(obj, type) and issubclass(obj, _classTag): 

26 return obj.extName 

27 

28 

29# fmt: off 

30 

31## 

32 

33 

34TYPES = [ 

35 "action", 

36 "application", 

37 "authMethod", 

38 "authMultiFactorAdapter", 

39 "authProvider", 

40 "authSessionManager", 

41 "cli", 

42 "databaseProvider", 

43 "finder", 

44 "helper", 

45 "layer", 

46 "legend", 

47 "map", 

48 "model", 

49 "modelField", 

50 "modelValidator", 

51 "modelValue", 

52 "modelWidget", 

53 "owsProvider", 

54 "owsService", 

55 "printer", 

56 "project", 

57 "storageProvider", 

58 "template", 

59] 

60 

61 

62class command: 

63 class api(_methodTag): pass 

64 class cli(_methodTag): pass 

65 class get(_methodTag): pass 

66 class post(_methodTag): pass 

67 class raw(_methodTag): pass 

68 

69 

70class _new: 

71 def action(self, *args): pass 

72 def application(self, *args): pass 

73 def authMethod(self, *args): pass 

74 def authMultiFactorAdapter(self, *args): pass 

75 def authProvider(self, *args): pass 

76 def authSessionManager(self, *args): pass 

77 def cli(self, *args): pass 

78 def databaseProvider(self, *args): pass 

79 def finder(self, *args): pass 

80 def helper(self, *args): pass 

81 def layer(self, *args): pass 

82 def legend(self, *args): pass 

83 def map(self, *args): pass 

84 def model(self, *args): pass 

85 def modelField(self, *args): pass 

86 def modelValidator(self, *args): pass 

87 def modelValue(self, *args): pass 

88 def modelWidget(self, *args): pass 

89 def owsProvider(self, *args): pass 

90 def owsService(self, *args): pass 

91 def printer(self, *args): pass 

92 def project(self, *args): pass 

93 def storageProvider(self, *args): pass 

94 def template(self, *args): pass 

95 

96 

97new = _new() 

98 

99 

100class object: 

101 class action (_classTag): extName = 'gws.ext.object.action' 

102 class application (_classTag): extName = 'gws.ext.object.application' 

103 class authMethod (_classTag): extName = 'gws.ext.object.authMethod' 

104 class authMultiFactorAdapter (_classTag): extName = 'gws.ext.object.authMultiFactorAdapter' 

105 class authProvider (_classTag): extName = 'gws.ext.object.authProvider' 

106 class authSessionManager (_classTag): extName = 'gws.ext.object.authSessionManager' 

107 class cli (_classTag): extName = 'gws.ext.object.cli' 

108 class databaseProvider (_classTag): extName = 'gws.ext.object.databaseProvider' 

109 class finder (_classTag): extName = 'gws.ext.object.finder' 

110 class helper (_classTag): extName = 'gws.ext.object.helper' 

111 class layer (_classTag): extName = 'gws.ext.object.layer' 

112 class legend (_classTag): extName = 'gws.ext.object.legend' 

113 class map (_classTag): extName = 'gws.ext.object.map' 

114 class model (_classTag): extName = 'gws.ext.object.model' 

115 class modelField (_classTag): extName = 'gws.ext.object.modelField' 

116 class modelValidator (_classTag): extName = 'gws.ext.object.modelValidator' 

117 class modelValue (_classTag): extName = 'gws.ext.object.modelValue' 

118 class modelWidget (_classTag): extName = 'gws.ext.object.modelWidget' 

119 class owsProvider (_classTag): extName = 'gws.ext.object.owsProvider' 

120 class owsService (_classTag): extName = 'gws.ext.object.owsService' 

121 class printer (_classTag): extName = 'gws.ext.object.printer' 

122 class project (_classTag): extName = 'gws.ext.object.project' 

123 class storageProvider (_classTag): extName = 'gws.ext.object.storageProvider' 

124 class template (_classTag): extName = 'gws.ext.object.template' 

125 

126 

127class config: 

128 class action (_classTag): extName = 'gws.ext.config.action' 

129 class application (_classTag): extName = 'gws.ext.config.application' 

130 class authMethod (_classTag): extName = 'gws.ext.config.authMethod' 

131 class authMultiFactorAdapter (_classTag): extName = 'gws.ext.config.authMultiFactorAdapter' 

132 class authProvider (_classTag): extName = 'gws.ext.config.authProvider' 

133 class authSessionManager (_classTag): extName = 'gws.ext.config.authSessionManager' 

134 class cli (_classTag): extName = 'gws.ext.config.cli' 

135 class databaseProvider (_classTag): extName = 'gws.ext.config.databaseProvider' 

136 class finder (_classTag): extName = 'gws.ext.config.finder' 

137 class helper (_classTag): extName = 'gws.ext.config.helper' 

138 class layer (_classTag): extName = 'gws.ext.config.layer' 

139 class legend (_classTag): extName = 'gws.ext.config.legend' 

140 class map (_classTag): extName = 'gws.ext.config.map' 

141 class model (_classTag): extName = 'gws.ext.config.model' 

142 class modelField (_classTag): extName = 'gws.ext.config.modelField' 

143 class modelValidator (_classTag): extName = 'gws.ext.config.modelValidator' 

144 class modelValue (_classTag): extName = 'gws.ext.config.modelValue' 

145 class modelWidget (_classTag): extName = 'gws.ext.config.modelWidget' 

146 class owsProvider (_classTag): extName = 'gws.ext.config.owsProvider' 

147 class owsService (_classTag): extName = 'gws.ext.config.owsService' 

148 class printer (_classTag): extName = 'gws.ext.config.printer' 

149 class project (_classTag): extName = 'gws.ext.config.project' 

150 class storageProvider (_classTag): extName = 'gws.ext.config.storageProvider' 

151 class template (_classTag): extName = 'gws.ext.config.template' 

152 

153 

154class props: 

155 class action (_classTag): extName = 'gws.ext.props.action' 

156 class application (_classTag): extName = 'gws.ext.props.application' 

157 class authMethod (_classTag): extName = 'gws.ext.props.authMethod' 

158 class authMultiFactorAdapter (_classTag): extName = 'gws.ext.props.authMultiFactorAdapter' 

159 class authProvider (_classTag): extName = 'gws.ext.props.authProvider' 

160 class authSessionManager (_classTag): extName = 'gws.ext.props.authSessionManager' 

161 class cli (_classTag): extName = 'gws.ext.props.cli' 

162 class databaseProvider (_classTag): extName = 'gws.ext.props.databaseProvider' 

163 class finder (_classTag): extName = 'gws.ext.props.finder' 

164 class helper (_classTag): extName = 'gws.ext.props.helper' 

165 class layer (_classTag): extName = 'gws.ext.props.layer' 

166 class legend (_classTag): extName = 'gws.ext.props.legend' 

167 class map (_classTag): extName = 'gws.ext.props.map' 

168 class model (_classTag): extName = 'gws.ext.props.model' 

169 class modelField (_classTag): extName = 'gws.ext.props.modelField' 

170 class modelValidator (_classTag): extName = 'gws.ext.props.modelValidator' 

171 class modelValue (_classTag): extName = 'gws.ext.props.modelValue' 

172 class modelWidget (_classTag): extName = 'gws.ext.props.modelWidget' 

173 class owsProvider (_classTag): extName = 'gws.ext.props.owsProvider' 

174 class owsService (_classTag): extName = 'gws.ext.props.owsService' 

175 class printer (_classTag): extName = 'gws.ext.props.printer' 

176 class project (_classTag): extName = 'gws.ext.props.project' 

177 class storageProvider (_classTag): extName = 'gws.ext.props.storageProvider' 

178 class template (_classTag): extName = 'gws.ext.props.template'