Преглед на файлове

Добавлены тесты

15 преди 2 години
родител
ревизия
a391d399e7

+ 5 - 5
WSUniversalLib.sln

@@ -5,7 +5,7 @@ VisualStudioVersion = 16.0.30804.86
 MinimumVisualStudioVersion = 10.0.40219.1
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WSUniversalLib", "WSUniversalLib.csproj", "{FA54A66A-0E77-462E-8F16-A6A09EF962DB}"
 EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WSUniversalLibTests", "..\WSUniversalLibTests\WSUniversalLibTests.csproj", "{ABF016F9-571A-486A-87C9-1C62E3E1CE12}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WSUniversalLibTests", "..\WSUniversalLibTests\WSUniversalLibTests.csproj", "{F3A87193-31AF-4A80-9628-B1E616C7DFA0}"
 EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -17,10 +17,10 @@ Global
 		{FA54A66A-0E77-462E-8F16-A6A09EF962DB}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{FA54A66A-0E77-462E-8F16-A6A09EF962DB}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{FA54A66A-0E77-462E-8F16-A6A09EF962DB}.Release|Any CPU.Build.0 = Release|Any CPU
-		{ABF016F9-571A-486A-87C9-1C62E3E1CE12}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{ABF016F9-571A-486A-87C9-1C62E3E1CE12}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{ABF016F9-571A-486A-87C9-1C62E3E1CE12}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{ABF016F9-571A-486A-87C9-1C62E3E1CE12}.Release|Any CPU.Build.0 = Release|Any CPU
+		{F3A87193-31AF-4A80-9628-B1E616C7DFA0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{F3A87193-31AF-4A80-9628-B1E616C7DFA0}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{F3A87193-31AF-4A80-9628-B1E616C7DFA0}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{F3A87193-31AF-4A80-9628-B1E616C7DFA0}.Release|Any CPU.Build.0 = Release|Any CPU
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
 		HideSolutionNode = FALSE

+ 254 - 0
WSUniversalLibTests/CalculationTests.cs

@@ -0,0 +1,254 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using WSUniversalLib;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace WSUniversalLib.Tests
+{
+    [TestClass()]
+    public class CalculationTests
+    {
+        [TestMethod()]
+        public void GetPriority_Easy1_Return5()
+        {
+            //Arrange
+            float experience = 1.5F, age = 23;
+            int agentType = 2;
+
+            int expected = 5;
+
+            //Act
+            int actual = Calculation.GetPriorityForAgent(agentType, age, experience);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+        }
+
+        [TestMethod()]
+        public void GetPriority_Easy2_Return4()
+        {
+            //Arrange
+            float experience = 2, age = 24;
+            int agentType = 1;
+
+            int expected = 4;
+
+            //Act
+            int actual = Calculation.GetPriorityForAgent(agentType, age, experience);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+        }
+
+        [TestMethod()]
+        public void GetPriority_Easy3_Return11()
+        {
+            //Arrange
+            float experience = 2.5F, age = 23;
+            int agentType = 3;
+
+            int expected = 11;
+
+            //Act
+            int actual = Calculation.GetPriorityForAgent(agentType, age, experience);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+        }
+
+        [TestMethod()]
+        public void GetPriority_Easy4_Return5()
+        {
+            //Arrange
+            float experience = 3, age = 25;
+            int agentType = 1;
+
+            int expected = 5;
+
+            //Act
+            int actual = Calculation.GetPriorityForAgent(agentType, age, experience);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+        }
+
+        [TestMethod()]
+        public void GetPriority_Easy5_Return16()
+        {
+            //Arrange
+            float experience = 5, age = 27;
+            int agentType = 2;
+
+            int expected = 16;
+
+            //Act
+            int actual = Calculation.GetPriorityForAgent(agentType, age, experience);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+        }
+
+        [TestMethod()]
+        public void GetPriority_Easy6_Return16()
+        {
+            //Arrange
+            float experience = 4, age = 28;
+            int agentType = 3;
+
+            int expected = 16;
+
+            //Act
+            int actual = Calculation.GetPriorityForAgent(agentType, age, experience);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+        }
+
+        [TestMethod()]
+        public void GetPriority_Easy7_Return23()
+        {
+            //Arrange
+            float experience = 10, age = 35;
+            int agentType = 1;
+
+            int expected = 23;
+
+            //Act
+            int actual = Calculation.GetPriorityForAgent(agentType, age, experience);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+        }
+
+        [TestMethod()]
+        public void GetPriority_Easy8_Return41()
+        {
+            //Arrange
+            float experience = 11, age = 36;
+            int agentType = 2;
+
+            int expected = 41;
+
+            //Act
+            int actual = Calculation.GetPriorityForAgent(agentType, age, experience);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+        }
+
+        [TestMethod()]
+        public void GetPriority_Easy9_Return69()
+        {
+            //Arrange
+            float experience = 15, age = 38;
+            int agentType = 3;
+
+            int expected = 69;
+
+            //Act
+            int actual = Calculation.GetPriorityForAgent(agentType, age, experience);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+        }
+
+        [TestMethod()]
+        public void GetPriority_Easy10_Return108()
+        {
+            //Arrange
+            float experience = 40, age = 60;
+            int agentType = 1;
+
+            int expected = 108;
+
+            //Act
+            int actual = Calculation.GetPriorityForAgent(agentType, age, experience);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+        }
+
+        [TestMethod()]
+        public void GetPriority_Hard1_ReturnError()
+        {
+            //Arrange
+            float experience = 1.5F, age = 0;
+            int agentType = 1;
+
+            int expected = -1;
+
+            //Act
+            int actual = Calculation.GetPriorityForAgent(agentType, age, experience);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+        }
+
+        [TestMethod()]
+        public void GetPriority_Hard2_ReturnError()
+        {
+            //Arrange
+            float experience = 0, age = 28;
+            int agentType = 1;
+
+            int expected = -1;
+
+            //Act
+            int actual = Calculation.GetPriorityForAgent(agentType, age, experience);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+        }
+
+        [TestMethod()]
+        public void GetPriority_Hard3_ReturnError()
+        {
+            //Arrange
+            float experience = 5, age = 28;
+            int agentType = 0;
+
+            int expected = -1;
+
+            //Act
+            int actual = Calculation.GetPriorityForAgent(agentType, age, experience);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+        }
+
+        [TestMethod()]
+        public void GetPriority_Hard4_ReturnError()
+        {
+            //Arrange
+            float experience = 0, age = 0;
+            int agentType = 0;
+
+            int expected = -1;
+
+            //Act
+            int actual = Calculation.GetPriorityForAgent(agentType, age, experience);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+        }
+
+        [TestMethod()]
+        public void GetPriority_Hard5_Return300()
+        {
+            //Arrange
+            float experience = 60, age = 80;
+            int agentType = 3;
+
+            int expected = 300;
+
+            //Act
+            int actual = Calculation.GetPriorityForAgent(agentType, age, experience);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+        }
+    }
+}

+ 36 - 0
WSUniversalLibTests/Properties/AssemblyInfo.cs

@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// Управление общими сведениями о сборке осуществляется с помощью указанного ниже 
+// набора атрибутов. Измените значения этих атрибутов, чтобы изменить сведения,
+// общие сведения об этой сборке.
+[assembly: AssemblyTitle("WSUniversalLibTests")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("WSUniversalLibTests")]
+[assembly: AssemblyCopyright("Copyright ©  2022")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Установка параметра ComVisible в значение false делает типы в этой сборке невидимыми 
+// для компонентов модели COM.  Если тип в этой сборке необходимо сделать доступным 
+// модели COM, задайте для атрибута ComVisible этого типа значение true.
+[assembly: ComVisible(false)]
+
+// Следующий GUID служит для идентификации библиотеки типов, если этот проект будет видимым для COM
+[assembly: Guid("f3a87193-31af-4a80-9628-b1e616c7dfa0")]
+
+// Сведения о версии сборки состоят из следующих четырех значений:
+//
+//      Основной номер версии
+//      Дополнительный номер версии 
+//   Номер сборки
+//      Редакция
+//
+// Можно задать все значения или принять номера сборки и редакции по умолчанию 
+// используя "*", как показано ниже:
+// [сборка: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]

+ 106 - 0
WSUniversalLibTests/WSUniversalLibTests.csproj

@@ -0,0 +1,106 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="..\User15library\packages\MSTest.TestAdapter.2.1.1\build\net45\MSTest.TestAdapter.props" Condition="Exists('..\User15library\packages\MSTest.TestAdapter.2.1.1\build\net45\MSTest.TestAdapter.props')" />
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProjectGuid>{F3A87193-31AF-4A80-9628-B1E616C7DFA0}</ProjectGuid>
+    <OutputType>Library</OutputType>
+    <AppDesignerFolder>Properties</AppDesignerFolder>
+    <RootNamespace>WSUniversalLibTests</RootNamespace>
+    <AssemblyName>WSUniversalLibTests</AssemblyName>
+    <TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
+    <FileAlignment>512</FileAlignment>
+    <ProjectTypeGuids>{3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+    <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
+    <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
+    <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\$(VisualStudioVersion)\UITestExtensionPackages</ReferencePath>
+    <IsCodedUITest>False</IsCodedUITest>
+    <TestProjectType>UnitTest</TestProjectType>
+    <TargetFrameworkProfile />
+    <NuGetPackageImportStamp>
+    </NuGetPackageImportStamp>
+  </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="Microsoft.VisualStudio.TestPlatform.TestFramework, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+      <HintPath>..\User15library\packages\MSTest.TestFramework.2.1.1\lib\net45\Microsoft.VisualStudio.TestPlatform.TestFramework.dll</HintPath>
+    </Reference>
+    <Reference Include="Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+      <HintPath>..\User15library\packages\MSTest.TestFramework.2.1.1\lib\net45\Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll</HintPath>
+    </Reference>
+    <Reference Include="System" />
+  </ItemGroup>
+  <Choose>
+    <When Condition="('$(VisualStudioVersion)' == '10.0' or '$(VisualStudioVersion)' == '') and '$(TargetFrameworkVersion)' == 'v3.5'">
+      <ItemGroup>
+        <Reference Include="Microsoft.VisualStudio.QualityTools.UnitTestFramework, Version=10.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" />
+      </ItemGroup>
+    </When>
+    <Otherwise />
+  </Choose>
+  <ItemGroup>
+    <Compile Include="CalculationTests.cs" />
+    <Compile Include="Properties\AssemblyInfo.cs" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="packages.config" />
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="..\User15library\WSUniversalLib.csproj">
+      <Project>{FA54A66A-0E77-462E-8F16-A6A09EF962DB}</Project>
+      <Name>WSUniversalLib</Name>
+    </ProjectReference>
+  </ItemGroup>
+  <Choose>
+    <When Condition="'$(VisualStudioVersion)' == '10.0' And '$(IsCodedUITest)' == 'True'">
+      <ItemGroup>
+        <Reference Include="Microsoft.VisualStudio.QualityTools.CodedUITestFramework, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+          <Private>False</Private>
+        </Reference>
+        <Reference Include="Microsoft.VisualStudio.TestTools.UITest.Common, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+          <Private>False</Private>
+        </Reference>
+        <Reference Include="Microsoft.VisualStudio.TestTools.UITest.Extension, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+          <Private>False</Private>
+        </Reference>
+        <Reference Include="Microsoft.VisualStudio.TestTools.UITesting, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+          <Private>False</Private>
+        </Reference>
+      </ItemGroup>
+    </When>
+  </Choose>
+  <Import Project="$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets" Condition="Exists('$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets')" />
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+  <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
+    <PropertyGroup>
+      <ErrorText>Данный проект ссылается на пакеты NuGet, отсутствующие на этом компьютере. Используйте восстановление пакетов NuGet, чтобы скачать их.  Дополнительную информацию см. по адресу: http://go.microsoft.com/fwlink/?LinkID=322105. Отсутствует следующий файл: {0}.</ErrorText>
+    </PropertyGroup>
+    <Error Condition="!Exists('..\User15library\packages\MSTest.TestAdapter.2.1.1\build\net45\MSTest.TestAdapter.props')" Text="$([System.String]::Format('$(ErrorText)', '..\User15library\packages\MSTest.TestAdapter.2.1.1\build\net45\MSTest.TestAdapter.props'))" />
+    <Error Condition="!Exists('..\User15library\packages\MSTest.TestAdapter.2.1.1\build\net45\MSTest.TestAdapter.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\User15library\packages\MSTest.TestAdapter.2.1.1\build\net45\MSTest.TestAdapter.targets'))" />
+  </Target>
+  <Import Project="..\User15library\packages\MSTest.TestAdapter.2.1.1\build\net45\MSTest.TestAdapter.targets" Condition="Exists('..\User15library\packages\MSTest.TestAdapter.2.1.1\build\net45\MSTest.TestAdapter.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>

+ 5 - 0
WSUniversalLibTests/packages.config

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+  <package id="MSTest.TestAdapter" version="2.1.1" targetFramework="net472" />
+  <package id="MSTest.TestFramework" version="2.1.1" targetFramework="net472" />
+</packages>