Modular Universe Builder - Testing Guide

Step-by-step guide to test all new drag-and-drop and nested module features

Modular Universe Builder - Testing Guide

๐ŸŽฏ Quick Test Checklist

Use this guide to verify all features are working correctly after the session 11.25.1.2 updates.

๐Ÿงช Test Scenarios

Test 1: Module Creation

Goal: Verify that modules can be created and immediately appear in the palette.

Steps:

  1. Navigate to Modular Universe Builder
  2. Click "Create Module" button in the Structure tab
  3. Complete the wizard:
    • Step 1: Select module type (e.g., "Feature Module")
    • Step 2: Enter name (e.g., "My Test Module"), description, icon
    • Step 3: Select pages/widgets/flows (optional for this test)
    • Step 4: Configure settings (use defaults)
    • Step 5: Click "Generate Module"
  4. Wait for success message

Expected Results:

Troubleshooting:


Test 2: Drag Module into Empty Section

Goal: Verify modules can be dragged from palette into empty canvas sections.

Steps:

  1. Open Module Palette (left sidebar > "Add" tab)
  2. Switch to "Modules" tab if not already there
  3. Find any module (e.g., "Top Navigation", "Singularity Core", or your test module)
  4. Drag the module card
  5. Drop it into an empty section on the canvas

Expected Results:

Visual Indicators:

Before Drop:
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Section 1    [EMPTY]    โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚   ๐Ÿงฑ Empty Section      โ”‚
โ”‚   Drag a module here    โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

During Hover:
โ”Œโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ”  โ† Purple dashed border
โ•‘ Section 1    [EMPTY]    โ•‘
โ• โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•ฃ
โ•‘   ๐Ÿงฑ Empty Section      โ•‘  โ† Light purple background
โ•‘   Drag a module here    โ•‘
โ•šโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•

After Drop:
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Top Navigation [MODULE] โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚   ๐Ÿงฑ Module: top-nav    โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Test 3: Drag Module into Filled Section (Nesting)

Goal: Verify nested module support - dropping a module into a section that already has content.

Steps:

  1. Find a section that already has a module assigned (from Test 2)
  2. Drag a DIFFERENT module from the palette
  3. Drop it into the filled section's content area

Expected Results:

Visual Indicators:

After First Drop:
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Section 1    [MODULE]   โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚   ๐Ÿงฑ Module: top-nav    โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

After Second Drop (Nested):
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Section 1    [MODULE]   โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚   ๐Ÿงฑ Module: top-nav    โ”‚
โ”‚   1 nested item(s)      โ”‚
โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚ โ”‚ Product Card โ”‚Lv 1โ”‚ โ”‚ โ”‚ โ† Nested child
โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚
โ”‚ โ”‚ ๐Ÿงฉ Module: product  โ”‚ โ”‚
โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Test 4: Multiple Levels of Nesting

Goal: Verify infinite nesting depth support.

Steps:

  1. Create a section with a module (Level 0)
  2. Drop another module into it (Level 1)
  3. Drop a third module into the Level 1 section
  4. Continue nesting as desired

Expected Results:

Visual Indicators:

Multi-Level Nesting:
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Container [MODULE]          โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ ๐Ÿงฑ Module: container        โ”‚
โ”‚ 2 nested items              โ”‚
โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚ โ”‚ Header โ”‚Lv 1โ”‚           โ”‚ โ”‚ โ† Level 1
โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚
โ”‚ โ”‚ ๐Ÿงฑ Module: header       โ”‚ โ”‚
โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚
โ”‚ โ”‚ โ”‚ Logo โ”‚Lv 2โ”‚         โ”‚ โ”‚ โ”‚ โ† Level 2
โ”‚ โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ โ”‚
โ”‚ โ”‚ โ”‚ ๐Ÿ–ผ๏ธ Module: logo      โ”‚ โ”‚ โ”‚
โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚
โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚ โ”‚ Navigation โ”‚Lv 1โ”‚       โ”‚ โ”‚ โ† Level 1
โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚
โ”‚ โ”‚ ๐Ÿงฑ Module: nav-menu     โ”‚ โ”‚
โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Test 5: Widget Drag-and-Drop

Goal: Verify widgets can also be dragged and dropped.

Steps:

  1. Open Module Palette
  2. Switch to "Widgets" tab
  3. Drag a widget (if any are available)
  4. Drop into a section

Expected Results:

Note: If no widgets appear, they need to be created first in the Widget Builder.


Test 6: Section Configuration

Goal: Verify section config panel updates correctly.

Steps:

  1. Click on any section
  2. Observe the Section Config Panel (right sidebar)
  3. Change contentType dropdown
  4. Change moduleId field
  5. Adjust styling (padding, margin, etc.)

Expected Results:


Test 7: Module Palette Filtering

Goal: Verify system modules are hidden and user modules appear.

Steps:

  1. Open Module Palette > Modules tab
  2. Check visible modules

Expected Results:

Note: Some structural modules may appear if they're not tagged as "system" modules. This is expected behavior - they're available for use.


Test 8: Persistence and Sync

Goal: Verify data persists and syncs correctly.

Steps:

  1. Create a layout with modules
  2. Open browser DevTools > Application > IndexedDB
  3. Find gg-storage database
  4. Verify entries for:
    • modularity/generated-modules/... (user modules)
    • Layout configuration
  5. Refresh the page
  6. Verify layout is preserved

Expected Results:

Advanced:


Test 9: Undo/Redo (If Implemented)

Goal: Verify canvas history management.

Steps:

  1. Make several changes (add sections, assign modules)
  2. Press Ctrl+Z (or Cmd+Z on Mac) to undo
  3. Press Ctrl+Shift+Z to redo

Expected Results:


๐Ÿ› Known Limitations (Out of Scope)

These are expected behaviors and not bugs:

  1. Placeholder Rendering

    • Modules show as "Module: {moduleId}" placeholders
    • Not rendering actual module content yet
    • This is intentional - dynamic rendering is a future enhancement
  2. Widget Availability

    • Widget tab may be empty if no widgets created
    • This is expected - widgets must be created in Widget Builder first
  3. Module Preview

    • No live preview of module content in builder
    • Future enhancement: render actual components
  4. Drag-and-Drop Edge Cases

    • Dropping a section into itself โ†’ should be prevented (might not be)
    • Circular nesting โ†’ not yet validated

โœ… Success Criteria

Your testing is successful if:

๐Ÿšจ Reporting Issues

If you encounter issues:

  1. Check the console (F12 > Console tab)
  2. Note the steps that led to the issue
  3. Capture screenshots if visual bugs occur
  4. Report the error message from console
  5. Mention which test scenario failed

๐ŸŽ‰ Happy Testing!

The Modular Universe Builder is now at Ferrari level. Enjoy building the most powerful platforms in the universe! ๐Ÿš€