Commit Graph

6 Commits

Author SHA1 Message Date
Jukka Aho 3376ba15db test(materials): add assembly workspace refactor test
New 294-line test file included in main test/runtests.jl:
- Tests refactored AssemblyMaterialWorkspace with compositional field design
- Tests field structure inference from material traits
- Tests workspace creation with correct field types
- Tests field access (backward compatibility)
- Tests multiphysics support preparation
- Validates zero allocations in workspace operations

Ensures assembly workspace refactoring maintains backward compatibility and performance.
2025-12-15 06:36:54 +02:00
Jukka Aho ac0fc346af test(materials): add cantilever material cache zero allocations test
New 308-line test file included in main test/runtests.jl:
- Tests GlobalMaterialCache with cantilever beam problem
- Verifies ZERO allocations during state access and updates
- Tests cache creation from material traits (automatic)
- Tests time-stepping workflow with zero allocations in hot loop
- Includes performance benchmarks using BenchmarkTools
- Validates material state type inference

Comprehensive performance test ensuring material cache system has zero allocations.
2025-12-15 06:36:46 +02:00
Jukka Aho b7c4f64151 test(materials): add plasticity integration test
New 229-line test file included in main test/runtests.jl:
- Tests PerfectPlasticity material instantiation and traits
- Tests global material cache creation for stateful materials
- Tests direct NamedTuple state manipulation (compositional design)
- Tests cache access and manipulation (set_state!, update_cache!)
- Tests multi-step plasticity simulation workflow
- Tests state variable helpers (get_state_variable, set_state_variable)
- Validates type stability of key operations

Comprehensive integration test ensuring plasticity material works with cache system.
2025-12-15 06:36:30 +02:00
Jukka Aho b5772b141b test(materials): add global material cache test
New 98-line test file included in main test/runtests.jl:
- Tests GlobalMaterialCache construction for stateless and stateful materials
- Tests state access and update operations (get_state, set_state!, update_cache!, reset_cache!)
- Tests state variable helpers (get_state_variable, set_state_variable)
- Tests integration with material traits (create_global_material_cache)
- Validates cache structure and state management for time-dependent materials

Ensures material cache system works correctly for storing state variables at integration points.
2025-12-15 06:36:03 +02:00
Jukka Aho e3527dac93 test(materials): add material traits test
New 99-line test file included in main test/runtests.jl:
- Tests LinearElastic material traits (supported_physics, required_field_types, required_state_variables)
- Validates trait function existence and exports
- Tests helper functions (is_stateful, get_state_variable_types, get_state_variable_symbols)
- Verifies compositional design philosophy for state variables
- Tests physics-to-field-type derivation

Ensures material trait system works correctly for compositional material design.
2025-12-15 06:34:56 +02:00
Jukka Aho 5e1b66cb67 test(materials): add state variables test
New 93-line test file included in main test/runtests.jl:
- Tests AbstractStateVariable type hierarchy
- Validates state_variable_type trait (returns concrete types)
- Validates default_symbol trait (returns symbols like :ε_p, :α, :κ, :d)
- Tests concrete type instantiation (PlasticStrain, Backstress, etc.)
- Tests NamedTuple usage with state variable symbols
- Verifies trait consistency across all state variable types

Ensures state variable system works correctly for material models.
2025-12-15 06:34:44 +02:00