Files
Joseph Doherty 04383d672c refactor: UI file upload components and ephemeral RSA key service
Replace InputFile with RadzenUpload in filter panels for better UX,
switch to ephemeral RSA keys (safe for transport-only encryption),
and add test scripts and documentation files.
2026-01-28 17:22:30 -05:00

368 lines
10 KiB
Markdown

# Component Lot Search (Type 20) - Test Scripts
## Overview
Test scripts for Component Lot search functionality (Search Type 20). This search type allows users to search by one or more component lot numbers without requiring a time span or other filters.
**Filters Enabled:** Component Lot only
---
## Valid Test Data
### Component Lots
| LotNumber | ItemNumber |
|-----------|------------|
| 00000099 | 00056191200 |
| 00001400 | 00599201632 |
| 00003415 | 60700002600 |
| 00003415 | 60702501600 |
| 00006020 | 00515000522 |
| 00006875 | 00519000100 |
| 00006991 | 00519000100 |
| 00009078 | 00516003000 |
| 00009106 | 00234407200 |
| 00009106 | 00234406200 |
| 00009106 | 00430400700 |
| 00009225 | 00883100100 |
| 00009226 | 00883100100 |
| 00009244 | 00515000522 |
| 00009288 | 00519000100 |
**Note:** Some lot numbers (e.g., 00003415, 00009106) appear with multiple item numbers.
---
## Positive Test Cases
### TC-020-P01: Single Component Lot Search
**Preconditions:**
- User is logged in
- User has access to the Submit Search page
**Steps:**
1. Navigate to Submit Search page
2. Enter search name: "Test Single Lot"
3. Select "Component Lot" search type (Type 20)
4. Enter lot number `00000099` in the component lot input field
5. Click Add to add the lot to the list
6. Verify the lot appears in the selected component lots list
7. Click Submit Search
**Expected Results:**
- Search is created with status "Queued"
- Search appears in the search list with name "Test Single Lot"
- Search type is displayed as "Component Lot"
- Lot number `00000099` is stored in the search criteria
---
### TC-020-P02: Multiple Component Lots Search
**Preconditions:**
- User is logged in
- User has access to the Submit Search page
**Steps:**
1. Navigate to Submit Search page
2. Enter search name: "Test Multiple Lots"
3. Select "Component Lot" search type (Type 20)
4. Enter lot number `00000099` and click Add
5. Enter lot number `00006875` and click Add
6. Enter lot number `00009078` and click Add
7. Verify all three lots appear in the selected component lots list
8. Click Submit Search
**Expected Results:**
- Search is created with status "Queued"
- Search appears in the search list with name "Test Multiple Lots"
- All three lots (`00000099`, `00006875`, `00009078`) are stored in the search criteria
- Search processes all three lots when executed
---
### TC-020-P03: Component Lot with Multiple Item Associations
**Preconditions:**
- User is logged in
- User has access to the Submit Search page
**Steps:**
1. Navigate to Submit Search page
2. Enter search name: "Test Multi-Item Lot"
3. Select "Component Lot" search type (Type 20)
4. Enter lot number `00009106` (associated with items 00234407200, 00234406200, 00430400700)
5. Click Add
6. Click Submit Search
**Expected Results:**
- Search is created with status "Queued"
- Search results include all work orders where lot `00009106` was used
- Results may span multiple items associated with this lot number
---
### TC-020-P04: Component Lot Search with Maximum Entries
**Preconditions:**
- User is logged in
- User has access to the Submit Search page
**Steps:**
1. Navigate to Submit Search page
2. Enter search name: "Test Max Lots"
3. Select "Component Lot" search type (Type 20)
4. Add all unique lot numbers from the test data:
- 00000099, 00001400, 00003415, 00006020, 00006875
- 00006991, 00009078, 00009106, 00009225, 00009226
- 00009244, 00009288
5. Verify all lots appear in the selected list
6. Click Submit Search
**Expected Results:**
- Search is created with status "Queued"
- All 12 unique lot numbers are stored in the search criteria
- Search processes successfully
---
### TC-020-P05: Component Lot Search - Remove and Re-add
**Preconditions:**
- User is logged in
- User has access to the Submit Search page
**Steps:**
1. Navigate to Submit Search page
2. Enter search name: "Test Remove Re-add Lot"
3. Select "Component Lot" search type (Type 20)
4. Add lot `00000099`
5. Add lot `00006875`
6. Remove lot `00000099` from the list
7. Verify only `00006875` remains in the list
8. Add lot `00009225`
9. Click Submit Search
**Expected Results:**
- Search is created with status "Queued"
- Only lots `00006875` and `00009225` are stored in the search criteria
- Lot `00000099` is NOT included
---
### TC-020-P06: Component Lot Search - Duplicate Prevention
**Preconditions:**
- User is logged in
- User has access to the Submit Search page
**Steps:**
1. Navigate to Submit Search page
2. Enter search name: "Test Lot Duplicate Prevention"
3. Select "Component Lot" search type (Type 20)
4. Add lot `00006875`
5. Attempt to add lot `00006875` again
6. Observe system behavior
**Expected Results:**
- System prevents duplicate lot entry OR displays validation message
- Lot `00006875` appears only once in the list
- User can proceed to submit with single entry
---
### TC-020-P07: Component Lot with Leading Zeros
**Preconditions:**
- User is logged in
- User has access to the Submit Search page
**Steps:**
1. Navigate to Submit Search page
2. Enter search name: "Test Leading Zeros"
3. Select "Component Lot" search type (Type 20)
4. Enter lot `99` (without leading zeros)
5. Click Add
6. Observe how the system handles the input
**Expected Results:**
- System either accepts and pads to `00000099` OR
- System requires full 8-digit format
- Behavior is consistent and documented
---
## Negative Test Cases
### TC-020-N01: Missing Search Name
**Preconditions:**
- User is logged in
- User has access to the Submit Search page
**Steps:**
1. Navigate to Submit Search page
2. Leave search name field empty
3. Select "Component Lot" search type (Type 20)
4. Add lot `00000099`
5. Click Submit Search
**Expected Results:**
- Validation error is displayed indicating search name is required
- Search is NOT created
- User remains on Submit Search page
- Form highlights the search name field as invalid
---
### TC-020-N02: No Search Type Selected
**Preconditions:**
- User is logged in
- User has access to the Submit Search page
**Steps:**
1. Navigate to Submit Search page
2. Enter search name: "Test No Type"
3. Do NOT select any search type
4. Attempt to add component lots (if possible)
5. Click Submit Search
**Expected Results:**
- Validation error is displayed indicating search type is required
- Search is NOT created
- User remains on Submit Search page
- Component lot input field may be disabled until search type is selected
---
### TC-020-N03: Empty Component Lot List
**Preconditions:**
- User is logged in
- User has access to the Submit Search page
**Steps:**
1. Navigate to Submit Search page
2. Enter search name: "Test Empty Lots"
3. Select "Component Lot" search type (Type 20)
4. Do NOT add any component lots
5. Click Submit Search
**Expected Results:**
- Validation error is displayed indicating at least one component lot is required
- Search is NOT created
- User remains on Submit Search page
- Component lot section is highlighted as requiring input
---
### TC-020-N04: Invalid Lot Number Format
**Preconditions:**
- User is logged in
- User has access to the Submit Search page
**Steps:**
1. Navigate to Submit Search page
2. Enter search name: "Test Invalid Lot Format"
3. Select "Component Lot" search type (Type 20)
4. Enter invalid lot value: "ABCD1234"
5. Click Add
**Expected Results:**
- Validation error is displayed for invalid lot number format
- Invalid lot is NOT added to the list
- User can correct the input and try again
---
### TC-020-N05: Component Lot with Special Characters
**Preconditions:**
- User is logged in
- User has access to the Submit Search page
**Steps:**
1. Navigate to Submit Search page
2. Enter search name: "Test Lot Special Characters"
3. Select "Component Lot" search type (Type 20)
4. Enter lot with special characters: "00000099!@#"
5. Click Add
**Expected Results:**
- Validation error is displayed for invalid characters
- Lot with special characters is NOT added to the list
- User is prompted to enter valid lot number
---
### TC-020-N06: Empty Component Lot Input
**Preconditions:**
- User is logged in
- User has access to the Submit Search page
**Steps:**
1. Navigate to Submit Search page
2. Enter search name: "Test Empty Lot Input"
3. Select "Component Lot" search type (Type 20)
4. Leave component lot input field empty
5. Click Add
**Expected Results:**
- Validation error is displayed or Add button is disabled
- Empty value is NOT added to the list
- User must enter a value before adding
---
### TC-020-N07: Whitespace-Only Component Lot
**Preconditions:**
- User is logged in
- User has access to the Submit Search page
**Steps:**
1. Navigate to Submit Search page
2. Enter search name: "Test Lot Whitespace"
3. Select "Component Lot" search type (Type 20)
4. Enter only spaces in component lot input: " "
5. Click Add
**Expected Results:**
- Validation error is displayed or input is trimmed and rejected
- Whitespace-only value is NOT added to the list
- User must enter a valid lot number
---
### TC-020-N08: Negative Lot Number
**Preconditions:**
- User is logged in
- User has access to the Submit Search page
**Steps:**
1. Navigate to Submit Search page
2. Enter search name: "Test Negative Lot"
3. Select "Component Lot" search type (Type 20)
4. Enter negative lot number: "-00000099"
5. Click Add
**Expected Results:**
- Validation error is displayed for invalid format
- Negative number is NOT added to the list
- User must enter a valid positive lot number
---
## Notes
- Component lot data was extracted from `LotUsage_Hist` table joined with `WorkOrder_Hist`
- Lot numbers are typically 8-digit numeric values with leading zeros
- Some lot numbers may be associated with multiple items in the database
- The search returns all work orders where the specified lot was used as a component