Esempio n. 1
0
        public async Task UniqueIndexActorAdd_ExpectsNewStateWithNewItems()
        {
            var stateManager = new Mock <IActorStateManager>();
            var state1       = new Dictionary <string, string> {
                { "Test1", Guid.NewGuid().ToString() }, { "Test2", Guid.NewGuid().ToString() }, { "Test3", Guid.NewGuid().ToString() }, { "Test4", Guid.NewGuid().ToString() }, { "Test5", Guid.NewGuid().ToString() }, { "Test6", Guid.NewGuid().ToString() }, { "Test7", Guid.NewGuid().ToString() }
            };
            var state2 = new Dictionary <string, string> {
                { "Test8", Guid.NewGuid().ToString() }, { "Test9", Guid.NewGuid().ToString() }, { "Test10", Guid.NewGuid().ToString() }
            };

            stateManager.Setup(manager => manager.GetStateAsync <Dictionary <string, string> >(_stateName, It.IsAny <CancellationToken>()))
            .Returns(Task.FromResult(state1))
            .Verifiable();
            stateManager.Setup(manager => manager.SetStateAsync(_stateName, state1, It.IsAny <CancellationToken>()))
            .Verifiable();
            UniqueIndexActor testDemoActor = await CreateActor(stateManager.Object, "Test UniqueIndexActor");

            await testDemoActor.Add("Test8", state2["Test8"]);

            await testDemoActor.Add("Test9", state2["Test9"]);

            await testDemoActor.Add("Test10", state2["Test10"]);

            state1.Should().HaveCount(10);
            state1.Should().Contain(state2);

            stateManager.VerifyAll();
        }