Skip to content

Commit

Permalink
ported Dragablz to .Net Core 3.0
Browse files Browse the repository at this point in the history
  • Loading branch information
Mrxx99 committed Nov 2, 2019
1 parent b7cf428 commit 7b68eb9
Show file tree
Hide file tree
Showing 25 changed files with 155 additions and 2,004 deletions.
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
# User-specific files
*.suo
*.user
*.userosscache
*.sln.docstates

# Build results
Expand All @@ -18,6 +19,9 @@ bld/
[Bb]in/
[Oo]bj/

# Visual Studio 2015+ cache/options directory
.vs/

# Roslyn cache directories
*.ide/

Expand Down
1,030 changes: 0 additions & 1,030 deletions .vs/config/applicationhost.config

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,17 +1,9 @@
using System;
using NUnit.Framework;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Security;
using System.Text;
using System.Threading.Tasks;
using Dragablz.Core;
using Microsoft.CSharp;
using NUnit.Framework;
using Rhino.Mocks;

namespace Dragablz.Test
using FakeItEasy;

namespace Dragablz.Core.Tests
{
[TestFixture]
public class CollectionTeaserFixture
Expand All @@ -31,7 +23,7 @@ public void WillCreateForList()
[Test]
public void WillCreateForGenericCollection()
{
var myList = MockRepository.GenerateStub<ICollection<string>>();
var myList = A.Fake<ICollection<string>>();

CollectionTeaser collectionTeaser;
var result = CollectionTeaser.TryCreate(myList, out collectionTeaser);
Expand All @@ -43,7 +35,7 @@ public void WillCreateForGenericCollection()
[Test]
public void WillCreateForCollection()
{
var myList = MockRepository.GenerateStub<ICollection>();
var myList = A.Fake<ICollection>();

CollectionTeaser collectionTeaser;
var result = CollectionTeaser.TryCreate(myList, out collectionTeaser);
Expand All @@ -61,7 +53,7 @@ public void WillAddForList()

collectionTeaser.Add("i am going to type this in, manually, twice.");

CollectionAssert.AreEquivalent(new[] {"i am going to type this in, manually, twice."}, myList);
CollectionAssert.AreEquivalent(new[] { "i am going to type this in, manually, twice." }, myList);
//i didnt really. i copied and pasted it.
}

Expand All @@ -81,34 +73,33 @@ public void WillRemoveForList()

collectionTeaser.Remove(3);

CollectionAssert.AreEquivalent(new[] {1, 2, 4, 5}, myList);
CollectionAssert.AreEquivalent(new[] { 1, 2, 4, 5 }, myList);
}

[Test]
public void WillAddForGenericCollection()
{
var myList = MockRepository.GenerateStub<ICollection<string>>();
var myList = A.Fake<ICollection<string>>();
CollectionTeaser collectionTeaser;
Assert.IsTrue(CollectionTeaser.TryCreate(myList, out collectionTeaser));

collectionTeaser.Add("hello");

myList.AssertWasCalled(c => c.Add("hello"));
myList.AssertWasNotCalled(c => c.Remove("hello"));
A.CallTo(() => myList.Add("hello")).MustHaveHappened();
A.CallTo(() => myList.Remove("hello")).MustNotHaveHappened();
}

[Test]
public void WillRemoveForGenericCollection()
{
var myList = MockRepository.GenerateStub<ICollection<string>>();
var myList = A.Fake<ICollection<string>>();
CollectionTeaser collectionTeaser;
Assert.IsTrue(CollectionTeaser.TryCreate(myList, out collectionTeaser));

collectionTeaser.Remove("bye");

myList.AssertWasCalled(c => c.Remove("bye"));
myList.AssertWasNotCalled(c => c.Add("bye"));

A.CallTo(() => myList.Remove("bye")).MustHaveHappened();
A.CallTo(() => myList.Add("bye")).MustNotHaveHappened();
}
}
}
}
14 changes: 3 additions & 11 deletions Dragablz.Test/Dockablz/TilerCalculatorFixture.cs
Original file line number Diff line number Diff line change
@@ -1,13 +1,5 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Dragablz.Dockablz;
using Microsoft.CSharp;
using NUnit.Framework;

namespace Dragablz.Test.Dockablz
using NUnit.Framework;
namespace Dragablz.Dockablz.Tests
{
[TestFixture]
public class TilerCalculatorFixture
Expand All @@ -33,4 +25,4 @@ public void WillCalculateCellsPerColumn(int totalCells, int[] expectedCellsPerCo
CollectionAssert.AreEqual(expectedCellsPerColumn, result);
}
}
}
}
85 changes: 18 additions & 67 deletions Dragablz.Test/Dragablz.Test.csproj
Original file line number Diff line number Diff line change
@@ -1,73 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{BA0DAD50-C09F-4ED6-92D3-185CB5A39225}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Dragablz.Test</RootNamespace>
<AssemblyName>Dragablz.Test</AssemblyName>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<TargetFrameworkProfile />
<TargetFrameworks>netcoreapp3.0;net45;net40</TargetFrameworks>

<IsPackable>false</IsPackable>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="nunit.framework, Version=2.6.3.13283, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL">
<HintPath>..\packages\NUnit.2.6.3\lib\nunit.framework.dll</HintPath>
</Reference>
<Reference Include="Rhino.Mocks">
<HintPath>..\packages\RhinoMocks.3.6.1\lib\net\Rhino.Mocks.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="CollectionTeaserFixture.cs" />
<Compile Include="Dockablz\TilerCalculatorFixture.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\Dragablz\Dragablz.net45.csproj">
<Project>{7b11011c-7fd7-4ab0-a1ad-04e940b026de}</Project>
<Name>Dragablz</Name>
</ProjectReference>
<PackageReference Include="coverlet.collector" Version="1.1.0">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="FakeItEasy" Version="5.4.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.3.0" />
<PackageReference Include="NUnit" Version="3.12.0" />
<PackageReference Include="NUnit3TestAdapter" Version="3.15.1" />
</ItemGroup>

<ItemGroup>
<Content Include="ReadMe.txt" />
<ProjectReference Include="..\Dragablz\Dragablz.csproj" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

</Project>
36 changes: 0 additions & 36 deletions Dragablz.Test/Properties/AssemblyInfo.cs

This file was deleted.

1 change: 0 additions & 1 deletion Dragablz.Test/ReadMe.txt

This file was deleted.

5 changes: 0 additions & 5 deletions Dragablz.Test/packages.config

This file was deleted.

106 changes: 45 additions & 61 deletions Dragablz.sln
Original file line number Diff line number Diff line change
@@ -1,18 +1,13 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dragablz.net45", "Dragablz\Dragablz.net45.csproj", "{7B11011C-7FD7-4AB0-A1AD-04E940B026DE}"
ProjectSection(ProjectDependencies) = postProject
{B127C87D-C212-40D1-895E-3B6341E81C21} = {B127C87D-C212-40D1-895E-3B6341E81C21}
EndProjectSection
# Visual Studio Version 16
VisualStudioVersion = 16.0.29424.173
MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Dragablz", "Dragablz\Dragablz.csproj", "{C4D2C8A3-2B3A-46C6-83D3-6DCC83B34646}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DragablzDemo.net45", "DragablzDemo\DragablzDemo.net45.csproj", "{63F4A11F-3B6A-43D3-B5A2-B9B9C74D6023}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DragablzDemo", "DragablzDemo\DragablzDemo.csproj", "{2B28B8D0-67E7-461C-97C8-8A2ECA6C9314}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dragablz.Test", "Dragablz.Test\Dragablz.Test.csproj", "{BA0DAD50-C09F-4ED6-92D3-185CB5A39225}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dragablz.net40", "Dragablz\Dragablz.net40.csproj", "{886AD9DE-BCED-4A99-8376-5177B376C0AC}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DragablzDemo.net40", "DragablzDemo\DragablzDemo.net40.csproj", "{B127C87D-C212-40D1-895E-3B6341E81C21}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Dragablz.Test", "Dragablz.Test\Dragablz.Test.csproj", "{F8636090-2153-401A-A00F-C5ADB66EF612}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Expand All @@ -24,58 +19,47 @@ Global
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{7B11011C-7FD7-4AB0-A1AD-04E940B026DE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7B11011C-7FD7-4AB0-A1AD-04E940B026DE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7B11011C-7FD7-4AB0-A1AD-04E940B026DE}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{7B11011C-7FD7-4AB0-A1AD-04E940B026DE}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{7B11011C-7FD7-4AB0-A1AD-04E940B026DE}.Debug|x86.ActiveCfg = Debug|Any CPU
{7B11011C-7FD7-4AB0-A1AD-04E940B026DE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7B11011C-7FD7-4AB0-A1AD-04E940B026DE}.Release|Any CPU.Build.0 = Release|Any CPU
{7B11011C-7FD7-4AB0-A1AD-04E940B026DE}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{7B11011C-7FD7-4AB0-A1AD-04E940B026DE}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{7B11011C-7FD7-4AB0-A1AD-04E940B026DE}.Release|x86.ActiveCfg = Release|Any CPU
{63F4A11F-3B6A-43D3-B5A2-B9B9C74D6023}.Debug|Any CPU.ActiveCfg = Debug|x86
{63F4A11F-3B6A-43D3-B5A2-B9B9C74D6023}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
{63F4A11F-3B6A-43D3-B5A2-B9B9C74D6023}.Debug|Mixed Platforms.Build.0 = Debug|x86
{63F4A11F-3B6A-43D3-B5A2-B9B9C74D6023}.Debug|x86.ActiveCfg = Debug|x86
{63F4A11F-3B6A-43D3-B5A2-B9B9C74D6023}.Debug|x86.Build.0 = Debug|x86
{63F4A11F-3B6A-43D3-B5A2-B9B9C74D6023}.Release|Any CPU.ActiveCfg = Release|x86
{63F4A11F-3B6A-43D3-B5A2-B9B9C74D6023}.Release|Mixed Platforms.ActiveCfg = Release|x86
{63F4A11F-3B6A-43D3-B5A2-B9B9C74D6023}.Release|Mixed Platforms.Build.0 = Release|x86
{63F4A11F-3B6A-43D3-B5A2-B9B9C74D6023}.Release|x86.ActiveCfg = Release|x86
{63F4A11F-3B6A-43D3-B5A2-B9B9C74D6023}.Release|x86.Build.0 = Release|x86
{BA0DAD50-C09F-4ED6-92D3-185CB5A39225}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{BA0DAD50-C09F-4ED6-92D3-185CB5A39225}.Debug|Any CPU.Build.0 = Debug|Any CPU
{BA0DAD50-C09F-4ED6-92D3-185CB5A39225}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{BA0DAD50-C09F-4ED6-92D3-185CB5A39225}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{BA0DAD50-C09F-4ED6-92D3-185CB5A39225}.Debug|x86.ActiveCfg = Debug|Any CPU
{BA0DAD50-C09F-4ED6-92D3-185CB5A39225}.Release|Any CPU.ActiveCfg = Release|Any CPU
{BA0DAD50-C09F-4ED6-92D3-185CB5A39225}.Release|Any CPU.Build.0 = Release|Any CPU
{BA0DAD50-C09F-4ED6-92D3-185CB5A39225}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{BA0DAD50-C09F-4ED6-92D3-185CB5A39225}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{BA0DAD50-C09F-4ED6-92D3-185CB5A39225}.Release|x86.ActiveCfg = Release|Any CPU
{886AD9DE-BCED-4A99-8376-5177B376C0AC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{886AD9DE-BCED-4A99-8376-5177B376C0AC}.Debug|Any CPU.Build.0 = Debug|Any CPU
{886AD9DE-BCED-4A99-8376-5177B376C0AC}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{886AD9DE-BCED-4A99-8376-5177B376C0AC}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{886AD9DE-BCED-4A99-8376-5177B376C0AC}.Debug|x86.ActiveCfg = Debug|Any CPU
{886AD9DE-BCED-4A99-8376-5177B376C0AC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{886AD9DE-BCED-4A99-8376-5177B376C0AC}.Release|Any CPU.Build.0 = Release|Any CPU
{886AD9DE-BCED-4A99-8376-5177B376C0AC}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{886AD9DE-BCED-4A99-8376-5177B376C0AC}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{886AD9DE-BCED-4A99-8376-5177B376C0AC}.Release|x86.ActiveCfg = Release|Any CPU
{B127C87D-C212-40D1-895E-3B6341E81C21}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{B127C87D-C212-40D1-895E-3B6341E81C21}.Debug|Any CPU.Build.0 = Debug|Any CPU
{B127C87D-C212-40D1-895E-3B6341E81C21}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{B127C87D-C212-40D1-895E-3B6341E81C21}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{B127C87D-C212-40D1-895E-3B6341E81C21}.Debug|x86.ActiveCfg = Debug|Any CPU
{B127C87D-C212-40D1-895E-3B6341E81C21}.Release|Any CPU.ActiveCfg = Release|Any CPU
{B127C87D-C212-40D1-895E-3B6341E81C21}.Release|Any CPU.Build.0 = Release|Any CPU
{B127C87D-C212-40D1-895E-3B6341E81C21}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{B127C87D-C212-40D1-895E-3B6341E81C21}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{B127C87D-C212-40D1-895E-3B6341E81C21}.Release|x86.ActiveCfg = Release|Any CPU
{C4D2C8A3-2B3A-46C6-83D3-6DCC83B34646}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C4D2C8A3-2B3A-46C6-83D3-6DCC83B34646}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C4D2C8A3-2B3A-46C6-83D3-6DCC83B34646}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{C4D2C8A3-2B3A-46C6-83D3-6DCC83B34646}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{C4D2C8A3-2B3A-46C6-83D3-6DCC83B34646}.Debug|x86.ActiveCfg = Debug|Any CPU
{C4D2C8A3-2B3A-46C6-83D3-6DCC83B34646}.Debug|x86.Build.0 = Debug|Any CPU
{C4D2C8A3-2B3A-46C6-83D3-6DCC83B34646}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C4D2C8A3-2B3A-46C6-83D3-6DCC83B34646}.Release|Any CPU.Build.0 = Release|Any CPU
{C4D2C8A3-2B3A-46C6-83D3-6DCC83B34646}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{C4D2C8A3-2B3A-46C6-83D3-6DCC83B34646}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{C4D2C8A3-2B3A-46C6-83D3-6DCC83B34646}.Release|x86.ActiveCfg = Release|Any CPU
{C4D2C8A3-2B3A-46C6-83D3-6DCC83B34646}.Release|x86.Build.0 = Release|Any CPU
{2B28B8D0-67E7-461C-97C8-8A2ECA6C9314}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2B28B8D0-67E7-461C-97C8-8A2ECA6C9314}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2B28B8D0-67E7-461C-97C8-8A2ECA6C9314}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{2B28B8D0-67E7-461C-97C8-8A2ECA6C9314}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{2B28B8D0-67E7-461C-97C8-8A2ECA6C9314}.Debug|x86.ActiveCfg = Debug|Any CPU
{2B28B8D0-67E7-461C-97C8-8A2ECA6C9314}.Debug|x86.Build.0 = Debug|Any CPU
{2B28B8D0-67E7-461C-97C8-8A2ECA6C9314}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2B28B8D0-67E7-461C-97C8-8A2ECA6C9314}.Release|Any CPU.Build.0 = Release|Any CPU
{2B28B8D0-67E7-461C-97C8-8A2ECA6C9314}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{2B28B8D0-67E7-461C-97C8-8A2ECA6C9314}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{2B28B8D0-67E7-461C-97C8-8A2ECA6C9314}.Release|x86.ActiveCfg = Release|Any CPU
{2B28B8D0-67E7-461C-97C8-8A2ECA6C9314}.Release|x86.Build.0 = Release|Any CPU
{F8636090-2153-401A-A00F-C5ADB66EF612}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F8636090-2153-401A-A00F-C5ADB66EF612}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F8636090-2153-401A-A00F-C5ADB66EF612}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{F8636090-2153-401A-A00F-C5ADB66EF612}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{F8636090-2153-401A-A00F-C5ADB66EF612}.Debug|x86.ActiveCfg = Debug|Any CPU
{F8636090-2153-401A-A00F-C5ADB66EF612}.Debug|x86.Build.0 = Debug|Any CPU
{F8636090-2153-401A-A00F-C5ADB66EF612}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F8636090-2153-401A-A00F-C5ADB66EF612}.Release|Any CPU.Build.0 = Release|Any CPU
{F8636090-2153-401A-A00F-C5ADB66EF612}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{F8636090-2153-401A-A00F-C5ADB66EF612}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{F8636090-2153-401A-A00F-C5ADB66EF612}.Release|x86.ActiveCfg = Release|Any CPU
{F8636090-2153-401A-A00F-C5ADB66EF612}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {AD581326-677F-4EEB-8B87-71546D0AAF5C}
EndGlobalSection
EndGlobal
Loading

0 comments on commit 7b68eb9

Please sign in to comment.