TB11 Manual Test Procedures

Created: April 7, 2026 Status: Active — baseline for TB11 source-mode testing Scope: All ConstructiVision menu functions on AutoCAD 2027 (x64) and AutoCAD 2000 (x32) DFMEA: Covers DFMEA-001 through DFMEA-035 (menu routing, dialog loading, cross-doc opening)

Purpose

Step-by-step manual test procedures for every ConstructiVision menu function. These tests verify the TB11 source-mode build reproduces the behavior of the PB11 VLX build.

Use these procedures:

  • Before and after each Wave 1–4 refactoring commit (regression gate)

  • When deploying to a new VM or AutoCAD version

  • As the acceptance criteria for the csv.lsp decomposition work

Prerequisites

  • AutoCAD freshly launched (restart between test runs — do not reuse a session with stale state)

  • csvmenu.lsp in Startup Suite slot 1

  • csv.lsp in Startup Suite slot 2

  • ConstructiVision menu visible in the menubar after launch

  • C:\cv-debug.txt is written after every c:csv call — check it for state snapshots

Reporting Format

For each test, record:

Field

What to check

Dialog title

Did the expected dialog appear? (read the title bar)

Command line

Any [CSV-ERROR], [CSV-WARN], or [CV-LOAD ERROR] messages?

Return state

Clean return to Command: prompt? Or hung/looping?

Debug log

Check C:\cv-debug.txt for filedia, cmdecho, progcont, curdir, olddwg


Test 1: Create a New Project (from Drawing1)

Menu path: ConstructiVision > New Project Progcont: 262153 (*pc-new-project*) Starting state: Default untitled Drawing1.dwg

Steps

  1. Launch AutoCAD fresh. You should be on Drawing1.dwg.

  2. Click File > New (or Ctrl+N) to create a new blank drawing if not already on one.

  3. Click ConstructiVision > New Project.

  4. Expected: “Project Details” dialog (projdet.dcl) appears.

    • Fill in required fields: Project Name, Concrete PSI, Concrete PCF.

    • Choose: Measurement System, Dimension Precision, Language, Paper Size.

    • Click Accept.

  5. Expected: “New Project” dialog (new.dcl) appears — asks for project folder name and path.

    • Enter a project name, click OK.

  6. Expected: Command line prompts: Panel or Site drawing? [Panel/Site] <Panel>:

    • Type Panel or press Enter for default.

  7. Expected: Panel editor dialog (mp_dlg) opens on the blank panel.

Pass criteria

  • All three dialogs appear in sequence: projdet → new → panel editor.

  • No [CSV-ERROR] messages.

  • cv-debug.txt shows curdir pointing to the new project folder.

Known issues

  • None expected for this path.


Test 2: Create a New Panel Drawing (project open)

Menu path: ConstructiVision > New Drawing Progcont: 262161 (*pc-new-drawing*) Starting state: A project drawing is already open (e.g., saved from Test 1).

Steps

  1. Have a project drawing open.

  2. Click ConstructiVision > New Drawing.

  3. Expected: Command line prompts: Panel or Site drawing? [Panel/Site] <Panel>:

    • Type Panel or press Enter.

  4. Expected: File picker: “Choose a Drawing to use as a template, or click CANCEL to start from scratch.”

    • Option A: Pick an existing .dwg in the project folder (template clone).

    • Option B: Click Cancel (start blank on Drawing1).

  5. Expected: Default routing launches the panel editor.

Pass criteria

  • File picker appears with correct prompt text.

  • Option A (template): Selected drawing opens via scr, panel editor launches on it.

  • Option B (cancel): Current drawing stays open, panel editor dialog appears for blank drawing.

Known issues

  • New Drawing dead end (Bug 102): ✅ Fixed — pcr=T was unconditionally set after getfiled, killing the fall-through to the editor. Now cancel → blank + editor, template → open via scr.


Test 3: Create a New Site Drawing (project open)

Menu path: ConstructiVision > New Drawing Progcont: 262161 (*pc-new-drawing*) Starting state: A project drawing is already open.

Steps

  1. Have a project drawing open.

  2. Click ConstructiVision > New Drawing.

  3. Expected: Panel or Site drawing? [Panel/Site] <Panel>:

    • Type Site.

  4. Expected: File picker (same as Test 2).

  5. Expected: Default routing launches the site editor (sdwg_dlg).

Pass criteria

  • Site editor dialog appears after file picker.

Known issues

  • Same dead-end risk as Test 2.


Test 4: Edit Current Drawing — Panel

Menu path: ConstructiVision > Edit Current Drawing Progcont: 1 (default path) Starting state: A panel .dwg is open with valid panel data (NOD XRecord or panel layers).

Steps

  1. Have a panel drawing open.

  2. Click ConstructiVision > Edit Current Drawing.

  3. Expected: csv.lsp detects csv_dwgtype="panel" via NOD XRecord or layer detection.

  4. Expected: Path 3 (direct edit) fires — panel editor opens directly.

    • No project.dcl dialog.

    • No progopts.dcl dialog.

Pass criteria

  • Panel editor dialog appears immediately.

  • Command line shows [CSV] direct-edit csv_dwgtype=panel.


Test 5: Edit Current Drawing — Site

Menu path: ConstructiVision > Edit Current Drawing Progcont: 1 (default path) Starting state: A site .dwg is open (filename contains “SITE” or has site layers like walline).

Steps

  1. Have a site drawing open.

  2. Click ConstructiVision > Edit Current Drawing.

  3. Expected: csv_dwgtype="site" detected → Path 3 → site editor (sdwg_dlg) opens.

Pass criteria

  • Site editor dialog appears immediately.

  • Command line shows [CSV] direct-edit csv_dwgtype=site.


Test 6: Edit Current Drawing — No Project (Drawing1)

Menu path: ConstructiVision > Edit Current Drawing Progcont: 1 (default path) Starting state: Default untitled Drawing1.dwg — no CV drawing loaded.

Steps

  1. Launch AutoCAD fresh on Drawing1.dwg.

  2. Click ConstructiVision > Edit Current Drawing.

  3. Expected: No CV drawing detected → Path 5 fires.

  4. Expected: Program Options dialog (progopts.dcl) appears.

    • 14-button hub layout (7 rows x 2 columns).

    • Grayed-out buttons: View All/Select Layers, Print All/Select Layers, 3D Viewpoint, Materials, Revision.

    • Active buttons: Create New Drawing, Edit Existing Drawing, Create New Project, Batch Utilities, Change Search Path.

Pass criteria

  • progopts.dcl appears with correct button states.

  • Command line shows [CSV] Path 5: no CV drawing, showing progopts.


Test 7: Open an Existing Drawing

Menu path: ConstructiVision > Open Drawing Progcont: 262145 (*pc-edit-drawing*) Starting state: Any drawing (Drawing1 or project drawing).

Steps

  1. Click ConstructiVision > Open Drawing.

  2. Expected: File picker: “Choose a Drawing to edit.”

    • Browse to a project folder, pick a .dwg file.

  3. Expected: csv.lsp detects panel vs site from filename (*SITE* → site, else → panel).

  4. Expected: Calls (scr "panel") or (scr "site") for cross-document opening.

  5. Expected: New drawing opens. On load, csv_open_con continuation fires → editor launches automatically.

Steps (cancel path)

  1. Click ConstructiVision > Open Drawing.

  2. File picker appears. Click Cancel.

  3. Expected: pnl="cancel", pcr=T → clean return to Command: prompt. No stale dialogs.

Pass criteria

  • File picker appears with correct prompt.

  • On selection: drawing opens and editor launches via cross-doc continuation.

  • On cancel: clean return, no looping.


Test 8: Edit Project Details (project open)

Menu path: ConstructiVision > Edit Project Details Progcont: 524289 (*pc-edit-project*) Starting state: A project drawing is open (panel or site, not Drawing1).

Steps

  1. Have a project drawing open.

  2. Click ConstructiVision > Edit Project Details.

  3. Expected: projdet_edit dialog appears, pre-populated with existing project values (name, PSI, PCF, location, etc.).

  4. Modify any fields, click Accept.

  5. Expected: Project metadata updated in the drawing.

Pass criteria

  • projdet.dcl appears with pre-filled values.

  • Changes persist after accept.


Test 9: Edit Project Details (no project — Drawing1)

Menu path: ConstructiVision > Edit Project Details Progcont: 524289 (*pc-edit-project*) Starting state: Default Drawing1.dwg.

Steps

  1. On Drawing1.dwg, click ConstructiVision > Edit Project Details.

  2. Expected: Alert dialog: “No project is loaded. Open a project drawing first, then use ‘Edit Project Details’ to modify project settings.”

Pass criteria

  • Alert appears with correct message.

  • Clean return to Command: after dismissing alert.


Test 10: View All Layers

Menu path: ConstructiVision > View > All Layers Progcont: 262209 (*pc-view-all*) Starting state: A panel or site .dwg is open with some layers turned off.

Steps

  1. Turn off a few layers manually (for visibility).

  2. Click ConstructiVision > View > All Layers.

  3. Expected: All layers turn on via expert 5 -layer s 0 on * expert 0.

Pass criteria

  • All layers visible after command.

  • No dialog appears (this is a direct command).


Test 11: View Select Layers — Panel

Menu path: ConstructiVision > View > Select Layers Progcont: 262273 (*pc-view-select*) Starting state: A panel .dwg is open.

Steps

  1. Have a panel drawing open.

  2. Click ConstructiVision > View > Select Layers.

  3. Expected: Panel layer visibility dialog (plyr_dlg) appears with checkboxes for: connections, points, hardware, green plate, feature, solid, perimeter, etc.

  4. Toggle some checkboxes, click OK.

  5. Expected: Layer visibility updates to match selections.

Pass criteria

  • plyr_dlg dialog appears (not slyr_dlg).


Test 12: View Select Layers — Site

Menu path: ConstructiVision > View > Select Layers Progcont: 262273 (*pc-view-select*) Starting state: A site .dwg is open.

Steps

  1. Have a site drawing open.

  2. Click ConstructiVision > View > Select Layers.

  3. Expected: Site layer visibility dialog (slyr_dlg) appears with site-specific toggles.

Pass criteria

  • slyr_dlg dialog appears (not plyr_dlg).


Test 13: Print All Layers — Panel

Menu path: ConstructiVision > Print > Panel > All Layers Progcont: 262465 (*pc-print-all*) Starting state: A panel .dwg is open.

Steps

  1. Have a panel drawing open.

  2. Click ConstructiVision > Print > Panel > All Layers.

  3. Expected: All layers on → QSAVE → print dialog (plt) appears.

  4. After print dialog closes, layers reset: custom layer becomes current (or 0 if custom doesn’t exist).

Pass criteria

  • Print dialog appears.

  • Drawing is saved before print.

  • Layer state restored after print.


Test 14: Print Layer Presets — Panel (5 variants)

Menu path: ConstructiVision > Print > Panel > {Edge Form | Ledgers/Top Plate | Weld Connections | Feature Strip | Pick/Brace Points} Progcont: 262401 (*pc-print-setup*) Starting state: A panel .dwg is open.

Steps (repeat for each of the 5 presets)

  1. Have a panel drawing open.

  2. Click one of the layer-preset print items.

  3. Expected: Menu macro isolates specific layers (the macro runs expert 5 -layer ... commands before calling csv;).

  4. Expected: QSAVE → print dialog (plt) appears.

  5. After print dialog closes, layers restored.

Layer presets

Menu item

Layers turned ON

Edge Form

0, solid, solid_dim, perimeter, perimeter_dim

Ledgers/Top Plate

0, solid, solid_dim, perimeter, greenplate, greenplate_dim, hardware

Weld Connections

0, solid, solid_dim, perimeter, connections, connections_dim

Feature Strip

0, solid, solid_dim, perimeter, feature, feature_dim

Pick/Brace Points

0, solid, solid_dim, perimeter, points, points_dim

Pass criteria

  • Only the listed layers are visible when print dialog appears.

  • All layers restored after print completes.


Test 15: Print Select Layouts — Site

Menu path: ConstructiVision > Print > Site > Select Layouts Progcont: 262657 (*pc-print-select*) Starting state: A site .dwg is open.

Steps

  1. Have a site drawing open.

  2. Click ConstructiVision > Print > Site > Select Layouts.

  3. Expected: Layer isolation (dims off except *solid_dim, perimeter/hardware/dimensions/xy/walline/slabline off) → regen → print dialog (plt).

  4. After print dialog, layers restored.

Pass criteria

  • Print dialog appears with correct layer isolation.

  • Layers restored after print.


Test 16: Materials List (panel open)

Menu path: ConstructiVision > Materials List Progcont: 263169 (*pc-materials*) Starting state: A panel .dwg with valid panel data (NOD XRecord panel or panel_list, or panel layers detected).

Steps

  1. Have a panel drawing with panel data open.

  2. Click ConstructiVision > Materials List.

  3. Expected: Panel state loaded via panatt if not already populated.

  4. Expected: Materials/quantity dialog (matl_dlg) appears showing quantities for the current panel.

Pass criteria

  • matl_dlg dialog appears.

  • Quantities display correctly.


Test 17: Materials List (no panel)

Menu path: ConstructiVision > Materials List Progcont: 263169 (*pc-materials*) Starting state: Drawing1.dwg or a site drawing.

Steps

  1. On Drawing1 or a site drawing, click ConstructiVision > Materials List.

  2. Expected: Alert: “There is no Panel Drawing loaded. Please select a panel before using Materials List.”

Pass criteria

  • Alert appears with correct message.

  • Clean return after dismissal.


Test 18: Revision History (panel with UPDATE block)

Menu path: ConstructiVision > Revision History Progcont: 264193 (*pc-revision*) Starting state: A panel .dwg with an UPDATE block containing REV and REVDATE attributes.

Steps

  1. Have a panel drawing with revision data open.

  2. Click ConstructiVision > Revision History.

  3. Expected: Panel state loaded, UPDATE block parsed for rev count and revdate.

  4. Expected: Revision dialog (revision) shows change log with revision numbers and dates.

Pass criteria

  • Revision dialog appears.

  • Rev number and date display correctly from block attributes.


Test 19: Revision History (no panel)

Menu path: ConstructiVision > Revision History Progcont: 264193 (*pc-revision*) Starting state: Drawing1.dwg or a site drawing.

Steps

  1. On Drawing1 or a site drawing, click ConstructiVision > Revision History.

  2. Expected: Alert: “There is no Panel Drawing loaded. Please select a panel before using Revision History.”

Pass criteria

  • Alert appears. Clean return.


Test 20: Batch Utilities

Menu path: ConstructiVision > Batch Utilities Progcont: 262177 (*pc-batch-utils*) Starting state: Any drawing.

Steps

  1. Click ConstructiVision > Batch Utilities.

  2. Expected: Batch operations dialog (btch_dlg) appears.

Pass criteria

  • Dialog appears. Clean return after close.


Test 21: Slope Calculator

Menu path: ConstructiVision > Slope Calculator Progcont: 8193 (*pc-slope-calc*) Starting state: Any drawing.

Steps

  1. Click ConstructiVision > Slope Calculator.

  2. Expected: Slope/angle calculator dialog (slope_dlg) appears.

  3. Enter values, calculate, close.

Pass criteria

  • Dialog appears and calculates correctly.


Test 22: Viewport Views (12 items)

Menu path: ConstructiVision > View > {Panel Up Face | Panel Down Face | Left Edge | Right Edge | Bottom Edge | Top Edge | SW Iso | SE Iso | NE Iso | NW Iso} Progcont: None (direct AutoCAD commands) Starting state: Any drawing with 3D content.

Steps

  1. Click any viewport item under View.

  2. Expected: AutoCAD viewport changes to the selected orientation.

    • Orthographic views: -layer c 252 *solid (color 252 for solid linetype).

    • Isometric views: -layer c 255 *solid (color 255 for solid linetype).

Pass criteria

  • Viewport changes to correct orientation.

  • Layer colors set appropriately.


Test 23: Shading Modes (3 items)

Menu path: ConstructiVision > Shading > {Off | Hidden | Shaded} Progcont: None (direct AutoCAD commands) Starting state: Any drawing.

Steps

  1. Click Shading > Offshademode 2 (wireframe).

  2. Click Shading > Hiddenshademode h (hidden line removal).

  3. Click Shading > Shadedshademode o (shaded rendering).

Pass criteria

  • Visual rendering mode changes for each selection.


Test 24: Program Options Hub Buttons

Menu path: ConstructiVision > Edit Current Drawing (on Drawing1 — triggers Test 6 first) Starting state: progopts.dcl is displaying (from Test 6).

Steps

Test each active button in the hub dialog:

Button

Expected behavior

Create New Drawing

File picker appears

Edit Existing Drawing

File picker appears

Create New Project

new dialog (project folder creation)

Batch Utilities

btch_dlg dialog

Change Search Path

File picker opens in Project Files directory

Change 3D Viewpoint

Viewport changes to SW isometric

Cancel

Dialog closes, clean return

Grayed-out buttons (verify they are non-clickable on Drawing1):

  • View All Layers, Print All Layers, View Selected Layers, Print Selected Layers, Print Materials List, Print Revision History, Change 3D Viewpoint

Pass criteria

  • Each active button routes to the correct function.

  • Grayed buttons are not clickable.

Known issues

  • progopts uses a parallel string-key routing system (not progcont). Unification is planned in Wave 4, Issue #20.


Test 25: Bug 92 Guard — Progcont on Drawing1

Progcont: Any value except 262153, 262145, 524289 Starting state: Drawing1.dwg (no project loaded).

Steps

  1. On Drawing1, trigger any progcont-routed menu item that requires a project (e.g., Materials List, Revision History, Batch Utilities, View Select Layers).

  2. Expected: Alert: “No project is loaded. From the ConstructiVision menu, select ‘New Project’ to create one, or ‘Open Drawing’ to open an existing project drawing.”

Exempt from guard (should work on Drawing1)

  • New Project (262153) — creates a project

  • Open Drawing (262145) — opens a project file

  • Edit Project Details (524289) — has its own “no project” alert

Pass criteria

  • Guard fires for non-exempt items.

  • Exempt items proceed normally.


Test 26: Module Loading Verification

Starting state: First c:csv call after AutoCAD launch.

Steps

  1. Launch AutoCAD fresh.

  2. Trigger any ConstructiVision menu item.

  3. Expected on command line:

    • [CSV] trace lines showing acaddir, csvdir, projdir, curdir, olddwg, progcont.

    • No [CV-LOAD ERROR] messages (all 96 modules loaded successfully).

    • No [CSV-WARN] messages (all infrastructure modules found).

  4. Check C:\cv-debug.txt for a valid state snapshot.

If module loading fails

  • Check the command line for [CV-LOAD ERROR] <module>.lsp: <reason>.

  • Check cv-load-errors.log in the ConstructiVision install directory.

  • Common causes: missing .lsp file, syntax error in a module, SFSP misconfiguration.

Pass criteria

  • Zero load errors.

  • cv-debug.txt written with correct state.


Known Issues Summary

ID

Test(s)

Description

Fix target

New Drawing dead end

2, 3

pcr=T after getfiled blocks editor launch

Wave 3, Issue #16

progopts parallel routing

24

String-key routing diverges from progcont system

Wave 4, Issue #20

pv-master infinite recursion

Any panel edit

Original code called itself; fixed in Wave 1 csvutil.lsp

Fixed


Regression Checklist

After each refactoring commit, re-run this minimal subset to confirm no regressions:

Priority

Tests

Covers

P0

1, 4, 7

New Project, Edit Current (panel), Open Drawing

P1

6, 8, 9, 25

progopts hub, Edit Project, Bug 92 guard

P2

10, 11, 13, 16, 18, 20, 21

View, Print, Materials, Revision, Batch, Slope

P3

2, 3, 5, 12, 14, 15, 22, 23

New Drawing, Site paths, Print presets, Shading

Full regression: Run all 26 tests. Required before any push to main that modifies csv.lsp routing.