package cognitive_fake_test import ( "testing" "git.cin.su/m/Assistant/adapters/models" "git.cin.su/m/Assistant/contracts/authority" "git.cin.su/m/Assistant/contracts/capability" commitcontract "git.cin.su/m/Assistant/contracts/commit" "git.cin.su/m/Assistant/contracts/identity" "git.cin.su/m/Assistant/contracts/work" "git.cin.su/m/Assistant/platform/ids" ) func TestDeterministicFakeEmitsCandidateOnly(t *testing.T) { request := models.DeterministicRequest{ActorID: identity.ActorID(ids.ID("creator")), CapabilityID: capability.CapabilityID(ids.ID("fake")), Target: work.TaskTarget{TaskID: work.TaskID(ids.ID("task")), GoalID: work.GoalID(ids.ID("goal")), ScopeID: authority.ScopeID(ids.ID("scope")), Revision: 1}, Operation: commitcontract.ExternalOperation("test-operation")} first, second := models.Propose(request), models.Propose(request) if first.Proposal.IntentID != second.Proposal.IntentID || first.Seed != second.Seed { t.Fatal("same request produced different candidate") } if first.Proposal.State != commitcontract.ActionProposed { t.Fatalf("state = %s, want PROPOSED", first.Proposal.State) } }