forked from cleveragents/cleveragents-core
52 lines
2.8 KiB
Gherkin
52 lines
2.8 KiB
Gherkin
@phase1 @database @models @uncovered_branches
|
|
Feature: Database models uncovered branch coverage
|
|
As a developer
|
|
I want to exercise uncovered branches in database model from_domain methods
|
|
So that branch and line coverage improves for models.py
|
|
|
|
# -------------------------------------------------------------------
|
|
# LifecyclePlanModel.from_domain: empty arguments (L948 loop zero iterations)
|
|
# -------------------------------------------------------------------
|
|
|
|
@plan @from_domain @empty_arguments
|
|
Scenario: PlanModel from_domain with empty arguments produces no argument rows
|
|
Given db models branch a Plan domain object with empty arguments
|
|
When db models branch the plan is converted via LifecyclePlanModel from_domain
|
|
Then db models branch the resulting plan model has no argument rows
|
|
|
|
# -------------------------------------------------------------------
|
|
# ToolModel.from_domain: dict-based tool (L1665-1666 dict branch of _get)
|
|
# -------------------------------------------------------------------
|
|
|
|
@tool @from_domain @dict_tool
|
|
Scenario: ToolModel from_domain accepts a plain dict and reads fields via dict.get
|
|
Given db models branch a plain dict describing a tool
|
|
When db models branch the dict is converted via ToolModel from_domain
|
|
Then db models branch the resulting tool model has the expected name and description
|
|
|
|
@tool @from_domain @dict_tool_bindings
|
|
Scenario: ToolModel from_domain with dict tool and resource bindings
|
|
Given db models branch a plain dict describing a tool with resource bindings
|
|
When db models branch the binding dict is converted via ToolModel from_domain
|
|
Then db models branch the resulting tool model has resource binding rows
|
|
|
|
# -------------------------------------------------------------------
|
|
# SessionModel.from_domain: non-empty messages (L1920-1921)
|
|
# -------------------------------------------------------------------
|
|
|
|
@session @from_domain @messages
|
|
Scenario: SessionModel from_domain populates child message models
|
|
Given db models branch a Session domain object with two messages
|
|
When db models branch the session is converted via SessionModel from_domain
|
|
Then db models branch the resulting session model has two message children
|
|
|
|
# -------------------------------------------------------------------
|
|
# SkillModel class columns: short_name, description (L2131-2132)
|
|
# -------------------------------------------------------------------
|
|
|
|
@skill @from_domain @columns
|
|
Scenario: SkillModel from_domain populates short_name and description columns
|
|
Given db models branch a Skill domain dict with name and description
|
|
When db models branch the skill dict is converted via SkillModel from_domain
|
|
Then db models branch the resulting skill model has correct short_name and description
|