feat(rebar): 확대기초 단면 그림에서 B1–B4와 B10-1 제외
- B1–B4 선, B2 다리선, B1–B4 풍선 제거 (그림에서만, 철근표·3D는 그대로) - B10-1 점과 풍선 제거, 범례의 B1–B4·B10 항목 제거 - 테스트 갱신 Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
61a8db916d
commit
77ad63fcbf
3 files changed
+31
-32
No files matched your search
@@ -19,10 +19,10 @@ describe('확대기초 교각축 직각 단면 (폭 W) (승인 2026-10-26, 추
|
||||
it('point and line counts match the rebar table families', () => {
|
||||
const cross = crossBars(L, W, H, fs);
|
||||
// B1–B4 run along W: one line per family in this section; B5–B8 run along L: points on the W grid (방향 교환).
|
||||
for (const name of ['B1', 'B2', 'B3', 'B4']) expect(countMark(svg, name.toLowerCase(), name)).toBe(1);
|
||||
for (const name of ['B1', 'B2', 'B3', 'B4']) expect(countMark(svg, name.toLowerCase(), name)).toBe(0); // B1–B4 are not drawn in this view (승인 2026-10-27)
|
||||
for (const name of ['B5', 'B6', 'B7', 'B8']) expect(countMark(svg, name.toLowerCase(), name)).toBe(cross.find((b) => b.name === name)!.count);
|
||||
expect(countMark(svg, 'b9', 'B9')).toBe(b9Bars(L, W, [], 2000, fs).rows);
|
||||
expect(countMark(svg, 'b10', 'B10-1')).toBe(sideBars(L, W, H, fs).find((b) => b.name === 'B10-1')!.count);
|
||||
expect(countMark(svg, 'b10', 'B10-1')).toBe(0); // B10-1 is not drawn in this view (승인 2026-10-27)
|
||||
expect(countMark(svg, 'b11', 'B11')).toBe(assemblyJs(H, fs).length);
|
||||
expect(countMark(svg, 'b12', 'B12')).toBe(assemblyBars(L, W, H, fs).find((b) => b.name === 'B12')!.count);
|
||||
expect(cross.length).toBe(4);
|
||||
@@ -35,7 +35,8 @@ describe('확대기초 교각축 직각 단면 (폭 W) (승인 2026-10-26, 추
|
||||
});
|
||||
|
||||
it('has one bubble per highlighted bar family', () => {
|
||||
for (const name of ['B1', 'B2', 'B3', 'B4', 'B5', 'B11', 'B10-1']) expect(svg).toContain(`data-bubble="${name}"`);
|
||||
for (const name of ['B5', 'B11']) expect(svg).toContain(`data-bubble="${name}"`);
|
||||
for (const name of ['B1', 'B2', 'B3', 'B4', 'B10-1']) expect(svg).not.toContain(`data-bubble="${name}"`);
|
||||
});
|
||||
|
||||
it('조립 철근은 격자 가운데에 놓임: 양끝 여유 차이 ≤ 1칸 (B11 n 79, B12 n 61, k 8, 엇갈림 2칸 유지)', () => {
|
||||
@@ -61,13 +62,14 @@ describe('확대기초 교각축 직각 단면 (폭 W) (승인 2026-10-26, 추
|
||||
it('2단계: B6 다리 주석 1723, 범례 5항목, 기둥과 말뚝 맥락 표시, 탭 4개 중 첫 탭만 작동', () => {
|
||||
expect(svg).toContain('B6 다리 → B5');
|
||||
expect(svg).toContain('높이 1723');
|
||||
for (const label of ['주철근 (B5–B8)', '직각·보조 (B1–B4)', '전단·띠 (B9)', '측면 수평 (B10-1 · B10-2)', '조립 (B11·B12)']) expect(svg).toContain(label);
|
||||
for (const label of ['주철근 (B5–B8)', '전단·띠 (B9)', '조립 (B11·B12)']) expect(svg).toContain(label);
|
||||
expect(svg).not.toContain('직각·보조 (B1–B4)');
|
||||
expect(svg).toContain('class="column"');
|
||||
expect(svg.split('class="pile"').length - 1).toBeGreaterThan(0);
|
||||
});
|
||||
|
||||
it('최외측 열: B1–B4 연장선과 측면 피복 다리선 (승인 2026-10-26)', () => {
|
||||
expect(svg.split('class="leg"').length - 1).toBe(2);
|
||||
it('최외측 열: B5–B8 추가 점 표시, B1–B4 다리선은 그림에서 제외 (승인 2026-10-27)', () => {
|
||||
expect(svg.split('class="leg"').length - 1).toBe(0);
|
||||
expect(svg.split('class="ext"').length - 1).toBeGreaterThan(0);
|
||||
});
|
||||
});
|
||||
Reference in new issue
Block a user