"Fossies" - the Fresh Open Source Software Archive 
Member "selenium-selenium-4.8.1/rb/spec/unit/selenium/webdriver/common/interactions/typing_interactions_spec.rb" (17 Feb 2023, 2028 Bytes) of package /linux/www/selenium-selenium-4.8.1.tar.gz:
As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) Ruby source code syntax highlighting (style:
standard) with prefixed line numbers and
code folding option.
Alternatively you can here
view or
download the uninterpreted source code file.
See also the last
Fossies "Diffs" side-by-side code changes report for "typing_interactions_spec.rb":
4.7.0_vs_4.8.0.
1 # frozen_string_literal: true
2
3 # Licensed to the Software Freedom Conservancy (SFC) under one
4 # or more contributor license agreements. See the NOTICE file
5 # distributed with this work for additional information
6 # regarding copyright ownership. The SFC licenses this file
7 # to you under the Apache License, Version 2.0 (the
8 # "License"); you may not use this file except in compliance
9 # with the License. You may obtain a copy of the License at
10 #
11 # http://www.apache.org/licenses/LICENSE-2.0
12 #
13 # Unless required by applicable law or agreed to in writing,
14 # software distributed under the License is distributed on an
15 # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 # KIND, either express or implied. See the License for the
17 # specific language governing permissions and limitations
18 # under the License.
19
20 require File.expand_path('../../spec_helper', __dir__)
21
22 module Selenium
23 module WebDriver
24 module Interactions
25 describe TypingInteraction do
26 let(:source) { Interactions.key('keyboard') }
27 let(:type) { :down }
28 let(:typing) { described_class.new(source, type, key) }
29 let(:key) { 'a' }
30
31 describe '#initialize' do
32 it 'raises a TypeError if the passed source is not a KeyInput' do
33 mouse = Interactions.pointer(:mouse)
34 expect { described_class.new(mouse, type, key) }.to raise_error(TypeError)
35 end
36
37 it 'raises a TypeError if the passed type is not a key in KeyInput::SUBTYPES' do
38 expect { described_class.new(source, :none, key) }.to raise_error(TypeError)
39 end
40 end
41
42 describe '#type' do
43 it 'stores type as KeyInput::SUBTYPES' do
44 expect(typing.type).to eq KeyInput::SUBTYPES[type]
45 end
46 end
47
48 describe '#encode' do
49 it 'returns a Hash with type and value' do
50 expect(typing.encode).to eq(type: typing.type, value: key)
51 end
52 end
53 end
54 end # Interactions
55 end # WebDriver
56 end # Selenium