├── Directory.Build.targets
├── XAMLTest.Tests
├── AssemblyInfo.cs
├── Simulators
│ ├── Image.cs
│ └── App.cs
├── MouseInputTests.cs
├── TestControls
│ ├── TestWindow.xaml.cs
│ ├── TestWindow.xaml
│ ├── MouseClickPositions.xaml.cs
│ ├── TextBlock_AttachedProperty.xaml
│ ├── MouseClickPositions.xaml
│ ├── TextBlock_AttachedProperty.xaml.cs
│ ├── TextBox_ValidationError.xaml.cs
│ └── TextBox_ValidationError.xaml
├── Generated
│ ├── TooltipGeneratedExtensionsTests.cs
│ ├── ContextMenuGeneratedExtensionsTests.cs
│ └── WindowGeneratedExtensionsTests.cs
├── WaitTests.cs
├── ColorMixinsTests.cs
├── GeneratorTests.cs
├── XAMLTest.Tests.csproj
├── GetResourceTests.cs
├── SerializerTests.cs
├── GetCoordinatesTests.cs
├── GetEffectiveBackgroundTests.cs
├── HighlightTests.cs
├── TestRecorderTests.cs
└── PositionTests.cs
├── XAMLTest
├── NativeMethods.txt
├── Input
│ ├── IInput.cs
│ ├── DelayInput.cs
│ ├── TextInput.cs
│ ├── ModifiersInput.cs
│ ├── KeysInput.cs
│ ├── MouseInput.cs
│ └── KeyboardInput.cs
├── IResource.cs
├── IProperty.cs
├── Internal
│ ├── IElementId.cs
│ ├── Version.cs
│ ├── Resource.cs
│ ├── BitmapImage.cs
│ ├── AppContext.cs
│ ├── Window.cs
│ ├── Validation.cs
│ ├── Service.cs
│ ├── BaseValue.cs
│ ├── Property.cs
│ ├── DependencyObjectTracker.cs
│ ├── SelectionAdorner.cs
│ ├── Serializer.cs
│ ├── ProtocolClientMixins.cs
│ ├── EventRegistration.cs
│ └── Validation{T}.cs
├── IWindow.cs
├── IVisualElementConverter.cs
├── IVersion.cs
├── IEventRegistration.cs
├── IImage.cs
├── IEventInvocation.cs
├── IQuery.cs
├── IValue.cs
├── RectMixins.cs
├── Position.cs
├── XmlNamespaceMixins.cs
├── ISerializer.cs
├── VTMixins.cs
├── XAMLTestException.cs
├── WindowMixins.cs
├── Server.cs
├── Query
│ └── StringBuilderQuery.cs
├── Retry.cs
├── Build
│ └── XAMLTest.targets
├── KeyboardInput.cs
├── IValidation.cs
├── Properties
│ └── launchSettings.json
├── XamlSegment.cs
├── VisualElementMixins.Highlight.cs
├── Transport
│ ├── XamlSegmentSerializer.cs
│ ├── JsonSerializer.cs
│ ├── DefaultSerializer.cs
│ ├── CharSerializer.cs
│ ├── SecureStringSerializer.cs
│ ├── DependencyPropertyConverter.cs
│ ├── DpiScaleSerializer.cs
│ └── GridSerializer.cs
├── VisualElementMixins.Query.cs
├── HighlightConfig.cs
├── XmlNamespace.cs
├── AppOptions.cs
├── Logger.cs
├── DependencyPropertyHelper.cs
├── QueryMixins.cs
├── Wait.cs
├── VisualElementMixins.Window.cs
├── ElementQuery.cs
├── Host
│ ├── VisualTreeService.Highlight.cs
│ ├── VisualTreeService.Events.cs
│ └── VisualTreeService.Invocation.cs
├── AppMixins.cs
├── Utility
│ └── AppDomainMixins.cs
├── ColorMixins.cs
├── XAMLTest.csproj
├── MouseInput.cs
├── IApp.cs
├── VisualElementMixins.cs
├── VisualStudioAttacher.cs
├── App.cs
├── VisualElementMixins.Input.cs
├── Event
│ └── EventRegistrar.cs
└── TestRecorder.cs
├── global.json
├── Images
├── Icon.ico
├── Icon.pdn
└── Icon.png
├── XAMLTest.TestApp
├── App.xaml.cs
├── MainWindow.xaml.cs
├── XAMLTest.TestApp.csproj
├── AssemblyInfo.cs
├── MainWindow.xaml
└── App.xaml
├── XAMLTest.Generator
├── IsExternalInit.cs
└── XAMLTest.Generator.csproj
├── XAMLTest.UnitTestGenerator
├── XAMLTest.UnitTestGenerator.csproj
└── UnitTestGenerator.cs
├── .github
├── dependabot.yml
└── workflows
│ └── dotnet-core.yml
├── LICENSE
├── NuGet.config
├── README.md
├── Directory.Packages.props
├── Directory.Build.props
├── .editorconfig
└── XAMLTest.sln
/Directory.Build.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/XAMLTest.Tests/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | [assembly: DoNotParallelize]
2 |
--------------------------------------------------------------------------------
/XAMLTest/NativeMethods.txt:
--------------------------------------------------------------------------------
1 | ShowWindow
2 | GetDoubleClickTime
--------------------------------------------------------------------------------
/global.json:
--------------------------------------------------------------------------------
1 | {
2 | "sdk": {
3 | "allowPrerelease": true
4 | }
5 | }
--------------------------------------------------------------------------------
/Images/Icon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Keboo/XAMLTest/HEAD/Images/Icon.ico
--------------------------------------------------------------------------------
/Images/Icon.pdn:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Keboo/XAMLTest/HEAD/Images/Icon.pdn
--------------------------------------------------------------------------------
/Images/Icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Keboo/XAMLTest/HEAD/Images/Icon.png
--------------------------------------------------------------------------------
/XAMLTest/Input/IInput.cs:
--------------------------------------------------------------------------------
1 | namespace XamlTest.Input;
2 |
3 | internal interface IInput
4 | { }
5 |
--------------------------------------------------------------------------------
/XAMLTest/Input/DelayInput.cs:
--------------------------------------------------------------------------------
1 | namespace XamlTest.Input;
2 |
3 | internal class DelayInput : IInput
4 | {
5 |
6 | }
7 |
--------------------------------------------------------------------------------
/XAMLTest/IResource.cs:
--------------------------------------------------------------------------------
1 | namespace XamlTest;
2 |
3 | public interface IResource : IValue
4 | {
5 | string Key { get; }
6 | }
7 |
--------------------------------------------------------------------------------
/XAMLTest/IProperty.cs:
--------------------------------------------------------------------------------
1 | namespace XamlTest;
2 |
3 | public interface IProperty : IValue
4 | {
5 | string PropertyType { get; }
6 | }
7 |
--------------------------------------------------------------------------------
/XAMLTest/Internal/IElementId.cs:
--------------------------------------------------------------------------------
1 | namespace XamlTest.Internal;
2 |
3 | internal interface IElementId
4 | {
5 | string Id { get; }
6 | }
7 |
--------------------------------------------------------------------------------
/XAMLTest/IWindow.cs:
--------------------------------------------------------------------------------
1 | namespace XamlTest;
2 |
3 | public interface IWindow : IVisualElement, IEquatable
4 | {
5 |
6 | }
7 |
--------------------------------------------------------------------------------
/XAMLTest/IVisualElementConverter.cs:
--------------------------------------------------------------------------------
1 | namespace XamlTest;
2 |
3 | public interface IVisualElementConverter
4 | {
5 | TVisualElement Convert();
6 | }
7 |
--------------------------------------------------------------------------------
/XAMLTest/IVersion.cs:
--------------------------------------------------------------------------------
1 | namespace XamlTest;
2 |
3 | public interface IVersion
4 | {
5 | public string AppVersion { get; }
6 | public string XamlTestVersion { get; }
7 | }
8 |
--------------------------------------------------------------------------------
/XAMLTest/IEventRegistration.cs:
--------------------------------------------------------------------------------
1 | namespace XamlTest;
2 |
3 | public interface IEventRegistration : IAsyncDisposable
4 | {
5 | Task> GetInvocations();
6 | }
7 |
--------------------------------------------------------------------------------
/XAMLTest/IImage.cs:
--------------------------------------------------------------------------------
1 | using System.IO;
2 | using System.Threading.Tasks;
3 |
4 | namespace XamlTest;
5 |
6 | public interface IImage
7 | {
8 | Task Save(Stream stream);
9 | }
10 |
--------------------------------------------------------------------------------
/XAMLTest/IEventInvocation.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace XamlTest;
4 |
5 | public interface IEventInvocation
6 | {
7 | IReadOnlyList