summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--RhSolutions.Api.Tests/RautitanFittingsTests.cs8
-rw-r--r--RhSolutions.Api/Services/AdapterModifier.cs2
-rw-r--r--RhSolutions.Api/Services/ProductQueryModifierFactory.cs4
-rw-r--r--RhSolutions.Api/Services/ThreadElbowExternal.cs7
-rw-r--r--RhSolutions.Api/Services/ThreadElbowInternal.cs7
5 files changed, 27 insertions, 1 deletions
diff --git a/RhSolutions.Api.Tests/RautitanFittingsTests.cs b/RhSolutions.Api.Tests/RautitanFittingsTests.cs
index 51184ed..d97ba4a 100644
--- a/RhSolutions.Api.Tests/RautitanFittingsTests.cs
+++ b/RhSolutions.Api.Tests/RautitanFittingsTests.cs
@@ -20,4 +20,12 @@ public class RautitanFittingsTests : ProductQueryModifierTests
[TestCase("Угольник 90°, 40 PX", "Угольник RAUTITAN -PLATINUM 90 40")]
public void ElbowTest(string query, string modified)
=> Execute(productType: "Угольник RAUTITAN", query, modified);
+
+ [TestCase("Уголок соединительный с ниппелем 20 х 1/2'', бронза", "Угольник-переходник с наружной резьбой 20 1/2")]
+ public void ThreadElbowExternalTest(string query, string modified)
+ => Execute(productType: "Угольник с наружной резьбой", query, modified);
+
+ [TestCase("Уголок соединительный с муфтой 16 х 1/2\", бронза", "Угольник-переходник с внутренней резьбой 16 1/2")]
+ public void ThreadElbowInternalTest(string query, string modified)
+ => Execute(productType: "Угольник с внутренней резьбой", query, modified);
} \ No newline at end of file
diff --git a/RhSolutions.Api/Services/AdapterModifier.cs b/RhSolutions.Api/Services/AdapterModifier.cs
index ac4be85..bf5b2fa 100644
--- a/RhSolutions.Api/Services/AdapterModifier.cs
+++ b/RhSolutions.Api/Services/AdapterModifier.cs
@@ -4,7 +4,7 @@ using Microsoft.AspNetCore.Http.Extensions;
namespace RhSolutions.Api.Services
{
- public abstract class AdapterModifier : IProductQueryModifier
+ public abstract class AdapterModifier : IProductQueryModifier
{
protected string pattern { get; } =
@"(?<Diameter>\b16|20|25|32|40|50|63\b)\D+(?<Thread>\b1\s+1/4|1\s+1/2|1/2|3/4|2|1\b)";
diff --git a/RhSolutions.Api/Services/ProductQueryModifierFactory.cs b/RhSolutions.Api/Services/ProductQueryModifierFactory.cs
index f6f2222..6464709 100644
--- a/RhSolutions.Api/Services/ProductQueryModifierFactory.cs
+++ b/RhSolutions.Api/Services/ProductQueryModifierFactory.cs
@@ -16,6 +16,10 @@ public class ProductQueryModifierFactory
return new AdapterInternalModifier();
case "Переходник с накидной гайкой":
return new AdapterScrewcapModifier();
+ case "Угольник с наружной резьбой":
+ return new ThreadElbowExternal();
+ case "Угольник с внутренней резьбой":
+ return new ThreadElbowInternal();
case "Муфта соединительная":
return new CouplingModifier();
case "Угольник RAUTITAN":
diff --git a/RhSolutions.Api/Services/ThreadElbowExternal.cs b/RhSolutions.Api/Services/ThreadElbowExternal.cs
new file mode 100644
index 0000000..8a9dbc4
--- /dev/null
+++ b/RhSolutions.Api/Services/ThreadElbowExternal.cs
@@ -0,0 +1,7 @@
+namespace RhSolutions.Api.Services
+{
+ public class ThreadElbowExternal : AdapterModifier
+ {
+ protected override string name => "Угольник-переходник с наружной резьбой";
+ }
+}
diff --git a/RhSolutions.Api/Services/ThreadElbowInternal.cs b/RhSolutions.Api/Services/ThreadElbowInternal.cs
new file mode 100644
index 0000000..9ee3450
--- /dev/null
+++ b/RhSolutions.Api/Services/ThreadElbowInternal.cs
@@ -0,0 +1,7 @@
+namespace RhSolutions.Api.Services
+{
+ public class ThreadElbowInternal : AdapterModifier
+ {
+ protected override string name => "Угольник-переходник с внутренней резьбой";
+ }
+}