summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--RhSolutions.Api.Tests/RautitanFittingsTests.cs13
-rw-r--r--RhSolutions.QueryModifiers/DrinkingWaterHeatingFittings/BendFormerHeating.cs19
-rw-r--r--RhSolutions.QueryModifiers/ProductQueryModifierFactory.cs4
3 files changed, 30 insertions, 6 deletions
diff --git a/RhSolutions.Api.Tests/RautitanFittingsTests.cs b/RhSolutions.Api.Tests/RautitanFittingsTests.cs
index 6209d95..983467b 100644
--- a/RhSolutions.Api.Tests/RautitanFittingsTests.cs
+++ b/RhSolutions.Api.Tests/RautitanFittingsTests.cs
@@ -49,9 +49,14 @@ public class RautitanFittingsTests : ProductQueryModifierTests
public void ThreadTPieceExternalTest(string query, string modified)
=> Execute(productType: "Тройник RAUTITAN резьбовой наружный", query, modified);
- [TestCase("Фиксатор поворота трубы 16/17/90°, без колец (оцинк. сталь)", "Фиксатор поворота без колец 16/17/90°")]
- [TestCase("Дуга 90° 25", "Фиксатор поворота без колец 25/90°")]
- [TestCase("Дуга 90° r/d >= 2.5. Ø25 (767025)", "Фиксатор поворота без колец 25/90°")]
+ [TestCase("Фиксатор поворота трубы 16/17/90°, без колец (оцинк. сталь)", "Фиксатор поворота 16/17/90°")]
+ [TestCase("Дуга 90° 25", "Фиксатор поворота 25/90°")]
+ [TestCase("Дуга 90° r/d >= 2.5. Ø25 (767025)", "Фиксатор поворота 25/90°")]
public void BendFormerHeatingTest(string query, string modified)
- => Execute(productType: "Фиксатор поворота без колец", query, modified);
+ => Execute(productType: "Фиксатор поворота отопление", query, modified);
+
+ [TestCase("Фиксатор поворота с кольцами 90°, 32", "Фиксатор поворота с кольцами 90° 32")]
+ [TestCase("Фиксатор поворота с кольцами 45°, 16", "Фиксатор поворота с кольцами 45° 16")]
+ public void BendFormerDrinkingTest(string query, string modified)
+ => Execute(productType: "Фиксатор поворота водоснабжение", query, modified);
}
diff --git a/RhSolutions.QueryModifiers/DrinkingWaterHeatingFittings/BendFormerHeating.cs b/RhSolutions.QueryModifiers/DrinkingWaterHeatingFittings/BendFormerHeating.cs
index 9d17519..b20b76e 100644
--- a/RhSolutions.QueryModifiers/DrinkingWaterHeatingFittings/BendFormerHeating.cs
+++ b/RhSolutions.QueryModifiers/DrinkingWaterHeatingFittings/BendFormerHeating.cs
@@ -2,7 +2,7 @@
public class BendFormerHeating : DrinkingWaterHeatingFitting
{
- protected override string _title => "Фиксатор поворота без колец";
+ protected override string _title => "Фиксатор поворота";
protected override string? BuildRhSolutionsName(string query)
{
var diameterMatch = _diameter.Match(query);
@@ -20,3 +20,20 @@ public class BendFormerHeating : DrinkingWaterHeatingFitting
return $"{_title} {diameter}/{angle}°";
}
}
+
+public class BendFormerDrinking : DrinkingWaterHeatingFitting
+{
+ protected override string _title => "Фиксатор поворота с кольцами";
+ protected override string? BuildRhSolutionsName(string query)
+ {
+ var diameterMatch = _diameter.Match(query);
+ if (!diameterMatch.Success)
+ {
+ return null;
+ }
+ string diameter = diameterMatch.Groups["Diameter"].Value;
+ var angleMatch = _angle.Match(query);
+ string angle = angleMatch.Success ? angleMatch.Groups["Angle"].Value : "90";
+ return $"{_title} {angle}° {diameter}";
+ }
+}
diff --git a/RhSolutions.QueryModifiers/ProductQueryModifierFactory.cs b/RhSolutions.QueryModifiers/ProductQueryModifierFactory.cs
index c3252ff..f3d1485 100644
--- a/RhSolutions.QueryModifiers/ProductQueryModifierFactory.cs
+++ b/RhSolutions.QueryModifiers/ProductQueryModifierFactory.cs
@@ -33,8 +33,10 @@ public class ProductQueryModifierFactory
return new Coupling();
case "Угольник RAUTITAN":
return new ElbowModifier();
- case "Фиксатор поворота без колец":
+ case "Фиксатор поворота отопление":
return new BendFormerHeating();
+ case "Фиксатор поворота водоснабжение":
+ return new BendFormerDrinking();
case "Flex":
return new FlexPipe();
case "Pink":