View Javadoc
1   /*
2    * Copyright (c) 2002-2025 Gargoyle Software Inc.
3    *
4    * Licensed under the Apache License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    * https://www.apache.org/licenses/LICENSE-2.0
8    *
9    * Unless required by applicable law or agreed to in writing, software
10   * distributed under the License is distributed on an "AS IS" BASIS,
11   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12   * See the License for the specific language governing permissions and
13   * limitations under the License.
14   */
15  package org.htmlunit.general.huge;
16  
17  import java.util.Collection;
18  
19  import org.htmlunit.junit.annotation.Alerts;
20  import org.htmlunit.junit.annotation.HtmlUnitNYI;
21  import org.junit.jupiter.params.provider.Arguments;
22  
23  /**
24   * Tests two Host classes, if one prototype is parent of another.
25   *
26   * This class handles all host names which starts by character 'A'.
27   *
28   * @author Ahmed Ashour
29   * @author Ronald Brill
30   */
31  public class HostParentOfATest extends HostParentOf {
32  
33      /**
34       * Returns the parameterized data.
35       * @return the parameterized data
36       * @throws Exception if an error occurs
37       */
38      public static Collection<Arguments> data() throws Exception {
39          return HostParentOf.data(input -> {
40              final char ch = Character.toUpperCase(input.charAt(0));
41              return ch == 'A';
42          });
43      }
44  
45      @Alerts("true/false")
46      void _AbortController_AbortController() throws Exception {
47          test("AbortController", "AbortController");
48      }
49  
50      @Alerts("true/false")
51      void _AbortSignal_AbortSignal() throws Exception {
52          test("AbortSignal", "AbortSignal");
53      }
54  
55      @Alerts("true/false")
56      void _AbstractRange_AbstractRange() throws Exception {
57          test("AbstractRange", "AbstractRange");
58      }
59  
60      @Alerts("true/true")
61      void _AbstractRange_Range() throws Exception {
62          test("AbstractRange", "Range");
63      }
64  
65      @Alerts("false/false")
66      void _ActiveXObject_ActiveXObject() throws Exception {
67          test("ActiveXObject", "ActiveXObject");
68      }
69  
70      @Alerts("true/false")
71      void _AnalyserNode_AnalyserNode() throws Exception {
72          test("AnalyserNode", "AnalyserNode");
73      }
74  
75      @Alerts("false/false")
76      void _ANGLE_instanced_arrays_ANGLE_instanced_arrays() throws Exception {
77          test("ANGLE_instanced_arrays", "ANGLE_instanced_arrays");
78      }
79  
80      @Alerts("true/false")
81      void _Animation_Animation() throws Exception {
82          test("Animation", "Animation");
83      }
84  
85      @Alerts("true/false")
86      void _AnimationEvent_AnimationEvent() throws Exception {
87          test("AnimationEvent", "AnimationEvent");
88      }
89  
90      @Alerts("false/false")
91      void _ApplicationCache_ApplicationCache() throws Exception {
92          test("ApplicationCache", "ApplicationCache");
93      }
94  
95      @Alerts("false/false")
96      void _ApplicationCacheErrorEvent_ApplicationCacheErrorEvent() throws Exception {
97          test("ApplicationCacheErrorEvent", "ApplicationCacheErrorEvent");
98      }
99  
100     @Alerts("true/false")
101     void _ArrayBuffer_ArrayBuffer() throws Exception {
102         test("ArrayBuffer", "ArrayBuffer");
103     }
104 
105     @Alerts("false/false")
106     @HtmlUnitNYI(CHROME = "true/false",
107             EDGE = "true/false",
108             FF = "true/false",
109             FF_ESR = "true/false")
110     void _Atomics_Atomics() throws Exception {
111         test("Atomics", "Atomics");
112     }
113 
114     @Alerts("true/false")
115     void _Attr_Attr() throws Exception {
116         test("Attr", "Attr");
117     }
118 
119     @Alerts("true/false")
120     void _Audio_Audio() throws Exception {
121         test("Audio", "Audio");
122     }
123 
124     @Alerts("true/false")
125     @HtmlUnitNYI(CHROME = "false/false",
126             EDGE = "false/false",
127             FF = "false/false",
128             FF_ESR = "false/false")
129     void _Audio_HTMLAudioElement() throws Exception {
130         test("Audio", "HTMLAudioElement");
131     }
132 
133     @Alerts("true/false")
134     void _AudioBuffer_AudioBuffer() throws Exception {
135         test("AudioBuffer", "AudioBuffer");
136     }
137 
138     @Alerts("true/false")
139     void _AudioBufferSourceNode_AudioBufferSourceNode() throws Exception {
140         test("AudioBufferSourceNode", "AudioBufferSourceNode");
141     }
142 
143     @Alerts("true/false")
144     void _AudioContext_AudioContext() throws Exception {
145         test("AudioContext", "AudioContext");
146     }
147 
148     @Alerts("true/false")
149     void _AudioDestinationNode_AudioDestinationNode() throws Exception {
150         test("AudioDestinationNode", "AudioDestinationNode");
151     }
152 
153     @Alerts("true/false")
154     void _AudioListener_AudioListener() throws Exception {
155         test("AudioListener", "AudioListener");
156     }
157 
158     @Alerts("true/true")
159     void _AudioNode_AnalyserNode() throws Exception {
160         test("AudioNode", "AnalyserNode");
161     }
162 
163     @Alerts("true/false")
164     void _AudioNode_AudioBufferSourceNode() throws Exception {
165         test("AudioNode", "AudioBufferSourceNode");
166     }
167 
168     @Alerts("true/true")
169     void _AudioNode_AudioDestinationNode() throws Exception {
170         test("AudioNode", "AudioDestinationNode");
171     }
172 
173     @Alerts("true/false")
174     void _AudioNode_AudioNode() throws Exception {
175         test("AudioNode", "AudioNode");
176     }
177 
178     @Alerts("true/true")
179     void _AudioNode_AudioScheduledSourceNode() throws Exception {
180         test("AudioNode", "AudioScheduledSourceNode");
181     }
182 
183     @Alerts("true/true")
184     void _AudioNode_BiquadFilterNode() throws Exception {
185         test("AudioNode", "BiquadFilterNode");
186     }
187 
188     @Alerts("true/true")
189     void _AudioNode_ChannelMergerNode() throws Exception {
190         test("AudioNode", "ChannelMergerNode");
191     }
192 
193     @Alerts("true/true")
194     void _AudioNode_ChannelSplitterNode() throws Exception {
195         test("AudioNode", "ChannelSplitterNode");
196     }
197 
198     @Alerts("true/false")
199     void _AudioNode_ConstantSourceNode() throws Exception {
200         test("AudioNode", "ConstantSourceNode");
201     }
202 
203     @Alerts("true/true")
204     void _AudioNode_ConvolverNode() throws Exception {
205         test("AudioNode", "ConvolverNode");
206     }
207 
208     @Alerts("true/true")
209     void _AudioNode_DelayNode() throws Exception {
210         test("AudioNode", "DelayNode");
211     }
212 
213     @Alerts("true/true")
214     void _AudioNode_DynamicsCompressorNode() throws Exception {
215         test("AudioNode", "DynamicsCompressorNode");
216     }
217 
218     @Alerts("true/true")
219     void _AudioNode_GainNode() throws Exception {
220         test("AudioNode", "GainNode");
221     }
222 
223     @Alerts("true/true")
224     void _AudioNode_IIRFilterNode() throws Exception {
225         test("AudioNode", "IIRFilterNode");
226     }
227 
228     @Alerts("true/true")
229     void _AudioNode_MediaElementAudioSourceNode() throws Exception {
230         test("AudioNode", "MediaElementAudioSourceNode");
231     }
232 
233     @Alerts("true/true")
234     void _AudioNode_MediaStreamAudioDestinationNode() throws Exception {
235         test("AudioNode", "MediaStreamAudioDestinationNode");
236     }
237 
238     @Alerts("true/true")
239     void _AudioNode_MediaStreamAudioSourceNode() throws Exception {
240         test("AudioNode", "MediaStreamAudioSourceNode");
241     }
242 
243     @Alerts("true/false")
244     void _AudioNode_OscillatorNode() throws Exception {
245         test("AudioNode", "OscillatorNode");
246     }
247 
248     @Alerts("true/true")
249     void _AudioNode_PannerNode() throws Exception {
250         test("AudioNode", "PannerNode");
251     }
252 
253     @Alerts("true/true")
254     void _AudioNode_ScriptProcessorNode() throws Exception {
255         test("AudioNode", "ScriptProcessorNode");
256     }
257 
258     @Alerts("true/true")
259     void _AudioNode_StereoPannerNode() throws Exception {
260         test("AudioNode", "StereoPannerNode");
261     }
262 
263     @Alerts("true/true")
264     void _AudioNode_WaveShaperNode() throws Exception {
265         test("AudioNode", "WaveShaperNode");
266     }
267 
268     @Alerts("true/false")
269     void _AudioParam_AudioParam() throws Exception {
270         test("AudioParam", "AudioParam");
271     }
272 
273     @Alerts("true/false")
274     void _AudioProcessingEvent_AudioProcessingEvent() throws Exception {
275         test("AudioProcessingEvent", "AudioProcessingEvent");
276     }
277 
278     @Alerts("true/true")
279     void _AudioScheduledSourceNode_AudioBufferSourceNode() throws Exception {
280         test("AudioScheduledSourceNode", "AudioBufferSourceNode");
281     }
282 
283     @Alerts("true/false")
284     void _AudioScheduledSourceNode_AudioScheduledSourceNode() throws Exception {
285         test("AudioScheduledSourceNode", "AudioScheduledSourceNode");
286     }
287 
288     @Alerts("true/true")
289     void _AudioScheduledSourceNode_ConstantSourceNode() throws Exception {
290         test("AudioScheduledSourceNode", "ConstantSourceNode");
291     }
292 
293     @Alerts("true/true")
294     void _AudioScheduledSourceNode_OscillatorNode() throws Exception {
295         test("AudioScheduledSourceNode", "OscillatorNode");
296     }
297 }