public void GetEnum_NoValueFound() { var choiceGuids = GetOrderedGuids <SingleChoiceFieldChoices>(); rsapiProvider.Setup(SetupExpr(choiceGuids)).Returns(GetResults(choiceGuids, 1)); var choiceCache = new ChoiceCache(rsapiProvider.Object); Assert.Throws <InvalidOperationException>(() => choiceCache.GetEnum <SingleChoiceFieldChoices>(1000)); }
public void GetEnum_OnlyFetchesFromServerOnce() { var choiceGuids = GetOrderedGuids <SingleChoiceFieldChoices>(); var setupExpr = SetupExpr(choiceGuids); rsapiProvider.SetupSequence(setupExpr).Returns(GetResults(choiceGuids, 1)); var choiceCache = new ChoiceCache(rsapiProvider.Object); Assert.AreEqual(SingleChoiceFieldChoices.SingleChoice1, choiceCache.GetEnum <SingleChoiceFieldChoices>(1)); Assert.AreEqual(SingleChoiceFieldChoices.SingleChoice1, choiceCache.GetEnum <SingleChoiceFieldChoices>(1)); rsapiProvider.Verify(setupExpr, Times.Once); }
public void GetEnum_RefreshesForEachCacheInstance() { var choiceGuids = GetOrderedGuids <SingleChoiceFieldChoices>(); var setupExpr = SetupExpr(choiceGuids); rsapiProvider .SetupSequence(setupExpr) .Returns(GetResults(choiceGuids, 1)) .Returns(GetResults(choiceGuids, 11)); var choiceCache1 = new ChoiceCache(rsapiProvider.Object); var choiceCache2 = new ChoiceCache(rsapiProvider.Object); Assert.AreEqual(SingleChoiceFieldChoices.SingleChoice1, choiceCache1.GetEnum <SingleChoiceFieldChoices>(1)); Assert.AreEqual(SingleChoiceFieldChoices.SingleChoice1, choiceCache2.GetEnum <SingleChoiceFieldChoices>(11)); rsapiProvider.Verify(setupExpr, Times.Exactly(2)); }
public void GetEnum_RefreshesForDifferentEnumerationTypes() { var singleChoiceGuids = GetOrderedGuids <SingleChoiceFieldChoices>(); var multiChoiceGuids = GetOrderedGuids <MultipleChoiceFieldChoices>(); var singleSetupExpr = SetupExpr(singleChoiceGuids); var multiSetupExpr = SetupExpr(multiChoiceGuids); rsapiProvider.SetupSequence(singleSetupExpr).Returns(GetResults(singleChoiceGuids, 1)); rsapiProvider.SetupSequence(multiSetupExpr).Returns(GetResults(multiChoiceGuids, 11)); var choiceCache = new ChoiceCache(rsapiProvider.Object); Assert.AreEqual(SingleChoiceFieldChoices.SingleChoice1, choiceCache.GetEnum <SingleChoiceFieldChoices>(1)); Assert.AreEqual(MultipleChoiceFieldChoices.MultipleChoice1, choiceCache.GetEnum <MultipleChoiceFieldChoices>(11)); rsapiProvider.Verify(singleSetupExpr, Times.Once); rsapiProvider.Verify(multiSetupExpr, Times.Once); }
public void GetEnum_TypeIsNotEnum() { var choiceCache = new ChoiceCache(rsapiProvider.Object); Assert.Throws <NotSupportedException>(() => choiceCache.GetEnum <GravityLevel2>(1)); }