Tests for float arithmetic, expressions, IO methods
This commit is contained in:
parent
bf044dc564
commit
4770c42686
@ -94,15 +94,27 @@
|
||||
</Otherwise>
|
||||
</Choose>
|
||||
<ItemGroup>
|
||||
<None Include="..\..\..\mpir.net\mpir.net-tests\HugeFloatTests\Arithmetic.cs">
|
||||
<Link>HugeFloatTests\Arithmetic.cs</Link>
|
||||
</None>
|
||||
<Compile Include="..\..\..\mpir.net\mpir.net-tests\HugeFloatTests\Assignment.cs">
|
||||
<Link>HugeFloatTests\Assignment.cs</Link>
|
||||
</Compile>
|
||||
<None Include="..\..\..\mpir.net\mpir.net-tests\HugeFloatTests\Comparisons.cs">
|
||||
<Link>HugeFloatTests\Comparisons.cs</Link>
|
||||
</None>
|
||||
<Compile Include="..\..\..\mpir.net\mpir.net-tests\HugeFloatTests\ConstructionAndDisposal.cs">
|
||||
<Link>HugeFloatTests\ConstructionAndDisposal.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\..\mpir.net\mpir.net-tests\HugeFloatTests\Conversions.cs">
|
||||
<Link>HugeFloatTests\Conversions.cs</Link>
|
||||
</Compile>
|
||||
<None Include="..\..\..\mpir.net\mpir.net-tests\HugeFloatTests\ExpressionTests.cs">
|
||||
<Link>HugeFloatTests\ExpressionTests.cs</Link>
|
||||
</None>
|
||||
<None Include="..\..\..\mpir.net\mpir.net-tests\HugeFloatTests\IO.cs">
|
||||
<Link>HugeFloatTests\IO.cs</Link>
|
||||
</None>
|
||||
<Compile Include="..\..\..\mpir.net\mpir.net-tests\HugeIntTests\Arithmetic.cs">
|
||||
<Link>HugeIntTests\Arithmetic.cs</Link>
|
||||
</Compile>
|
||||
|
@ -1,34 +1,34 @@
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 2012
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dll_mpir_core2", "dll_mpir_core2\dll_mpir_core2.vcxproj", "{6424539a-ba67-11e3-a234-24fd5238c490}"
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dll_mpir_core2", "dll_mpir_core2\dll_mpir_core2.vcxproj", "{6424539A-BA67-11E3-A234-24FD5238C490}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lib_mpir_core2", "lib_mpir_core2\lib_mpir_core2.vcxproj", "{6429d25c-ba67-11e3-99ed-24fd5238c490}"
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lib_mpir_core2", "lib_mpir_core2\lib_mpir_core2.vcxproj", "{6429D25C-BA67-11E3-99ED-24FD5238C490}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lib_mpir_cxx", "lib_mpir_cxx\lib_mpir_cxx.vcxproj", "{64616226-ba67-11e3-b58a-24fd5238c490}"
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lib_mpir_cxx", "lib_mpir_cxx\lib_mpir_cxx.vcxproj", "{64616226-BA67-11E3-B58A-24FD5238C490}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dll_mpir_k8", "dll_mpir_k8\dll_mpir_k8.vcxproj", "{642fed70-ba67-11e3-9442-24fd5238c490}"
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dll_mpir_k8", "dll_mpir_k8\dll_mpir_k8.vcxproj", "{642FED70-BA67-11E3-9442-24FD5238C490}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lib_mpir_k8", "lib_mpir_k8\lib_mpir_k8.vcxproj", "{6435933a-ba67-11e3-80ec-24fd5238c490}"
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lib_mpir_k8", "lib_mpir_k8\lib_mpir_k8.vcxproj", "{6435933A-BA67-11E3-80EC-24FD5238C490}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dll_mpir_nehalem", "dll_mpir_nehalem\dll_mpir_nehalem.vcxproj", "{643b6026-ba67-11e3-9965-24fd5238c490}"
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dll_mpir_nehalem", "dll_mpir_nehalem\dll_mpir_nehalem.vcxproj", "{643B6026-BA67-11E3-9965-24FD5238C490}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lib_mpir_nehalem", "lib_mpir_nehalem\lib_mpir_nehalem.vcxproj", "{6441a25e-ba67-11e3-b8c7-24fd5238c490}"
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lib_mpir_nehalem", "lib_mpir_nehalem\lib_mpir_nehalem.vcxproj", "{6441A25E-BA67-11E3-B8C7-24FD5238C490}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lib_mpir_gc", "lib_mpir_gc\lib_mpir_gc.vcxproj", "{640f6a3e-ba67-11e3-9a67-24fd5238c490}"
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lib_mpir_gc", "lib_mpir_gc\lib_mpir_gc.vcxproj", "{640F6A3E-BA67-11E3-9A67-24FD5238C490}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dll_mpir_gc", "dll_mpir_gc\dll_mpir_gc.vcxproj", "{640668a8-ba67-11e3-9d8e-24fd5238c490}"
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dll_mpir_gc", "dll_mpir_gc\dll_mpir_gc.vcxproj", "{640668A8-BA67-11E3-9D8E-24FD5238C490}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dll_mpir_p3", "dll_mpir_p3\dll_mpir_p3.vcxproj", "{6417f686-ba67-11e3-8727-24fd5238c490}"
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dll_mpir_p3", "dll_mpir_p3\dll_mpir_p3.vcxproj", "{6417F686-BA67-11E3-8727-24FD5238C490}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lib_mpir_p3", "lib_mpir_p3\lib_mpir_p3.vcxproj", "{641e38a2-ba67-11e3-8b68-24fd5238c490}"
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lib_mpir_p3", "lib_mpir_p3\lib_mpir_p3.vcxproj", "{641E38A2-BA67-11E3-8B68-24FD5238C490}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dll_mpir_sandybridge", "dll_mpir_sandybridge\dll_mpir_sandybridge.vcxproj", "{6447963e-ba67-11e3-b03e-24fd5238c490}"
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dll_mpir_sandybridge", "dll_mpir_sandybridge\dll_mpir_sandybridge.vcxproj", "{6447963E-BA67-11E3-B03E-24FD5238C490}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lib_mpir_sandybridge", "lib_mpir_sandybridge\lib_mpir_sandybridge.vcxproj", "{644d8a3a-ba67-11e3-a7f3-24fd5238c490}"
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lib_mpir_sandybridge", "lib_mpir_sandybridge\lib_mpir_sandybridge.vcxproj", "{644D8A3A-BA67-11E3-A7F3-24FD5238C490}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dll_mpir_sandybridge_ivybridge", "dll_mpir_sandybridge_ivybridge\dll_mpir_sandybridge_ivybridge.vcxproj", "{64537e36-ba67-11e3-b98f-24fd5238c490}"
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dll_mpir_sandybridge_ivybridge", "dll_mpir_sandybridge_ivybridge\dll_mpir_sandybridge_ivybridge.vcxproj", "{64537E36-BA67-11E3-B98F-24FD5238C490}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lib_mpir_sandybridge_ivybridge", "lib_mpir_sandybridge_ivybridge\lib_mpir_sandybridge_ivybridge.vcxproj", "{645a3598-ba67-11e3-8fa3-24fd5238c490}"
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lib_mpir_sandybridge_ivybridge", "lib_mpir_sandybridge_ivybridge\lib_mpir_sandybridge_ivybridge.vcxproj", "{645A3598-BA67-11E3-8FA3-24FD5238C490}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
@ -38,90 +38,90 @@ Global
|
||||
Release|x64 = Release|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{32257940-B5C7-11E3-A871-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|x64
|
||||
{32257940-B5C7-11E3-A871-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{32257940-B5C7-11E3-A871-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{32257940-B5C7-11E3-A871-24FD5238C490}.Release|Win32.ActiveCfg = Release|x64
|
||||
{32257940-B5C7-11E3-A871-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{32257940-B5C7-11E3-A871-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
{322AA9D8-B5C7-11E3-A6DC-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|x64
|
||||
{322AA9D8-B5C7-11E3-A6DC-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{322AA9D8-B5C7-11E3-A6DC-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{322AA9D8-B5C7-11E3-A6DC-24FD5238C490}.Release|Win32.ActiveCfg = Release|x64
|
||||
{322AA9D8-B5C7-11E3-A6DC-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{322AA9D8-B5C7-11E3-A6DC-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
{902AFE28-B5A4-11E3-ADE9-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{902AFE28-B5A4-11E3-ADE9-24FD5238C490}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{902AFE28-B5A4-11E3-ADE9-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{902AFE28-B5A4-11E3-ADE9-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{902AFE28-B5A4-11E3-ADE9-24FD5238C490}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{902AFE28-B5A4-11E3-ADE9-24FD5238C490}.Release|Win32.Build.0 = Release|Win32
|
||||
{902AFE28-B5A4-11E3-ADE9-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{902AFE28-B5A4-11E3-ADE9-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
{322FB36C-B5C7-11E3-A3B5-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|x64
|
||||
{322FB36C-B5C7-11E3-A3B5-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{322FB36C-B5C7-11E3-A3B5-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{322FB36C-B5C7-11E3-A3B5-24FD5238C490}.Release|Win32.ActiveCfg = Release|x64
|
||||
{322FB36C-B5C7-11E3-A3B5-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{322FB36C-B5C7-11E3-A3B5-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
{32346EBE-B5C7-11E3-ADCC-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|x64
|
||||
{32346EBE-B5C7-11E3-ADCC-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{32346EBE-B5C7-11E3-ADCC-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{32346EBE-B5C7-11E3-ADCC-24FD5238C490}.Release|Win32.ActiveCfg = Release|x64
|
||||
{32346EBE-B5C7-11E3-ADCC-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{32346EBE-B5C7-11E3-ADCC-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
{32395136-B5C7-11E3-95C8-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|x64
|
||||
{32395136-B5C7-11E3-95C8-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{32395136-B5C7-11E3-95C8-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{32395136-B5C7-11E3-95C8-24FD5238C490}.Release|Win32.ActiveCfg = Release|x64
|
||||
{32395136-B5C7-11E3-95C8-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{32395136-B5C7-11E3-95C8-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
{323E0C94-B5C7-11E3-8869-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|x64
|
||||
{323E0C94-B5C7-11E3-8869-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{323E0C94-B5C7-11E3-8869-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{323E0C94-B5C7-11E3-8869-24FD5238C490}.Release|Win32.ActiveCfg = Release|x64
|
||||
{323E0C94-B5C7-11E3-8869-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{323E0C94-B5C7-11E3-8869-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
{3214FD10-B5C7-11E3-80F1-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{3214FD10-B5C7-11E3-80F1-24FD5238C490}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{3214FD10-B5C7-11E3-80F1-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{3214FD10-B5C7-11E3-80F1-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{3214FD10-B5C7-11E3-80F1-24FD5238C490}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{3214FD10-B5C7-11E3-80F1-24FD5238C490}.Release|Win32.Build.0 = Release|Win32
|
||||
{3214FD10-B5C7-11E3-80F1-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{3214FD10-B5C7-11E3-80F1-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
{320DF77A-B5C7-11E3-9BF6-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{320DF77A-B5C7-11E3-9BF6-24FD5238C490}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{320DF77A-B5C7-11E3-9BF6-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{320DF77A-B5C7-11E3-9BF6-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{320DF77A-B5C7-11E3-9BF6-24FD5238C490}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{320DF77A-B5C7-11E3-9BF6-24FD5238C490}.Release|Win32.Build.0 = Release|Win32
|
||||
{320DF77A-B5C7-11E3-9BF6-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{320DF77A-B5C7-11E3-9BF6-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
{321B8D54-B5C7-11E3-91C1-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{321B8D54-B5C7-11E3-91C1-24FD5238C490}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{321B8D54-B5C7-11E3-91C1-24FD5238C490}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{321B8D54-B5C7-11E3-91C1-24FD5238C490}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{321B8D54-B5C7-11E3-91C1-24FD5238C490}.Release|Win32.Build.0 = Release|Win32
|
||||
{321B8D54-B5C7-11E3-91C1-24FD5238C490}.Release|x64.ActiveCfg = Release|Win32
|
||||
{32206FB8-B5C7-11E3-9F6F-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{32206FB8-B5C7-11E3-9F6F-24FD5238C490}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{32206FB8-B5C7-11E3-9F6F-24FD5238C490}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{32206FB8-B5C7-11E3-9F6F-24FD5238C490}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{32206FB8-B5C7-11E3-9F6F-24FD5238C490}.Release|Win32.Build.0 = Release|Win32
|
||||
{32206FB8-B5C7-11E3-9F6F-24FD5238C490}.Release|x64.ActiveCfg = Release|Win32
|
||||
{3243161C-B5C7-11E3-9E27-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|x64
|
||||
{3243161C-B5C7-11E3-9E27-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{3243161C-B5C7-11E3-9E27-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{3243161C-B5C7-11E3-9E27-24FD5238C490}.Release|Win32.ActiveCfg = Release|x64
|
||||
{3243161C-B5C7-11E3-9E27-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{3243161C-B5C7-11E3-9E27-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
{3247D170-B5C7-11E3-8A62-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|x64
|
||||
{3247D170-B5C7-11E3-8A62-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{3247D170-B5C7-11E3-8A62-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{3247D170-B5C7-11E3-8A62-24FD5238C490}.Release|Win32.ActiveCfg = Release|x64
|
||||
{3247D170-B5C7-11E3-8A62-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{3247D170-B5C7-11E3-8A62-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
{6424539A-BA67-11E3-A234-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|x64
|
||||
{6424539A-BA67-11E3-A234-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{6424539A-BA67-11E3-A234-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{6424539A-BA67-11E3-A234-24FD5238C490}.Release|Win32.ActiveCfg = Release|x64
|
||||
{6424539A-BA67-11E3-A234-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{6424539A-BA67-11E3-A234-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
{6429D25C-BA67-11E3-99ED-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|x64
|
||||
{6429D25C-BA67-11E3-99ED-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{6429D25C-BA67-11E3-99ED-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{6429D25C-BA67-11E3-99ED-24FD5238C490}.Release|Win32.ActiveCfg = Release|x64
|
||||
{6429D25C-BA67-11E3-99ED-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{6429D25C-BA67-11E3-99ED-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
{64616226-BA67-11E3-B58A-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{64616226-BA67-11E3-B58A-24FD5238C490}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{64616226-BA67-11E3-B58A-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{64616226-BA67-11E3-B58A-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{64616226-BA67-11E3-B58A-24FD5238C490}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{64616226-BA67-11E3-B58A-24FD5238C490}.Release|Win32.Build.0 = Release|Win32
|
||||
{64616226-BA67-11E3-B58A-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{64616226-BA67-11E3-B58A-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
{642FED70-BA67-11E3-9442-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|x64
|
||||
{642FED70-BA67-11E3-9442-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{642FED70-BA67-11E3-9442-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{642FED70-BA67-11E3-9442-24FD5238C490}.Release|Win32.ActiveCfg = Release|x64
|
||||
{642FED70-BA67-11E3-9442-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{642FED70-BA67-11E3-9442-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
{6435933A-BA67-11E3-80EC-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|x64
|
||||
{6435933A-BA67-11E3-80EC-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{6435933A-BA67-11E3-80EC-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{6435933A-BA67-11E3-80EC-24FD5238C490}.Release|Win32.ActiveCfg = Release|x64
|
||||
{6435933A-BA67-11E3-80EC-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{6435933A-BA67-11E3-80EC-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
{643B6026-BA67-11E3-9965-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|x64
|
||||
{643B6026-BA67-11E3-9965-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{643B6026-BA67-11E3-9965-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{643B6026-BA67-11E3-9965-24FD5238C490}.Release|Win32.ActiveCfg = Release|x64
|
||||
{643B6026-BA67-11E3-9965-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{643B6026-BA67-11E3-9965-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
{6441A25E-BA67-11E3-B8C7-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|x64
|
||||
{6441A25E-BA67-11E3-B8C7-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{6441A25E-BA67-11E3-B8C7-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{6441A25E-BA67-11E3-B8C7-24FD5238C490}.Release|Win32.ActiveCfg = Release|x64
|
||||
{6441A25E-BA67-11E3-B8C7-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{6441A25E-BA67-11E3-B8C7-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
{640F6A3E-BA67-11E3-9A67-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{640F6A3E-BA67-11E3-9A67-24FD5238C490}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{640F6A3E-BA67-11E3-9A67-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{640F6A3E-BA67-11E3-9A67-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{640F6A3E-BA67-11E3-9A67-24FD5238C490}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{640F6A3E-BA67-11E3-9A67-24FD5238C490}.Release|Win32.Build.0 = Release|Win32
|
||||
{640F6A3E-BA67-11E3-9A67-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{640F6A3E-BA67-11E3-9A67-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
{640668A8-BA67-11E3-9D8E-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{640668A8-BA67-11E3-9D8E-24FD5238C490}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{640668A8-BA67-11E3-9D8E-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{640668A8-BA67-11E3-9D8E-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{640668A8-BA67-11E3-9D8E-24FD5238C490}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{640668A8-BA67-11E3-9D8E-24FD5238C490}.Release|Win32.Build.0 = Release|Win32
|
||||
{640668A8-BA67-11E3-9D8E-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{640668A8-BA67-11E3-9D8E-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
{6417F686-BA67-11E3-8727-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{6417F686-BA67-11E3-8727-24FD5238C490}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{6417F686-BA67-11E3-8727-24FD5238C490}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{6417F686-BA67-11E3-8727-24FD5238C490}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{6417F686-BA67-11E3-8727-24FD5238C490}.Release|Win32.Build.0 = Release|Win32
|
||||
{6417F686-BA67-11E3-8727-24FD5238C490}.Release|x64.ActiveCfg = Release|Win32
|
||||
{641E38A2-BA67-11E3-8B68-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{641E38A2-BA67-11E3-8B68-24FD5238C490}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{641E38A2-BA67-11E3-8B68-24FD5238C490}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{641E38A2-BA67-11E3-8B68-24FD5238C490}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{641E38A2-BA67-11E3-8B68-24FD5238C490}.Release|Win32.Build.0 = Release|Win32
|
||||
{641E38A2-BA67-11E3-8B68-24FD5238C490}.Release|x64.ActiveCfg = Release|Win32
|
||||
{6447963E-BA67-11E3-B03E-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|x64
|
||||
{6447963E-BA67-11E3-B03E-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{6447963E-BA67-11E3-B03E-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{6447963E-BA67-11E3-B03E-24FD5238C490}.Release|Win32.ActiveCfg = Release|x64
|
||||
{6447963E-BA67-11E3-B03E-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{6447963E-BA67-11E3-B03E-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
{644D8A3A-BA67-11E3-A7F3-24FD5238C490}.Debug|Win32.ActiveCfg = Debug|x64
|
||||
{644D8A3A-BA67-11E3-A7F3-24FD5238C490}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{644D8A3A-BA67-11E3-A7F3-24FD5238C490}.Debug|x64.Build.0 = Debug|x64
|
||||
{644D8A3A-BA67-11E3-A7F3-24FD5238C490}.Release|Win32.ActiveCfg = Release|x64
|
||||
{644D8A3A-BA67-11E3-A7F3-24FD5238C490}.Release|x64.ActiveCfg = Release|x64
|
||||
{644D8A3A-BA67-11E3-A7F3-24FD5238C490}.Release|x64.Build.0 = Release|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
@ -20,7 +20,7 @@ along with the MPIR Library. If not, see http://www.gnu.org/licenses/.
|
||||
using System;
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
|
||||
namespace MPIR.Tests.HugeRationalTests
|
||||
namespace MPIR.Tests.HugeFloatTests
|
||||
{
|
||||
[TestClass]
|
||||
public class Arithmetic
|
||||
@ -28,11 +28,11 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
#region Add
|
||||
|
||||
[TestMethod]
|
||||
public void RationalAddHugeRational()
|
||||
public void FloatAddHugeFloat()
|
||||
{
|
||||
using (var a = new HugeRational("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var b = new HugeRational("222987435987982730594288574029879874539/590872612825179551336102196593"))
|
||||
using (var c = new HugeRational(a + b))
|
||||
using (var a = new HugeFloat("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var b = new HugeFloat("222987435987982730594288574029879874539/590872612825179551336102196593"))
|
||||
using (var c = new HugeFloat(a + b))
|
||||
{
|
||||
Assert.AreEqual(a.Numerator * b.Denominator + b.Numerator * a.Denominator, c.Numerator);
|
||||
Assert.AreEqual(a.Denominator * b.Denominator, c.Denominator);
|
||||
@ -40,11 +40,11 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalAddHugeInt()
|
||||
public void FloatAddHugeInt()
|
||||
{
|
||||
using (var a = new HugeRational("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var a = new HugeFloat("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var b = new HugeInt("222987435987982730594288574029879874539"))
|
||||
using (var c = new HugeRational(a + b))
|
||||
using (var c = new HugeFloat(a + b))
|
||||
{
|
||||
Assert.AreEqual(a.Numerator + b * a.Denominator, c.Numerator);
|
||||
Assert.AreEqual(a.Denominator, c.Denominator);
|
||||
@ -55,10 +55,10 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalAddLimb()
|
||||
public void FloatAddLimb()
|
||||
{
|
||||
using (var a = new HugeRational("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var c = new HugeRational())
|
||||
using (var a = new HugeFloat("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var c = new HugeFloat())
|
||||
{
|
||||
var b = 4288574029879874539UL;
|
||||
c.Value = a + b;
|
||||
@ -68,10 +68,10 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalAddToLimb()
|
||||
public void FloatAddToLimb()
|
||||
{
|
||||
using (var a = new HugeRational("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var c = new HugeRational())
|
||||
using (var a = new HugeFloat("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var c = new HugeFloat())
|
||||
{
|
||||
var b = 4288574029879874539UL;
|
||||
c.Value = b + a;
|
||||
@ -81,10 +81,10 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalAddSignedLimb()
|
||||
public void FloatAddSignedLimb()
|
||||
{
|
||||
using (var a = new HugeRational("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var c = new HugeRational())
|
||||
using (var a = new HugeFloat("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var c = new HugeFloat())
|
||||
{
|
||||
var b = -4288574029879874539L;
|
||||
c.Value = a + b;
|
||||
@ -94,10 +94,10 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalAddToSignedLimb()
|
||||
public void FloatAddToSignedLimb()
|
||||
{
|
||||
using (var a = new HugeRational("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var c = new HugeRational())
|
||||
using (var a = new HugeFloat("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var c = new HugeFloat())
|
||||
{
|
||||
var b = -4288574029879874539L;
|
||||
c.Value = b + a;
|
||||
@ -107,10 +107,10 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalAddToMaxSignedLimb()
|
||||
public void FloatAddToMaxSignedLimb()
|
||||
{
|
||||
using (var a = new HugeRational("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var c = new HugeRational())
|
||||
using (var a = new HugeFloat("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var c = new HugeFloat())
|
||||
{
|
||||
var b = long.MinValue;
|
||||
c.Value = b + a;
|
||||
@ -120,11 +120,11 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalAddExpressionHugeRational()
|
||||
public void FloatAddExpressionHugeFloat()
|
||||
{
|
||||
using (var a = new HugeRational("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var b = new HugeRational("222987435987982730594288574029879874539/590872612825179551336102196593"))
|
||||
using (var c = new HugeRational())
|
||||
using (var a = new HugeFloat("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var b = new HugeFloat("222987435987982730594288574029879874539/590872612825179551336102196593"))
|
||||
using (var c = new HugeFloat())
|
||||
{
|
||||
c.Value = 1 + (a + b);
|
||||
Assert.AreEqual(a.Numerator * b.Denominator + b.Numerator * a.Denominator + a.Denominator * b.Denominator, c.Numerator);
|
||||
@ -137,11 +137,11 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
#region Subtract
|
||||
|
||||
[TestMethod]
|
||||
public void RationalSubtractHugeRational()
|
||||
public void FloatSubtractHugeFloat()
|
||||
{
|
||||
using (var a = new HugeRational("445497268491433028939318409770173720259/115756986668303657898962467957"))
|
||||
using (var b = new HugeRational("222987435987982730594288574029879874539/590872612825179551336102196593"))
|
||||
using (var c = new HugeRational(a - b))
|
||||
using (var a = new HugeFloat("445497268491433028939318409770173720259/115756986668303657898962467957"))
|
||||
using (var b = new HugeFloat("222987435987982730594288574029879874539/590872612825179551336102196593"))
|
||||
using (var c = new HugeFloat(a - b))
|
||||
{
|
||||
Assert.AreEqual(a.Numerator * b.Denominator - b.Numerator * a.Denominator, c.Numerator);
|
||||
Assert.AreEqual(a.Denominator * b.Denominator, c.Denominator);
|
||||
@ -149,11 +149,11 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalSubtractHugeInt()
|
||||
public void FloatSubtractHugeInt()
|
||||
{
|
||||
using (var a = new HugeRational("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var a = new HugeFloat("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var b = new HugeInt("222987435987982730594288574029879874539"))
|
||||
using (var c = new HugeRational(a - b))
|
||||
using (var c = new HugeFloat(a - b))
|
||||
{
|
||||
Assert.AreEqual(a.Numerator - b * a.Denominator, c.Numerator);
|
||||
Assert.AreEqual(a.Denominator, c.Denominator);
|
||||
@ -164,11 +164,11 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalSubtractLimb()
|
||||
public void FloatSubtractLimb()
|
||||
{
|
||||
var b = 4288574029879874539UL;
|
||||
using (var a = new HugeRational("222509832503450298349318409770173720259/115756986668303657898962467957"))
|
||||
using (var c = new HugeRational(a - b))
|
||||
using (var a = new HugeFloat("222509832503450298349318409770173720259/115756986668303657898962467957"))
|
||||
using (var c = new HugeFloat(a - b))
|
||||
{
|
||||
Assert.AreEqual(a.Numerator - b * a.Denominator, c.Numerator);
|
||||
Assert.AreEqual(a.Denominator, c.Denominator);
|
||||
@ -176,11 +176,11 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalSubtractFromLimb()
|
||||
public void FloatSubtractFromLimb()
|
||||
{
|
||||
var b = 4288574029879874539UL;
|
||||
using (var a = new HugeRational("222509832503450298349318409770173720259/115756986668303657898962467957"))
|
||||
using (var c = new HugeRational(b - a))
|
||||
using (var a = new HugeFloat("222509832503450298349318409770173720259/115756986668303657898962467957"))
|
||||
using (var c = new HugeFloat(b - a))
|
||||
{
|
||||
Assert.AreEqual(b * a.Denominator - a.Numerator, c.Numerator);
|
||||
Assert.AreEqual(a.Denominator, c.Denominator);
|
||||
@ -188,11 +188,11 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalSubtractPositiveSignedLimb()
|
||||
public void FloatSubtractPositiveSignedLimb()
|
||||
{
|
||||
var b = 4288574029879874539L;
|
||||
using (var a = new HugeRational("222509832503450298349318409770173720259/115756986668303657898962467957"))
|
||||
using (var c = new HugeRational(a - b))
|
||||
using (var a = new HugeFloat("222509832503450298349318409770173720259/115756986668303657898962467957"))
|
||||
using (var c = new HugeFloat(a - b))
|
||||
{
|
||||
Assert.AreEqual(a.Numerator - b * a.Denominator, c.Numerator);
|
||||
Assert.AreEqual(a.Denominator, c.Denominator);
|
||||
@ -200,11 +200,11 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalSubtractFromPositiveSignedLimb()
|
||||
public void FloatSubtractFromPositiveSignedLimb()
|
||||
{
|
||||
var b = 4288574029879874539L;
|
||||
using (var a = new HugeRational("222509832503450298349318409770173720259/115756986668303657898962467957"))
|
||||
using (var c = new HugeRational(a - b))
|
||||
using (var a = new HugeFloat("222509832503450298349318409770173720259/115756986668303657898962467957"))
|
||||
using (var c = new HugeFloat(a - b))
|
||||
{
|
||||
Assert.AreEqual(a.Numerator - b * a.Denominator, c.Numerator);
|
||||
Assert.AreEqual(a.Denominator, c.Denominator);
|
||||
@ -212,11 +212,11 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalSubtractSignedLimb()
|
||||
public void FloatSubtractSignedLimb()
|
||||
{
|
||||
var b = -4288574029879874539L;
|
||||
using (var a = new HugeRational("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var c = new HugeRational(a - b))
|
||||
using (var a = new HugeFloat("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var c = new HugeFloat(a - b))
|
||||
{
|
||||
Assert.AreEqual(a.Numerator - b * a.Denominator, c.Numerator);
|
||||
Assert.AreEqual(a.Denominator, c.Denominator);
|
||||
@ -224,11 +224,11 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalSubtractFromSignedLimb()
|
||||
public void FloatSubtractFromSignedLimb()
|
||||
{
|
||||
var b = -4288574029879874539L;
|
||||
using (var a = new HugeRational("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var c = new HugeRational(b - a))
|
||||
using (var a = new HugeFloat("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var c = new HugeFloat(b - a))
|
||||
{
|
||||
Assert.AreEqual(b * a.Denominator - a.Numerator, c.Numerator);
|
||||
Assert.AreEqual(a.Denominator, c.Denominator);
|
||||
@ -240,11 +240,11 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
#region Multiply
|
||||
|
||||
[TestMethod]
|
||||
public void RationalMultiplyByHugeRational()
|
||||
public void FloatMultiplyByHugeFloat()
|
||||
{
|
||||
using (var a = new HugeRational("90234098723098475098479385345098345/115756986668303657898962467957"))
|
||||
using (var b = new HugeRational("7859487359873459872354987610987897/590872612825179551336102196593"))
|
||||
using (var c = new HugeRational(a * b))
|
||||
using (var a = new HugeFloat("90234098723098475098479385345098345/115756986668303657898962467957"))
|
||||
using (var b = new HugeFloat("7859487359873459872354987610987897/590872612825179551336102196593"))
|
||||
using (var c = new HugeFloat(a * b))
|
||||
{
|
||||
Assert.AreEqual(a.Numerator * b.Numerator, c.Numerator);
|
||||
Assert.AreEqual(a.Denominator * b.Denominator, c.Denominator);
|
||||
@ -252,11 +252,11 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalMultiplytHugeInt()
|
||||
public void FloatMultiplytHugeInt()
|
||||
{
|
||||
using (var a = new HugeRational("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var a = new HugeFloat("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var b = new HugeInt("222987435987982730594288574029879874539"))
|
||||
using (var c = new HugeRational(a * b))
|
||||
using (var c = new HugeFloat(a * b))
|
||||
{
|
||||
Assert.AreEqual(a.Numerator * b, c.Numerator);
|
||||
Assert.AreEqual(a.Denominator, c.Denominator);
|
||||
@ -267,9 +267,9 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalMultiplyByLimb()
|
||||
public void FloatMultiplyByLimb()
|
||||
{
|
||||
using (var a = new HugeRational("90234098723098475098479385345098345/115756986668303657898962467957"))
|
||||
using (var a = new HugeFloat("90234098723098475098479385345098345/115756986668303657898962467957"))
|
||||
{
|
||||
ulong b = 17390538260286101342;
|
||||
a.Value = a * b;
|
||||
@ -278,9 +278,9 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalMultiplyLimbBy()
|
||||
public void FloatMultiplyLimbBy()
|
||||
{
|
||||
using (var a = new HugeRational("90234098723098475098479385345098345/115756986668303657898962467957"))
|
||||
using (var a = new HugeFloat("90234098723098475098479385345098345/115756986668303657898962467957"))
|
||||
{
|
||||
ulong b = 17390538260286101342;
|
||||
a.Value = b * a;
|
||||
@ -289,9 +289,9 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalMultiplyBySignedLimb()
|
||||
public void FloatMultiplyBySignedLimb()
|
||||
{
|
||||
using (var a = new HugeRational("90234098723098475098479385345098345/115756986668303657898962467957"))
|
||||
using (var a = new HugeFloat("90234098723098475098479385345098345/115756986668303657898962467957"))
|
||||
{
|
||||
long b = -7390538260286101342;
|
||||
a.Value = a * b;
|
||||
@ -300,9 +300,9 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalMultiplySignedLimbBy()
|
||||
public void FloatMultiplySignedLimbBy()
|
||||
{
|
||||
using (var a = new HugeRational("90234098723098475098479385345098345/115756986668303657898962467957"))
|
||||
using (var a = new HugeFloat("90234098723098475098479385345098345/115756986668303657898962467957"))
|
||||
{
|
||||
long b = -7390538260286101342;
|
||||
a.Value = b * a;
|
||||
@ -315,9 +315,9 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
#region Shift Left
|
||||
|
||||
[TestMethod]
|
||||
public void RationalShiftLeft()
|
||||
public void FloatShiftLeft()
|
||||
{
|
||||
using (var a = new HugeRational("-12345700987ABCDEF2345CBDEFA245230948/17607EF654EB9A13FFA163C75", 16))
|
||||
using (var a = new HugeFloat("-12345700987ABCDEF2345CBDEFA245230948/17607EF654EB9A13FFA163C75", 16))
|
||||
{
|
||||
ulong b = 40;
|
||||
a.Value = a << b;
|
||||
@ -330,9 +330,9 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
#region Shift Right
|
||||
|
||||
[TestMethod]
|
||||
public void RationalShiftRight()
|
||||
public void FloatShiftRight()
|
||||
{
|
||||
using (var a = new HugeRational("ABCDEF052834524092854092874502983745029345723098457209305983434345/17607EF654EB9A13FFA163C75", 16))
|
||||
using (var a = new HugeFloat("ABCDEF052834524092854092874502983745029345723098457209305983434345/17607EF654EB9A13FFA163C75", 16))
|
||||
{
|
||||
ulong b = 96;
|
||||
a.Value = a >> b;
|
||||
@ -345,9 +345,9 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
#region Negate
|
||||
|
||||
[TestMethod]
|
||||
public void RationalNegate()
|
||||
public void FloatNegate()
|
||||
{
|
||||
using (var a = new HugeRational("24092854092874502983745029345723098457209/115756986668303657898962467957"))
|
||||
using (var a = new HugeFloat("24092854092874502983745029345723098457209/115756986668303657898962467957"))
|
||||
{
|
||||
a.Value = -a;
|
||||
Assert.AreEqual("-24092854092874502983745029345723098457209/115756986668303657898962467957", a.ToString());
|
||||
@ -361,9 +361,9 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
#region Abs
|
||||
|
||||
[TestMethod]
|
||||
public void RationalMakeAbsolute()
|
||||
public void FloatMakeAbsolute()
|
||||
{
|
||||
using (var a = new HugeRational("-24092854092874502983745029345723098457209/115756986668303657898962467957"))
|
||||
using (var a = new HugeFloat("-24092854092874502983745029345723098457209/115756986668303657898962467957"))
|
||||
{
|
||||
a.Value = a.Abs();
|
||||
Assert.AreEqual("24092854092874502983745029345723098457209/115756986668303657898962467957", a.ToString());
|
||||
@ -377,9 +377,9 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
#region Invert
|
||||
|
||||
[TestMethod]
|
||||
public void RationalInvert()
|
||||
public void FloatInvert()
|
||||
{
|
||||
using(var a = new HugeRational("-24092854092874502983745029345723098457209/115756986668303657898962467957"))
|
||||
using(var a = new HugeFloat("-24092854092874502983745029345723098457209/115756986668303657898962467957"))
|
||||
{
|
||||
a.Value = a.Invert();
|
||||
Assert.AreEqual("-115756986668303657898962467957/24092854092874502983745029345723098457209", a.ToString());
|
||||
@ -393,11 +393,11 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
#region Power
|
||||
|
||||
[TestMethod]
|
||||
public void RationalPower()
|
||||
public void FloatPower()
|
||||
{
|
||||
using(var n = new HugeInt("-24092854092874502983745029345723098457209"))
|
||||
using(var d = new HugeInt("115756986668303657898962467957"))
|
||||
using(var a = new HugeRational(n, d))
|
||||
using(var a = new HugeFloat(n, d))
|
||||
{
|
||||
a.Value = a ^ 5;
|
||||
Assert.AreEqual(n ^ 5, a.Numerator);
|
||||
@ -412,10 +412,10 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
#region Int
|
||||
|
||||
[TestMethod]
|
||||
public void RationalDivideHugeRational()
|
||||
public void FloatDivideHugeFloat()
|
||||
{
|
||||
using (var a = new HugeRational("115756986668303657898962467957/394580293847502987609283945873594873409587"))
|
||||
using (var b = new HugeRational("593169091750307653294"))
|
||||
using (var a = new HugeFloat("115756986668303657898962467957/394580293847502987609283945873594873409587"))
|
||||
using (var b = new HugeFloat("593169091750307653294"))
|
||||
{
|
||||
a.Value = a / b;
|
||||
Assert.AreEqual("115756986668303657898962467957/234052834524092854092760134269509268758750275703033222451729578", a.ToString());
|
||||
@ -423,11 +423,11 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalDivideHugeRational2()
|
||||
public void FloatDivideHugeFloat2()
|
||||
{
|
||||
using (var a = new HugeRational("90234098723098475098479385345098345/115756986668303657898962467957"))
|
||||
using (var b = new HugeRational("6847944682037444681162770672798288913849/590872612825179551336102196593"))
|
||||
using (var c = new HugeRational(a / b))
|
||||
using (var a = new HugeFloat("90234098723098475098479385345098345/115756986668303657898962467957"))
|
||||
using (var b = new HugeFloat("6847944682037444681162770672798288913849/590872612825179551336102196593"))
|
||||
using (var c = new HugeFloat(a / b))
|
||||
{
|
||||
Assert.AreEqual(a.Numerator * b.Denominator, c.Numerator);
|
||||
Assert.AreEqual(a.Denominator * b.Numerator, c.Denominator);
|
||||
@ -435,12 +435,12 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalDivideHugeInt()
|
||||
public void FloatDivideHugeInt()
|
||||
{
|
||||
using (var a = new HugeRational("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var a = new HugeFloat("222509832503450298345029835740293845720/115756986668303657898962467957"))
|
||||
using (var b = new HugeInt("222987435987982730594288574029879874539"))
|
||||
using (var c = new HugeRational(a / b))
|
||||
using (var d = new HugeRational())
|
||||
using (var c = new HugeFloat(a / b))
|
||||
using (var d = new HugeFloat())
|
||||
{
|
||||
Assert.AreEqual(a.Numerator, c.Numerator);
|
||||
Assert.AreEqual(a.Denominator * b, c.Denominator);
|
||||
@ -457,9 +457,9 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
#region Limb
|
||||
|
||||
[TestMethod]
|
||||
public void RationalDivideLimb()
|
||||
public void FloatDivideLimb()
|
||||
{
|
||||
using (var a = new HugeRational("115756986668303657898962467957/39458029384750298767200622330399462537522498"))
|
||||
using (var a = new HugeFloat("115756986668303657898962467957/39458029384750298767200622330399462537522498"))
|
||||
{
|
||||
ulong b = 5931690917503076532;
|
||||
a.Value = a / b;
|
||||
@ -468,9 +468,9 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalDivideSignedLimb()
|
||||
public void FloatDivideSignedLimb()
|
||||
{
|
||||
using(var a = new HugeRational("115756986668303657898962467957/39458029384750298767200622330399462537522498"))
|
||||
using(var a = new HugeFloat("115756986668303657898962467957/39458029384750298767200622330399462537522498"))
|
||||
{
|
||||
long b = -5931690917503076532;
|
||||
a.Value = a / b;
|
||||
@ -479,9 +479,9 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalDivideLimbBy()
|
||||
public void FloatDivideLimbBy()
|
||||
{
|
||||
using(var a = new HugeRational("115756986668303657898962467957/39458029384750298767200622330399462537522498"))
|
||||
using(var a = new HugeFloat("115756986668303657898962467957/39458029384750298767200622330399462537522498"))
|
||||
{
|
||||
ulong b = 5931690917503076532;
|
||||
a.Value = b / a;
|
||||
@ -490,9 +490,9 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalDivideSignedLimbBy()
|
||||
public void FloatDivideSignedLimbBy()
|
||||
{
|
||||
using(var a = new HugeRational("115756986668303657898962467957/39458029384750298767200622330399462537522498"))
|
||||
using(var a = new HugeFloat("115756986668303657898962467957/39458029384750298767200622330399462537522498"))
|
||||
{
|
||||
long b = -5931690917503076532;
|
||||
a.Value = b / a;
|
||||
|
@ -25,22 +25,22 @@ using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
|
||||
namespace MPIR.Tests.HugeRationalTests
|
||||
namespace MPIR.Tests.HugeFloatTests
|
||||
{
|
||||
[TestClass]
|
||||
public class ExpressionTests
|
||||
{
|
||||
[TestMethod]
|
||||
public void RationalTestAllExpressions()
|
||||
public void FloatTestAllExpressions()
|
||||
{
|
||||
var baseExpr = typeof(RationalExpression);
|
||||
var baseExpr = typeof(FloatExpression);
|
||||
var allExpressions =
|
||||
baseExpr.Assembly.GetTypes()
|
||||
.Where(x => baseExpr.IsAssignableFrom(x) && !x.IsAbstract)
|
||||
.ToList();
|
||||
|
||||
using (var a = new HugeRational(-9, 1))
|
||||
using (var b = new HugeRational(4, 1))
|
||||
using (var a = new HugeFloat(-9, 1))
|
||||
using (var b = new HugeFloat(4, 1))
|
||||
using (var c = new HugeInt(3))
|
||||
using (var r = MpirRandom.Default())
|
||||
{
|
||||
@ -68,25 +68,25 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
allExpressions.Select(x => Environment.NewLine + x.Name).OrderBy(x => x)));
|
||||
}
|
||||
|
||||
private void VerifyPartialResult(MpirRandom rnd, RationalExpression expr, long expected)
|
||||
private void VerifyPartialResult(MpirRandom rnd, FloatExpression expr, long expected)
|
||||
{
|
||||
rnd.Seed(123);
|
||||
|
||||
using (var r = new HugeRational())
|
||||
using (var r = new HugeFloat())
|
||||
{
|
||||
r.Value = expr;
|
||||
Assert.AreEqual(expected.ToString() + "/1", r.ToString());
|
||||
}
|
||||
}
|
||||
|
||||
private void MarkExpressionsUsed(List<Type> allExpressions, RationalExpression expr)
|
||||
private void MarkExpressionsUsed(List<Type> allExpressions, FloatExpression expr)
|
||||
{
|
||||
var type = expr.GetType();
|
||||
allExpressions.Remove(type);
|
||||
|
||||
var children = type.GetFields(BindingFlags.NonPublic | BindingFlags.Instance)
|
||||
.Where(x => typeof(RationalExpression).IsAssignableFrom(x.FieldType))
|
||||
.Select(x => (RationalExpression)x.GetValue(expr))
|
||||
.Where(x => typeof(FloatExpression).IsAssignableFrom(x.FieldType))
|
||||
.Select(x => (FloatExpression)x.GetValue(expr))
|
||||
.Where(x => x != null)
|
||||
.ToList();
|
||||
|
||||
|
@ -23,16 +23,16 @@ using System.Text;
|
||||
using System.Linq;
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
|
||||
namespace MPIR.Tests.HugeRationalTests
|
||||
namespace MPIR.Tests.HugeFloatTests
|
||||
{
|
||||
[TestClass]
|
||||
public class IO
|
||||
{
|
||||
[TestMethod]
|
||||
public void RationalInputOutputRaw()
|
||||
public void FloatInputOutputRaw()
|
||||
{
|
||||
using (var a = new HugeRational("0x10123456789ABCDEF0123456789ABCDEF0123456789ABCDEF/361720912810755408215708460645842859722715865206816237944587"))
|
||||
using (var b = new HugeRational())
|
||||
using (var a = new HugeFloat("0x10123456789ABCDEF0123456789ABCDEF0123456789ABCDEF/361720912810755408215708460645842859722715865206816237944587"))
|
||||
using (var b = new HugeFloat())
|
||||
using (var ms = new MemoryStream())
|
||||
{
|
||||
a.Value = a ^ 100;
|
||||
@ -45,10 +45,10 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalInputOutputStr()
|
||||
public void FloatInputOutputStr()
|
||||
{
|
||||
using (var a = new HugeRational("0x10123456789ABCDEF0123456789ABCDEF0123456789ABCDEF/361720912810755408215708460645842859722715865206816237944587"))
|
||||
using (var b = new HugeRational())
|
||||
using (var a = new HugeFloat("0x10123456789ABCDEF0123456789ABCDEF0123456789ABCDEF/361720912810755408215708460645842859722715865206816237944587"))
|
||||
using (var b = new HugeFloat())
|
||||
using (var ms = new MemoryStream())
|
||||
{
|
||||
a.Value = a ^ 100;
|
||||
@ -66,10 +66,10 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalInputOutputStrHex()
|
||||
public void FloatInputOutputStrHex()
|
||||
{
|
||||
using (var a = new HugeRational("0x10123456789ABCDEF0123456789ABCDEF0123456789ABCDEF/361720912810755408215708460645842859722715865206816237944587"))
|
||||
using (var b = new HugeRational())
|
||||
using (var a = new HugeFloat("0x10123456789ABCDEF0123456789ABCDEF0123456789ABCDEF/361720912810755408215708460645842859722715865206816237944587"))
|
||||
using (var b = new HugeFloat())
|
||||
using (var ms = new MemoryStream())
|
||||
{
|
||||
a.Value = a ^ 100;
|
||||
@ -88,10 +88,10 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalInputOutputStrHexPrefix()
|
||||
public void FloatInputOutputStrHexPrefix()
|
||||
{
|
||||
using (var a = new HugeRational("0x10123456789ABCDEF0123456789ABCDEF0123456789ABCDEF/361720912810755408215708460645842859722715865206816237944587"))
|
||||
using (var b = new HugeRational())
|
||||
using (var a = new HugeFloat("0x10123456789ABCDEF0123456789ABCDEF0123456789ABCDEF/361720912810755408215708460645842859722715865206816237944587"))
|
||||
using (var b = new HugeFloat())
|
||||
using (var ms = new MemoryStream())
|
||||
{
|
||||
a.Value = a ^ 100;
|
||||
@ -114,10 +114,10 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalInputOutputStrHexLower()
|
||||
public void FloatInputOutputStrHexLower()
|
||||
{
|
||||
using (var a = new HugeRational("0x10123456789ABCDEF0123456789ABCDEF0123456789ABCDEF/361720912810755408215708460645842859722715865206816237944587"))
|
||||
using (var b = new HugeRational())
|
||||
using (var a = new HugeFloat("0x10123456789ABCDEF0123456789ABCDEF0123456789ABCDEF/361720912810755408215708460645842859722715865206816237944587"))
|
||||
using (var b = new HugeFloat())
|
||||
using (var ms = new MemoryStream())
|
||||
{
|
||||
a.Value = a ^ 100;
|
||||
@ -135,10 +135,10 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalInputOutputStrOctal()
|
||||
public void FloatInputOutputStrOctal()
|
||||
{
|
||||
using (var a = new HugeRational("0x10123456789ABCDEF0123456789ABCDEF0123456789ABCDEF/361720912810755408215708460645842859722715865206816237944587"))
|
||||
using (var b = new HugeRational())
|
||||
using (var a = new HugeFloat("0x10123456789ABCDEF0123456789ABCDEF0123456789ABCDEF/361720912810755408215708460645842859722715865206816237944587"))
|
||||
using (var b = new HugeFloat())
|
||||
using (var ms = new MemoryStream())
|
||||
{
|
||||
a.Value = a ^ 100;
|
||||
@ -157,10 +157,10 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalInputOutputStrBinary()
|
||||
public void FloatInputOutputStrBinary()
|
||||
{
|
||||
using (var a = new HugeRational("0x10123456789ABCDEF0123456789ABCDEF0123456789ABCDEF/361720912810755408215708460645842859722715865206816237944587"))
|
||||
using (var b = new HugeRational())
|
||||
using (var a = new HugeFloat("0x10123456789ABCDEF0123456789ABCDEF0123456789ABCDEF/361720912810755408215708460645842859722715865206816237944587"))
|
||||
using (var b = new HugeFloat())
|
||||
using (var ms = new MemoryStream())
|
||||
{
|
||||
a.Value = a ^ 100;
|
||||
@ -179,10 +179,10 @@ namespace MPIR.Tests.HugeRationalTests
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void RationalInputOutputStr62()
|
||||
public void FloatInputOutputStr62()
|
||||
{
|
||||
using (var a = new HugeRational("0x10123456789ABCDEF0123456789ABCDEF0123456789ABCDEF/361720912810755408215708460645842859722715865206816237944587"))
|
||||
using (var b = new HugeRational())
|
||||
using (var a = new HugeFloat("0x10123456789ABCDEF0123456789ABCDEF0123456789ABCDEF/361720912810755408215708460645842859722715865206816237944587"))
|
||||
using (var b = new HugeFloat())
|
||||
using (var ms = new MemoryStream())
|
||||
{
|
||||
a.Value = a ^ 100;
|
||||
|
Loading…
Reference in New Issue
Block a user