public async Task CanUseCustomGrainActivatorToCreateGrains() { ISimpleDIGrain grain = this.fixture.GrainFactory.GetGrain <ISimpleDIGrain>(GetRandomGrainId(), grainClassNamePrefix: "UnitTests.Grains.ExplicitlyRegistered"); var actual = await grain.GetStringValue(); Assert.Equal(HardcodedGrainActivator.HardcodedValue, actual); }
public async Task CannotGetExplictlyRegisteredGrain() { ISimpleDIGrain grain = this.fixture.GrainFactory.GetGrain <ISimpleDIGrain>(GetRandomGrainId(), grainClassNamePrefix: "UnitTests.Grains.ExplicitlyRegistered"); var exception = await Assert.ThrowsAsync <InvalidOperationException>(() => grain.GetLongValue()); Assert.Contains("Unable to resolve service for type 'System.String' while attempting to activate 'UnitTests.Grains.ExplicitlyRegisteredSimpleDIGrain'", exception.Message); }
public async Task CannotGetExplictlyRegisteredGrain() { ISimpleDIGrain grain = this.fixture.GrainFactory.GetGrain <ISimpleDIGrain>(GetRandomGrainId(), grainClassNamePrefix: "UnitTests.Grains.ExplicitlyRegistered"); var exception = await Assert.ThrowsAsync <OrleansException>(() => grain.GetLongValue()); Assert.Contains("Error creating activation for", exception.Message); Assert.Contains("explicitly-registered", exception.Message); }
public async Task CannotGetExplictlyRegisteredGrain() { ISimpleDIGrain grain = GrainFactory.GetGrain <ISimpleDIGrain>(GetRandomGrainId(), grainClassNamePrefix: "UnitTests.Grains.ExplicitlyRegistered"); var exception = await Assert.ThrowsAsync <OrleansException>(() => grain.GetTicksFromService()); Assert.Contains("Error creating activation for", exception.Message); Assert.Contains(nameof(ExplicitlyRegisteredSimpleDIGrain), exception.Message); }
public async Task CanUseCustomGrainActivatorToReleaseGrains() { ISimpleDIGrain grain1 = this.fixture.GrainFactory.GetGrain <ISimpleDIGrain>(GetRandomGrainId(), grainClassNamePrefix: "UnitTests.Grains.ExplicitlyRegistered"); long initialReleasedInstances = await grain1.GetLongValue(); ISimpleDIGrain grain2 = this.fixture.GrainFactory.GetGrain <ISimpleDIGrain>(GetRandomGrainId(), grainClassNamePrefix: "UnitTests.Grains.ExplicitlyRegistered"); long secondReleasedInstances = await grain2.GetLongValue(); Assert.Equal(initialReleasedInstances, secondReleasedInstances); await grain1.DoDeactivate(); await Task.Delay(250); ISimpleDIGrain grain3 = this.fixture.GrainFactory.GetGrain <ISimpleDIGrain>(GetRandomGrainId(), grainClassNamePrefix: "UnitTests.Grains.ExplicitlyRegistered"); long finalReleasedInstances = await grain3.GetLongValue(); Assert.Equal(initialReleasedInstances + 1, finalReleasedInstances); }
public async Task DiTests_SimpleDiGrainGetGrain() { ISimpleDIGrain grain = GrainFactory.GetGrain <ISimpleDIGrain>(GetRandomGrainId()); long ignored = await grain.GetTicksFromService(); }
public async Task CanGetGrainWithInjectedDependencies() { ISimpleDIGrain grain = GrainFactory.GetGrain <ISimpleDIGrain>(GetRandomGrainId()); long ignored = await grain.GetTicksFromService(); }