29 lines
1.3 KiB
TypeScript
29 lines
1.3 KiB
TypeScript
import { describe, expect, it } from 'vitest';
|
||
import { buildPier, footingDims } from '../src/core/geometry';
|
||
import { loadP1 } from './helpers';
|
||
|
||
describe('확대기초·말뚝 입력 (입력만, 승인 2026-10-23)', () => {
|
||
it('without the new inputs the footing dims are the 1단계 constants (P1 unchanged)', () => {
|
||
const d = footingDims(loadP1());
|
||
expect(d.L).toBeCloseTo(10.4, 9);
|
||
expect(d.W).toBeCloseTo(8.15, 9);
|
||
expect(d.H).toBeCloseTo(2.0, 9);
|
||
expect(d.blM).toBeCloseTo(0.2, 9);
|
||
expect(d.blT).toBeCloseTo(0.1, 9);
|
||
expect(d.pileD).toBeCloseTo(0.6096, 9);
|
||
});
|
||
|
||
it('the footing width, height and blinding follow the inputs in the model', () => {
|
||
const m = buildPier({ ...loadP1(), footingWidthMm: 9000, footingHeightMm: 2200, blindingMarginMm: 150, blindingThicknessMm: 120 });
|
||
expect(m.footings[0].width).toBeCloseTo(9.0, 9);
|
||
expect(m.blindings[0].width).toBeCloseTo(9.0 + 0.3, 9);
|
||
expect(m.blindings[0].thickness).toBeCloseTo(0.12, 9);
|
||
expect(m.footings[0].top - m.footings[0].bottom).toBeCloseTo(2.2, 9);
|
||
});
|
||
|
||
it('a steel pile of 609.6 × 16 gives the pile diameter 0.6096 m (the wall is in the list, not the diameter)', () => {
|
||
const m = buildPier({ ...loadP1(), pileOuterMm: 609.6, pileThicknessMm: 16 });
|
||
expect(m.piles[0].diameter).toBeCloseTo(0.6096, 9);
|
||
});
|
||
});
|