public async Task When_a_condition_has_children() { var editor = EditorID.Parse("me"); _toggle.AddCondition(editor, Condition("all")); _toggle.AddCondition(editor, Condition("enabled"), ConditionID.Parse(0)); _toggle.AddCondition(editor, Condition("disabled"), ConditionID.Parse(0)); using (var session = _storage.CreateSession()) await session.Save(_toggle); await _system.Scenario(_ => { _.Get .Url($"/toggles/id/{_toggle.ID}/conditions"); _.StatusCodeShouldBeOk(); _.ContentShouldBe(@"[ { ""children"": [ { ""conditionType"": ""Enabled"", ""id"": 1 }, { ""conditionType"": ""Disabled"", ""id"": 2 } ], ""conditionType"": ""All"", ""id"": 0 } ]".Replace(" ", "").Replace("\r\n", "")); }); }
protected StorageSessionTests() { Builders = new Dictionary <Type, Func <IEnumerable <IEvent>, object> >(); Projections = new List <Projector>(); Editor = EditorID.Parse("wat"); Builders[typeof(Toggle)] = events => AggregateBuilder.Build(new Toggle(), events); }
public async Task <IActionResult> PutName(ToggleLocator id, [FromBody] ToggleNamePutRequest model) { var editor = EditorID.Parse("TestApiUser"); //User.Identity.Name var request = new RenameToggleRequest(editor, id, model.Name); var response = await _mediator.Send(request); return(new JsonResult(response)); }
public async Task <IActionResult> Post([FromBody] TogglePostRequest model) { var editor = EditorID.Parse("TestApiUser"); //User.Identity.Name var request = new CreateToggleRequest(editor, model.Name, model.Description); var response = await _mediator.Send(request); return(Created("/toggles/id/" + response.Toggle.ID, response.Toggle)); }
public CreateToggleTests() { _mediator = Substitute.For <IMediator>(); _controller = new TogglesController(_mediator); _response = new CreateTogglesResponse { Toggle = Toggle.CreateNew(EditorID.Parse("123"), "one", "two").ToView() }; }
public async Task <IActionResult> Post([FromBody] TogglePostRequest model) { var editor = EditorID.Parse("TestApiUser"); //User.Identity.Name var request = new CreateToggleRequest(editor, model.Name, model.Description); var response = await _mediator.Send(request); var uri = Url.Action(nameof(Get), new { id = response.Toggle.ID }); return(Created(uri, response.Toggle)); }
public async Task When_a_projection_is_registered() { _storage.RegisterProjection <ToggleView>(); using (var session = _storage.CreateSession()) await session.Save(Toggle.CreateNew(EditorID.Parse("test"), "Test", "no")); using (var session = _storage.CreateSession()) (await session.QueryProjection <ToggleView>()).ShouldHaveSingleItem(); }
public GetToggleHandlerTests() { _view = new List <ToggleView>(); var session = Substitute.For <IStorageSession>(); session.QueryProjection <ToggleView>().Returns(_view); _handler = new GetToggleHandler(session); _creator = EditorID.Parse("test editor"); }
public CreateToggleTests() { _response = new CreateTogglesResponse { Toggle = Toggle.CreateNew(EditorID.Parse("123"), "one", "two").ToView() }; _mediator = Substitute.For <IMediator>(); _controller = new TogglesController(_mediator); _controller.Url = Substitute.For <IUrlHelper>(); _controller.Url.Action(Arg.Any <UrlActionContext>()).Returns("/api/toggles/id/" + _response.Toggle.ID); }
protected HandlerTest() { Events = new PendingEventsStore(); Storage = new InMemoryStorage(Events); Storage.RegisterAggregate <ToggleID, Toggle>(); Storage.RegisterProjection <ToggleView>(); Toggle = Toggle.CreateNew(EditorID.Parse("editor"), "name", "desc"); Locator = ToggleLocator.Create(Toggle.ID); Editor = EditorID.Parse("Editor:" + Guid.NewGuid()); }
public async Task When_removing_a_condition_from_a_toggle() { _toggle.AddCondition(EditorID.Parse("me"), Condition("disabled")); await _fixture.SaveToggle(_toggle); await _fixture.Scenario(_ => { _.Delete .Url($"/api/toggles/id/{_toggle.ID}/conditions/0"); _.StatusCodeShouldBeOk(); _.ContentShouldBe($"{{\"toggleID\":\"{_toggle.ID}\",\"conditions\":[]}}"); }); }
public async Task When_removing_a_condition_from_a_toggle() { _toggle.AddCondition(EditorID.Parse("me"), Condition("disabled")); using (var session = _storage.CreateSession()) await session.Save(_toggle); await _system.Scenario(_ => { _.Delete .Url($"/toggles/id/{_toggle.ID}/conditions/0"); _.StatusCodeShouldBeOk(); _.ContentShouldBe("[]"); }); }
public ApiFixture() { _fixture = new Fixture(); _storage = new InMemoryStorage(); _storage.RegisterProjection <ToggleView>(); _storage.RegisterAggregate <ToggleID, Toggle>(); _system = SystemUnderTest.ForStartup <Startup>(); _system.Configure(builder => builder.UseLamar()); _system.ConfigureServices(services => { services.AddSingleton <IStorage>(_storage); services.AddScoped(sp => _storage.CreateSession()); }); Editor = EditorID.Parse("me"); }
protected HandlerPipelineTest() { Editor = EditorID.Parse("me"); Storage = new InMemoryStorage(); Storage.RegisterAggregate <ToggleID, Toggle>(); Storage.RegisterProjection <ToggleView>(); var container = new Container(_ => { _.IncludeRegistry <MediatrRegistry>(); _.For <IStorage>().Use(Storage); _.For <IStorageSession>().Use(c => c.GetInstance <IStorage>().CreateSession()); _.For <ILoggerFactory>().Use(Substitute.For <ILoggerFactory>()); _.For(typeof(ILogger <>)).Use(typeof(Logger <>)); }); _mediator = container.GetInstance <IMediator>(); }
private EditorID GetEditor() => EditorID.Parse("TestApiUser"); //User.Identity.Name
protected ToggleTest() { Editor = EditorID.Parse("Testing"); }
public ToggleViewTests() { _view = new ToggleView(); _editor = EditorID.Parse("editor"); _id = ToggleID.CreateNew(); }
private Task <ICollection <string> > ValidateMessage() => _validator.Validate( new AddToggleConditionRequest( EditorID.Parse("test"), ToggleLocator.Create("wat"), _props ));