Fix wrong diameters ordered queries parse
This commit is contained in:
parent
1246b55fa5
commit
675c491d6f
@ -4,6 +4,7 @@ public class RautitanFittingsTests : ProductQueryModifierTests
|
||||
{
|
||||
[TestCase("Гильза 16", "Монтажная гильза 16")]
|
||||
[TestCase("Пресс-втулка 20", "Монтажная гильза 20")]
|
||||
[TestCase("UPONOR Q&E EVOLUTION КОЛЬЦО БЕЛОЕ 16 '900Ф", "Монтажная гильза 16")]
|
||||
public void SleeveTest(string query, string modified)
|
||||
=> Execute(productType: "Монтажная гильза", query, modified);
|
||||
|
||||
@ -19,6 +20,7 @@ public class RautitanFittingsTests : ProductQueryModifierTests
|
||||
|
||||
[TestCase("муфта 20", "Муфта соединительная равнопроходная 20")]
|
||||
[TestCase("переходник 20-16", "Муфта соединительная переходная 20-16")]
|
||||
[TestCase("переходник 16-20", "Муфта соединительная переходная 20-16")]
|
||||
[TestCase("Соединение труба-труба 20/20, бронза", "Муфта соединительная равнопроходная 20")]
|
||||
[TestCase("Муфта соединительная переходная 20x16 для труб из сшитого полиэтилена аксиальный", "Муфта соединительная переходная 20-16")]
|
||||
public void CouplingTest(string query, string modified)
|
||||
|
@ -5,19 +5,22 @@ public class Coupling : DrinkingWaterHeatingFitting
|
||||
protected override string _title => "Муфта соединительная";
|
||||
protected override string? BuildRhSolutionsName(string query)
|
||||
{
|
||||
var diameters = _diameter.Matches(query);
|
||||
if (diameters.Count == 0)
|
||||
var diametersMatches = _diameter.Matches(query);
|
||||
if (diametersMatches.Count == 0)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
if (diameters.Count < 2 ||
|
||||
diameters.Count > 1 && diameters[0].Groups["Diameter"].Value == diameters[1].Groups["Diameter"].Value)
|
||||
var diameters = diametersMatches.Select(x => x.Groups["Diameter"].Value)
|
||||
.Take(2)
|
||||
.OrderByDescending(x => int.Parse(x))
|
||||
.ToArray();
|
||||
if (diameters.Length == 1 || diameters[0] == diameters[1])
|
||||
{
|
||||
return $"{_title} равнопроходная {diameters[0].Groups["Diameter"]}";
|
||||
return $"{_title} равнопроходная {diameters[0]}";
|
||||
}
|
||||
else
|
||||
{
|
||||
return $"{_title} переходная {diameters[0].Groups["Diameter"]}-{diameters[1].Groups["Diameter"]}";
|
||||
return $"{_title} переходная {diameters[0]}-{diameters[1]}";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user