ы ы 2 年之前
父节点
当前提交
6c23e13b37
共有 4 个文件被更改,包括 386 次插入0 次删除
  1. 239 0
      CalculationTests.cs
  2. 36 0
      Properties/AssemblyInfo.cs
  3. 106 0
      WSUniversalLibTests.csproj
  4. 5 0
      packages.config

+ 239 - 0
CalculationTests.cs

@@ -0,0 +1,239 @@
+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 GetQuant_Pord3Mat1_Return114148()
+        {
+            //Arrange
+            int productType = 3, materialType = 1, count = 15, expected = 114148;
+            float width = 20, length = 45;
+
+            //Act
+            int actual = Calculation.GetQuantityForProduct(productType, materialType, count, width, length);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+
+        }
+
+        [TestMethod()]
+        public void GetQuant_Pord1Mat1_Return1655()
+        {
+            //Arrange
+            int productType = 1, materialType = 1, count = 10, expected = 1655;
+            float width = 10, length = 15;
+
+            //Act
+            int actual = Calculation.GetQuantityForProduct(productType, materialType, count, width, length);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+
+        }
+
+        [TestMethod()]
+        public void GetQuant_Pord2Mat1_Return4702()
+        {
+            //Arrange
+            int productType = 2, materialType = 1, count = 25, expected = 4702;
+            float width = 5, length = 15;
+
+            //Act
+            int actual = Calculation.GetQuantityForProduct(productType, materialType, count, width, length);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+
+        }
+
+        [TestMethod()]
+        public void GetQuant_Pord1Mat2_Return375()
+        {
+            //Arrange
+            int productType = 1, materialType = 2, count = 7, expected = 375;
+            float width = 6, length = 8;
+
+            //Act
+            int actual = Calculation.GetQuantityForProduct(productType, materialType, count, width, length);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+
+        }
+
+        [TestMethod()]
+        public void GetQuant_Pord2Mat2_Return608()
+        {
+            //Arrange
+            int productType = 2, materialType = 2, count = 3, expected = 608;
+            float width = 10, length = 8;
+
+            //Act
+            int actual = Calculation.GetQuantityForProduct(productType, materialType, count, width, length);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+
+        }
+
+        [TestMethod()]
+        public void GetQuant_Pord3Mat2_Return5632()
+        {
+            //Arrange
+            int productType = 3, materialType = 2, count = 11, expected = 5632;
+            float width = 3, length = 20;
+
+            //Act
+            int actual = Calculation.GetQuantityForProduct(productType, materialType, count, width, length);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+
+        }
+
+        [TestMethod()]
+        public void GetQuant_Rand1_Return398()
+        {
+            //Arrange
+            int productType = 1, materialType = 1, count = 15, expected = 398;
+            float width = 8, length = 3;
+
+            //Act
+            int actual = Calculation.GetQuantityForProduct(productType, materialType, count, width, length);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+
+        }
+
+        [TestMethod()]
+        public void GetQuant_Rand2_Return161()
+        {
+            //Arrange
+            int productType = 1, materialType = 2, count = 8, expected = 161;
+            float width = 9, length = 2;
+
+            //Act
+            int actual = Calculation.GetQuantityForProduct(productType, materialType, count, width, length);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+
+        }
+
+        [TestMethod()]
+        public void GetQuant_Rand3_Return2809()
+        {
+            //Arrange
+            int productType = 2, materialType = 1, count = 14, expected = 2809;
+            float width = 10, length = 8;
+
+            //Act
+            int actual = Calculation.GetQuantityForProduct(productType, materialType, count, width, length);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+
+        }
+
+        [TestMethod()]
+        public void GetQuant_Rand4_Return2345()
+        {
+            //Arrange
+            int productType = 1, materialType = 2, count = 13, expected = 2345;
+            float width = 27, length = 6;
+
+            //Act
+            int actual = Calculation.GetQuantityForProduct(productType, materialType, count, width, length);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+
+        }
+
+        [TestMethod()]
+        public void GetQuant_HardBignumbers1_Return834103()
+        {
+            //Arrange
+            int productType = 1, materialType = 1, count = 420, expected = 834103;
+            float width = 60, length = 30;
+
+            //Act
+            int actual = Calculation.GetQuantityForProduct(productType, materialType, count, width, length);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+
+        }
+
+        [TestMethod()]
+        public void GetQuant_HardBignumbers2_Return206595()
+        {
+            //Arrange
+            int productType = 2, materialType = 1, count = 535, expected = 206595;
+            float width = 77, length = 2;
+
+            //Act
+            int actual = Calculation.GetQuantityForProduct(productType, materialType, count, width, length);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+
+        }
+
+        [TestMethod()]
+        public void GetQuant_HardBelowZero1_ReturnError()
+        {
+            //Arrange
+            int productType = 1, materialType = 1, count = -8, expected = -1;
+            float width = 5, length = -2;
+
+            //Act
+            int actual = Calculation.GetQuantityForProduct(productType, materialType, count, width, length);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+
+        }
+
+        [TestMethod()]
+        public void GetQuant_HardBelowZero2_ReturnError()
+        {
+            //Arrange
+            int productType = 2, materialType = 2, count = -5, expected = -1;
+            float width = -5, length = 0;
+
+            //Act
+            int actual = Calculation.GetQuantityForProduct(productType, materialType, count, width, length);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+
+        }
+
+        [TestMethod()]
+        public void GetQuant_HardMoreDecimal_Return1810()
+        {
+            //Arrange
+            int productType = 1, materialType = 2, count = 30, expected = 1810;
+            float width = 8.5382F, length = 6.3460F;
+
+            //Act
+            int actual = Calculation.GetQuantityForProduct(productType, materialType, count, width, length);
+
+            //Assert
+            Assert.AreEqual(expected, actual);
+
+        }
+    }
+}

+ 36 - 0
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("9cd39840-a756-4a94-865e-93235d22b4a4")]
+
+// Сведения о версии сборки состоят из следующих четырех значений:
+//
+//      Основной номер версии
+//      Дополнительный номер версии 
+//   Номер сборки
+//      Редакция
+//
+// Можно задать все значения или принять номера сборки и редакции по умолчанию 
+// используя "*", как показано ниже:
+// [сборка: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]

+ 106 - 0
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="..\StroyMat\packages\MSTest.TestAdapter.2.1.1\build\net45\MSTest.TestAdapter.props" Condition="Exists('..\StroyMat\packages\MSTest.TestAdapter.2.1.1\build\net45\MSTest.TestAdapter.props')" />
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProjectGuid>{9CD39840-A756-4A94-865E-93235D22B4A4}</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>..\StroyMat\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>..\StroyMat\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="..\WSUniversalLib\WSUniversalLib.csproj">
+      <Project>{01750A00-3E30-4A61-9F75-1AB9C29E564E}</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('..\StroyMat\packages\MSTest.TestAdapter.2.1.1\build\net45\MSTest.TestAdapter.props')" Text="$([System.String]::Format('$(ErrorText)', '..\StroyMat\packages\MSTest.TestAdapter.2.1.1\build\net45\MSTest.TestAdapter.props'))" />
+    <Error Condition="!Exists('..\StroyMat\packages\MSTest.TestAdapter.2.1.1\build\net45\MSTest.TestAdapter.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\StroyMat\packages\MSTest.TestAdapter.2.1.1\build\net45\MSTest.TestAdapter.targets'))" />
+  </Target>
+  <Import Project="..\StroyMat\packages\MSTest.TestAdapter.2.1.1\build\net45\MSTest.TestAdapter.targets" Condition="Exists('..\StroyMat\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
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>