Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 39 additions & 0 deletions Keyboard.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
D,R,R,#,D,D,L,#,S,U,U,U,R,#,D,D,R,R,R,#,L,L,L,#,D,R,R,#,U,U,U,L,#
#,R,#,R,#,R,#,R,#,R,#,S,D,L,L,L,L,L,#,R,#,R,#,R,#,R,#,R,#,S,D,L,L,L,L,L,#,R,#,R,#,R,#,R,#,R,#,S,D,L,L,L,L,L,#,R,#,R,#,R,#,R,#,R,#,S,D,L,L,L,L,L,#,R,#,R,#,R,#,R,#,R,#,S,D,L,L,L,L,L,#,R,#,R,#,R,#,R,#,R,#
#,#
#,R,#
#,R,R,#
#,R,R,R,#
#,R,R,R,R,#
#,R,R,R,R,R,#
#,D,#
#,D,R,#
#,D,R,R,#
#,D,R,R,R,#
#,D,R,R,R,R,#
#,D,R,R,R,R,R,#
#,D,D,#
#,D,D,R,#
#,D,D,R,R,#
#,D,D,R,R,R,#
#,D,D,R,R,R,R,#
#,D,D,R,R,R,R,R,#
#,D,D,D,#
#,D,D,D,R,#
#,D,D,D,R,R,#
#,D,D,D,R,R,R,#
#,D,D,D,R,R,R,R,#
#,D,D,D,R,R,R,R,R,#
#,D,D,D,D,#
#,D,D,D,D,R,#
#,D,D,D,D,R,R,#
#,D,D,D,D,R,R,R,#
#,D,D,D,D,R,R,R,R,#
#,D,D,D,D,R,R,R,R,R,#
#,D,D,D,D,D,#
#,D,D,D,D,D,R,#
#,D,D,D,D,D,R,R,#
#,D,D,D,D,D,R,R,R,#
#,D,D,D,D,D,R,R,R,R,#
#,D,D,D,D,D,R,R,R,R,R,#

14 changes: 14 additions & 0 deletions ReasdMeFirst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
Solution was written using the TestComplete IDE and JavaScript code.
The JavaScript can be found in ..\cae_OnScreenKeyboard\TestProject1\TestProject1\Script

I used this approach because this has been the dev environment I have used for the last 7+ years to develop automated test frameworks.

The solution I came up with is reasonably straightforward but unfortunately cannot be run in a browser that supports JavaScript because I am using I/O functions inherent in the TestComplete scripting engine.

If you wish to run the solution, a TestComplete trial can be downloaded for free.
To open the project, navigate to cae_OnScreenKeyboard\TestProject1 and select the TestProject1.pjs file
Then navigate to the script folder to run it.

Thank you,

Charles
39 changes: 39 additions & 0 deletions SearchTerm.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
IT Crowd
abcdef ghijkl mnopqr stuvwx yz1234 567890
AA
AB
AC
AD
AE
AF
AG
AH
AI
AJ
AK
AL
AM
AN
AO
AP
AQ
AR
AS
AT
AU
AV
AW
AX
AY
AZ
A1
A2
A3
A4
A5
A6
A7
A8
A9
A0

9 changes: 9 additions & 0 deletions TestProject1/CBT.data
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Root Version="1">
<Providers>
<A609CA20xCE0Bx4080x93FCx121361DAEEF9 version="1">
<groups />
<tunnels />
</A609CA20xCE0Bx4080x93FCx121361DAEEF9>
</Providers>
</Root>
27 changes: 27 additions & 0 deletions TestProject1/Log/TestProject1.pjs.EnvMngr.tcLogs
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE Nodes [

<!ENTITY % NameValue "CDATA">
<!ENTITY % PropType "(I|S|D|L|H|B)">
<!ENTITY % VersionValue "CDATA">

<!ELEMENT Prp (#PCDATA)>
<!ELEMENT Node (Node|Prp)*>
<!ELEMENT Nodes (Node)+>

<!ATTLIST Nodes version CDATA "1">

<!ATTLIST Node name CDATA #REQUIRED>

<!ATTLIST Prp name CDATA #REQUIRED>
<!ATTLIST Prp type CDATA #REQUIRED>
<!ATTLIST Prp value CDATA #REQUIRED>
]>
<Nodes version="1">
<Node name="root">
<Node name="folders"/>
<Node name="logs"/>
<Prp name="signature" type="S" value="{8B430378-DAB7-4DFD-950E-396FD32C9FC2}"/>
<Prp name="version" type="S" value="11.0"/>
</Node>
</Nodes>
27 changes: 27 additions & 0 deletions TestProject1/Log/TestProject1.pjs.tcLogs
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE Nodes [

<!ENTITY % NameValue "CDATA">
<!ENTITY % PropType "(I|S|D|L|H|B)">
<!ENTITY % VersionValue "CDATA">

<!ELEMENT Prp (#PCDATA)>
<!ELEMENT Node (Node|Prp)*>
<!ELEMENT Nodes (Node)+>

<!ATTLIST Nodes version CDATA "1">

<!ATTLIST Node name CDATA #REQUIRED>

<!ATTLIST Prp name CDATA #REQUIRED>
<!ATTLIST Prp type CDATA #REQUIRED>
<!ATTLIST Prp value CDATA #REQUIRED>
]>
<Nodes version="1">
<Node name="root">
<Node name="folders"/>
<Node name="logs"/>
<Prp name="signature" type="S" value="{6511DB44-2372-47B8-8349-ADA0DB4D9E14}"/>
<Prp name="version" type="S" value="11.0"/>
</Node>
</Nodes>
22 changes: 22 additions & 0 deletions TestProject1/TestProject1.pjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Root signature="{24B6FA0B-0143-461A-9758-AEB9E9A9428B}" version="12.0" key="{272F36EB-2209-441D-8159-BEC3EA3EB9B8}">
<children>
<child name="TestProject1" key="{9467BF20-FF75-4157-8586-0485C5845CE4}" type="Project" typeId="{362A8EE5-675E-43A9-869D-06ECE80B0CB4}" pluginName="">
<data path="TestProject1\TestProject1.mds" />
</child>
</children>
<folders />
<testItems key="{B3811F9E-139E-46D9-BA63-F1BBE1182111}">
<children>
<testItem key="{9467BF20-FF75-4157-8586-0485C5845CE4}" enabled="True" timeout="0" stopOnError="True" description="" />
</children>
</testItems>
<variables key="{E5A0C2EE-AA81-4787-A58C-10E8EFF52F1C}">
<data Version="3" />
</variables>
<analysis key="{EB1D9C47-4DFB-4626-B2CE-AE83AA8FB660}" />
<scc key="{C900492B-D218-429C-9AA0-264B7D78CA88}" name="Git Plugin">
<data />
</scc>
<extender key="{1A3FC97E-9A66-4716-B166-35D10B4146E0}" />
</Root>
40 changes: 40 additions & 0 deletions TestProject1/TestProject1.pjs.tcLS
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE Nodes [

<!ENTITY % NameValue "CDATA">
<!ENTITY % PropType "(I|S|D|L|H|B)">
<!ENTITY % VersionValue "CDATA">

<!ELEMENT Prp (#PCDATA)>
<!ELEMENT Node (Node|Prp)*>
<!ELEMENT Nodes (Node)+>

<!ATTLIST Nodes version CDATA "1">

<!ATTLIST Node name CDATA #REQUIRED>

<!ATTLIST Prp name CDATA #REQUIRED>
<!ATTLIST Prp type CDATA #REQUIRED>
<!ATTLIST Prp value CDATA #REQUIRED>
]>
<Nodes version="1">
<Node name="root">
<Node name="data">
<Node name="{24b6fa0b-0143-461a-9758-aeb9e9a9428b}">
<Prp name="default project" type="S" value="{9467BF20-FF75-4157-8586-0485C5845CE4}"/>
</Node>
<Node name="{9467bf20-ff75-4157-8586-0485c5845ce4}">
<Prp name="relpath" type="S" value="TestProject1\TestProject1.mds.tcLS"/>
</Node>
<Node name="envmngrlogs">
<Prp name="key" type="S" value="{45765261-AFD5-42FB-BD6E-62513C936102}"/>
</Node>
<Node name="logs">
<Prp name="key" type="S" value="{032E4377-39D4-45DE-9E3F-4D28E4CF2AFE}"/>
<Prp name="relpath" type="S" value="Log"/>
</Node>
<Node name="variables"/>
</Node>
<Prp name="signature" type="S" value="{71078212-FAEB-4856-A901-B237C89E6B5C}"/>
</Node>
</Nodes>
Loading