feat: drawing_add_diametral_dimension — упрочнение по ревью Codex реализации
#2: инвариант диаметра value>0 (value<=0||!IsFinite, не Abs<1e-6). #3: сообщение create_standard_views обобщено (номера видов для инструментов размеров). #4a: ToRadians проверяет конечность результата (переполнение). #5d: тест viewNumber:999 (вид не найден). #6: комментарий DimensionType переформулирован (COM-дефолт). Тесты: DrawingDiametralTests 4→5. Итого 141 unit + 77 integration = 218. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -98,4 +98,19 @@ public sealed class DrawingDiametralTests : IntegrationTestBase
|
||||
}
|
||||
finally { await _docs.CloseAsync(save: false); }
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task Unknown_view_number_throws()
|
||||
{
|
||||
var partFile = await BuildAndSaveBoxAsync();
|
||||
await _docs.CreateAsync(KompasDocumentType.Drawing);
|
||||
try
|
||||
{
|
||||
await _drawing.CreateStandardViewsAsync(partFile, 1.0, 100, 150);
|
||||
// Виды есть, но номер 999 не существует → ветка FindView "вид не найден".
|
||||
await Assert.ThrowsAsync<InvalidOperationException>(() =>
|
||||
_drawing.AddDiametralDimensionAsync(viewNumber: 999, xc: 0, yc: 0, radius: 10, angleDeg: 0));
|
||||
}
|
||||
finally { await _docs.CloseAsync(save: false); }
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user