Best JustMockLite code snippet using Telerik.JustMock.Tests.Foo.GetBar
AssertionFixture.cs
Source:AssertionFixture.cs
...146 {147 var bar = Mock.Create<Bar>();148 Mock.Arrange(() => bar.Echo(1)).Returns(2).MustBeCalled();149 var foo = Mock.Create<Foo>();150 Mock.Arrange(() => foo.GetBar()).Returns(bar);151 Assert.Equal(foo.GetBar().Echo(1), 2);152 //asserts bar.153 Mock.Assert(foo.GetBar());154 }155 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]156 public void ShouldAssertAssertablesRecursively()157 {158 var bar = Mock.Create<Bar>();159 Mock.Arrange(() => bar.Echo(1)).Returns(2).MustBeCalled();160 Mock.Arrange(() => bar.Echo(2)).Returns(3).MustBeCalled();161 var foo = Mock.Create<Foo>();162 Mock.Arrange(() => foo.GetBar()).Returns(bar);163 Assert.Equal(foo.GetBar().Echo(1), 2);164 Assert.Throws<AssertionException>(() => Mock.Assert(foo));165 Assert.Equal(foo.GetBar().Echo(2), 3);166 Mock.Assert(foo);167 }168 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]169 public void ShouldAssertMethodWihtMultipleParameters()170 {171 var foo = Mock.Create<Foo>();172 // first call wont be asserted.173 Mock.Arrange(() => foo.Sum(1, 3)).Returns(1);174 // second call will be asserted.175 Mock.Arrange(() => foo.Sum(1, 2)).Returns(1);176 Assert.Equal(foo.Sum(1, 2), 1);177 Mock.Assert(() => foo.Sum(1, 2));178 }179 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]180 public void ShouldAssertMethodWithOutputParam()181 {182 var foo = Mock.Create<IFoo>();183 bool expected = true;184 Mock.Arrange(() => foo.EchoOut(out expected)).DoNothing();185 Assert.Throws<AssertionException>(() => Mock.Assert(() => foo.EchoOut(out expected)));186 foo.EchoOut(out expected);187 Mock.Assert(() => foo.EchoOut(out expected));188 Assert.True(expected);189 }190 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]191 public void ShouldThrowForUnUsedSetup()192 {193 var foo = Mock.Create<IFoo>();194 Mock.Arrange(() => foo.Echo(1)).Returns(10);195 Assert.Throws<AssertionException>(() => Mock.Assert(() => foo.Echo(1)));196 }197 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]198 public void ShouldAssertPropertyGetCall()199 {200 var foo = Mock.Create<IFoo>();201 Mock.Arrange(() => foo.Value).Returns(10);202 Assert.Throws<AssertionException>(() => Mock.Assert(() => foo.Value));203 }204 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]205 public void ShouldAssertCallWithMatchers()206 {207 var foo = Mock.Create<IFoo>();208 Mock.Arrange(() => foo.Echo(Arg.IsAny<int>())).Returns((int i) => i);209 Assert.Equal(foo.Echo(10), 10);210 Mock.Assert(() => foo.Echo(Arg.Matches<int>(x => x == 10)));211 Assert.Throws<AssertionException>(() => Mock.Assert(() => foo.Echo(Arg.Matches<int>(x => x == 11))));212 }213 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]214 public void ShouldAssertMatherWithAnyInAssertion()215 {216 var foo = Mock.Create<IFoo>();217 Mock.Arrange(() => foo.Echo(Arg.Matches<int>(x => x == 10))).Returns((int i) => i);218 Assert.Equal(foo.Echo(10), 10);219 Mock.Assert(() => foo.Echo(Arg.IsAny<int>()));220 }221 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]222 public void ShouldAssertCallHavingMultipleArgsWithMatchers()223 {224 var foo = Mock.Create<IFoo>();225 Mock.Arrange(() => foo.Execute(Arg.IsAny<int>(), Arg.IsAny<int>())).Returns((int id, int i) => i);226 Assert.Equal(foo.Execute(100, 10), 10);227 Mock.Assert(() => foo.Execute(Arg.IsAny<int>(), Arg.Matches<int>(x => x == 10)));228 }229 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]230 public void ShouldAssertMatcherWithRealValueArguments()231 {232 var foo = Mock.Create<IFoo>();233 Mock.Arrange(() => foo.Execute(Arg.IsAny<int>(), Arg.IsAny<int>())).Returns((int id, int i) => i);234 Assert.Equal(foo.Execute(100, 10), 10);235 Mock.Assert(() => foo.Execute(100, Arg.Matches<int>(x => x == 10)));236 }237 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]238 public void ShouldThrowForInvalidAssertionWithMatcher()239 {240 var foo = Mock.Create<IFoo>();241 Mock.Arrange(() => foo.Execute(Arg.IsAny<int>(), Arg.IsAny<int>())).Returns((int id, int i) => i);242 Assert.Equal(foo.Execute(100, 10), 10);243 Assert.Throws<AssertionException>(() =>244 {245 Mock.Assert(() => foo.Execute(Arg.Matches<int>(x => x == 4), Arg.Matches<int>(x => x == 10)));246 });247 }248 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]249 public void ShouldThrowForNonSpecificLambdaCallsOnAssert()250 {251 var foo = Mock.Create<IFoo>();252 Mock.Arrange(() => foo.Echo(1)).Returns(2);253 foo.Echo(1);254 Assert.Throws<MockException>(() => Mock.Assert(() => foo));255 Mock.Assert(foo);256 }257 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]258 public void ShouldAssertPropertySetUsingAssertable()259 {260 var foo = Mock.Create<IFoo>();261 Mock.ArrangeSet<IFoo>(() => { foo.Value = 1; }).DoNothing().MustBeCalled();262 Assert.Throws<AssertionException>(() => Mock.Assert(foo));263 foo.Value = 1;264 Mock.Assert(foo);265 }266 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]267 public void ShouldAssertSpecificPropertySet()268 {269 var foo = Mock.Create<IFoo>();270 Mock.ArrangeSet<IFoo>(() => { foo.Value = 1; });271 Assert.Throws<AssertionException>(() => Mock.AssertSet(() => foo.Value = 1));272 foo.Value = 1;273 Mock.AssertSet(() => foo.Value = 1);274 }275 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]276 public void ShouldBeAbleToSpecifyOccurenceForAssertSet()277 {278 var foo = Mock.Create<IFoo>();279 foo.Value = 1;280 foo.Value = 2;281 Mock.AssertSet(() => foo.Value = Arg.AnyInt, Occurs.Exactly(2));282 }283 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]284 public void ShouldAssertSetWithMatcherWhenItInvokesAnotherMethodDuringSet()285 {286 var foo = Mock.Create<Foo>(Behavior.CallOriginal);287 // invokes OnFooValueChanged.288 foo.FooValue = Mock.Create<IFoo>(Behavior.CallOriginal);289 Mock.AssertSet(() => foo.FooValue = Arg.IsAny<IFoo>(), Occurs.Once());290 }291 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]292 public void ShouldNotThrowDuringAssertForCallOriginalWhenNoArrangeSpecified()293 {294 var foo = Mock.Create<FooWithSetThatThows>(Behavior.CallOriginal);295 Mock.AssertSet(() => foo.Value = Arg.AnyInt, Occurs.Never());296 }297 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]298 public void ShouldAssertMethodCallWithOutputParam()299 {300 var foo = Mock.Create<IFoo>();301 bool expected = true;302 Mock.Arrange(() => foo.EchoOut(out expected)).DoNothing();303 Assert.Throws<AssertionException>(() => Mock.Assert(() => foo.EchoOut(out expected)));304 bool actual = false;305 foo.EchoOut(out actual);306 Mock.Assert(() => foo.EchoOut(out expected));307 }308 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]309 public void ShoudThrowForUninitializedIndexedSet()310 {311 var foo = Mock.Create<IFooIndexed>();312 Mock.ArrangeSet<IFooIndexed>(() => foo[0] = "ping");313 Assert.Throws<AssertionException>(() => Mock.AssertSet(() => foo[0] = "ping"));314 }315 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]316 public void ShouldAssertIndexerSet()317 {318 var foo = Mock.Create<IFooIndexed>();319 Mock.ArrangeSet<IFooIndexed>(() => foo[0] = "ping");320 foo[0] = "ping";321 Mock.AssertSet(() => foo[0] = "ping");322 }323 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]324 public void ShouldAssertSetWithIndexerWithMatcher()325 {326 var foo = Mock.Create<IFooIndexed>();327 Mock.ArrangeSet<IFooIndexed>(() => foo[0] = "ping");328 foo[0] = "ping";329 Mock.AssertSet(() => foo[0] = Arg.Matches<string>(x => x.StartsWith("p")));330 }331 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]332 public void ShouldThrowSetIndexerWithMatcherThatIsNotCalled()333 {334 var foo = Mock.Create<IFooIndexed>();335 Mock.ArrangeSet<IFooIndexed>(() => foo[0] = "ping");336 Assert.Throws<AssertionException>(() =>337 {338 Mock.AssertSet(() => foo[0] = Arg.Matches<string>(x => x.StartsWith("p")));339 });340 }341 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]342 public void ShouldAssertMatcherSetupWithMatcherForIndexer()343 {344 var foo = Mock.Create<IFooIndexed>();345 Mock.ArrangeSet<IFooIndexed>(() => foo[0] = Arg.IsAny<string>());346 foo[0] = "ping";347 Mock.AssertSet(() => foo[0] = Arg.Matches<string>(x => string.Compare("ping", x) == 0));348 }349 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]350 public void ShouldEnsureMockAssertionAfterThrows()351 {352 var foo = Mock.Create<IFoo>();353 Mock.Arrange(() => foo.Execute(Arg.IsAny<string>())).Throws(new InvalidOperationException()).MustBeCalled();354 Assert.Throws<InvalidOperationException>(() => foo.Execute(string.Empty));355 // should not throw any exception.356 Mock.Assert(foo);357 }358 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]359 public void ShouldAssertCallsHavingListAsReturn()360 {361 var repository = Mock.Create<IFooRepository>();362 Mock.Arrange(() => repository.GetFoos()).Returns(new List<Foo>363 {364 new Foo(),365 new Foo(),366 new Foo(),367 new Foo(),368 new Foo()369 })370 .MustBeCalled();371 IList<Foo> foos = repository.GetFoos();372 var expected = 5;373 var actual = foos.Count;374 Assert.Equal(expected, actual);375 Mock.Assert(repository);376 }377 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]378 public void ShouldAssertSetupWithIgnoreArguments()379 {380 var foo = Mock.Create<IFoo>();381 Mock.Arrange(() => foo.Execute(0, 0)).IgnoreArguments().Returns(10);382 foo.Execute(1, 1);383 Mock.Assert(() => foo.Execute(Arg.AnyInt, Arg.AnyInt));384 }385 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]386 public void ShouldAssertCallWithMockAsArgument()387 {388 FooResult result = Mock.Create<FooResult>();389 var data = Mock.Create<IDataAccess>();390 data.ProcessFilterResult(result, "a", "b");391 Mock.Assert(() => data.ProcessFilterResult(result, "a", "b"), Occurs.Once());392 }393 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]394 public void ShoudIgnoreExecptionForReturnDuringAssert()395 {396 var foo = Mock.Create<IFoo>();397 Mock.Arrange(() => foo.Echo(Arg.AnyInt))398 .Returns((int value) =>399 {400 if (value == default(int))401 {402 throw new InvalidOperationException();403 }404 return value;405 });406 foo.Echo(10);407 Mock.Assert(() => foo.Echo(Arg.AnyInt), Occurs.Once());408 }409 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]410 public void ShouldNotResursivelyAssertForSetupThatReturnItSelf()411 {412 var foo = Mock.Create<IFoo>();413 Mock.Arrange(() => foo.GetFoo()).Returns(foo).MustBeCalled();414 foo.GetFoo();415 Mock.Assert(foo);416 }417 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]418 public void ShouldAssertCallWithArrayArguments()419 {420 var expression = Mock.Create<FooExrepssion>();421 var expected = new[] { "x", "y" };422 expression.Update(expected);423 Mock.Assert(() => expression.Update(expected));424 }425 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]426 public void ShouldFailCallWithArrayArgumentsHavingDifferentValues()427 {428 var expression = Mock.Create<FooExrepssion>();429 var expected = new[] { "x", "y" };430 var assert = new[] { "x", "z" };431 expression.Update(expected);432 Assert.Throws<AssertionException>(() =>433 {434 Mock.Assert(() => expression.Update(assert));435 });436 }437 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]438 public void ShouldAssertCallWithArrayOfValueTypeArguments()439 {440 var expression = Mock.Create<FooExrepssion>();441 expression.Update(new[] { 1, 2 });442 Mock.Assert(() => expression.Update(new[] { 1, 2 }));443 }444 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]445 public void ShouldAssertCallWithNullValuedArgument()446 {447 var expression = Mock.Create<FooExrepssion>();448 expression.UpdateIt(null);449 Mock.Assert(() => expression.UpdateIt(null));450 }451 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]452 public void ShouldBeAbleToAssertOccursUsingMatcherForSimilarCallAtOnce()453 {454 var foo = Mock.Create<Foo>();455 Mock.Arrange(() => foo.Echo(1)).Returns((int arg) => arg);456 Mock.Arrange(() => foo.Echo(2)).Returns((int arg) => arg);457 Mock.Arrange(() => foo.Echo(3)).Returns((int arg) => arg);458 foo.Echo(1);459 foo.Echo(2);460 foo.Echo(3);461 Mock.Assert(() => foo.Echo(Arg.AnyInt), Occurs.Exactly(3));462 }463 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]464 public void ShouldFailForOccursUsingMatcherForSimilarCallWhenNotExpected()465 {466 var foo = Mock.Create<Foo>();467 Mock.Arrange(() => foo.Echo(1)).Returns((int arg) => arg);468 Mock.Arrange(() => foo.Echo(2)).Returns((int arg) => arg);469 Mock.Arrange(() => foo.Echo(3)).Returns((int arg) => arg);470 foo.Echo(1);471 foo.Echo(2);472 Assert.Throws<AssertionException>(() =>473 {474 Mock.Assert(() => foo.Echo(Arg.AnyInt), Occurs.Exactly(3));475 });476 }477 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]478 public void ShouldAssertWithAnyAssertForExpectedInvocationOfSetupWithOccursFollowedBySimilarSetup()479 {480 var foo = Mock.Create<Foo>();481 Mock.Arrange(() => foo.Echo(1)).Returns((int arg) => arg).Occurs(2);482 Mock.Arrange(() => foo.Echo(2)).Returns((int arg) => arg);483 foo.Echo(1);484 foo.Echo(2);485 foo.Echo(1);486 Mock.Assert(() => foo.Echo(Arg.AnyInt));487 }488 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]489 public void ShouldFailAnyAssertWhenNumberOfTimesExecutedIsNotSameAsExpected()490 {491 var foo = Mock.Create<Foo>();492 Mock.Arrange(() => foo.Echo(1)).Returns((int arg) => arg).Occurs(2);493 foo.Echo(1);494 Assert.Throws<AssertionException>(() => Mock.Assert(() => foo.Echo(Arg.AnyInt)));495 }496 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]497 public void ShouldFailPreOccursForAnyAssertIfNotExpectedAsReqThatIsFollowedBySimilarSetup()498 {499 var foo = Mock.Create<Foo>();500 Mock.Arrange(() => foo.Echo(1)).Returns((int arg) => arg).Occurs(2);501 Mock.Arrange(() => foo.Echo(2)).Returns((int arg) => arg);502 foo.Echo(1);503 foo.Echo(2);504 Assert.Throws<AssertionException>(() =>505 {506 Mock.Assert(() => foo.Echo(Arg.AnyInt));507 });508 }509 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]510 public void ShouldAssertCallWhenCombinedWithEnumFollowedByAnyTypeArgs()511 {512 var region = Mock.Create<IRegionManager>();513 region.RequestNavigate(RegionNames.OperationsEditRegion, new FooExrepssion());514 Mock.Assert(() => region.RequestNavigate(RegionNames.OperationsEditRegion, Arg.IsAny<FooExrepssion>()), Occurs.Once());515 }516 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]517 public void ShouldAssertForAnyArgumentsWhenIgnoreSwitchIsSpecified()518 {519 var region = Mock.Create<IRegionManager>();520 region.RequestNavigate(RegionNames.OperationsEditRegion, new FooExrepssion());521 Mock.Assert(() => region.RequestNavigate(RegionNames.OperationsEditRegion, null), Args.Ignore());522 }523 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]524 public void ShouldAssertForAnyArgumentsWhenIgnoreSwitchAndOccursSpecified()525 {526 var region = Mock.Create<IRegionManager>();527 Mock.Assert(() => region.RequestNavigate(RegionNames.OperationsEditRegion, null), Args.Ignore(), Occurs.Never());528 }529 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]530 public void ShouldAssertForArgMatchesWhenArgumentCalulatedBasedOnMockValues()531 {532 var viewServiceMock = Mock.Create<IViewService>();533 var view1 = Mock.Create<IView>();534 var view2 = Mock.Create<IView>();535 var view3 = Mock.Create<IView>();536 Mock.Arrange(() => viewServiceMock.Views).Returns(new[] { view1, view2, view3 });537 Mock.Arrange(() => viewServiceMock.ActiveView).Returns(view2);538 Mock.Arrange(() => viewServiceMock.TryCloseViews(Arg.IsAny<IEnumerable<IView>>()));539 viewServiceMock.TryCloseViews(viewServiceMock.Views.Except(new[] { viewServiceMock.ActiveView }));540 Mock.Assert(() => viewServiceMock.TryCloseViews(Arg.Matches<IEnumerable<IView>>((views) => views.All((view) => view == view1 || view == view3))), Occurs.Once());541 }542 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]543 public void ShouldVerifyThatMockArgumentIsNotAssertedInsteadOfExpected()544 {545 var viewServiceMock = Mock.Create<IViewService>();546 var view1 = Mock.Create<IView>();547 var view2 = Mock.Create<IView>();548 var view3 = Mock.Create<IView>();549 Mock.Arrange(() => viewServiceMock.Views).Returns(new[] { view1, view2, view3 });550 Mock.Arrange(() => viewServiceMock.ActiveView).Returns(view2);551 Mock.Arrange(() => viewServiceMock.TryCloseViews(Arg.IsAny<IEnumerable<IView>>()));552 viewServiceMock.TryCloseViews(viewServiceMock.Views.Except(new[] { viewServiceMock.ActiveView }));553 // this will increase the execution number of GetHashCode()554 Assert.True(new[] { view1, view3 }.All((view) => view == view1 || view == view3));555 Mock.Assert(() => viewServiceMock.TryCloseViews(Arg.Matches<IEnumerable<IView>>((views) => views.All((view) => view == view1 || view == view3))), Occurs.Once());556 }557 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]558 public void ShouldThrowAssertFailedWithCompositeFailureMessage()559 {560 var foo = Mock.Create<IFoo>();561 Mock.Arrange(() => foo.Echo(Arg.AnyInt)).Occurs(3);562 Mock.Arrange(() => foo.Echo(15)).InOrder().OccursOnce();563 Mock.Arrange(() => foo.Echo(20)).InOrder().OccursOnce();564 var ex = Assert.Throws<AssertionException>(() => Mock.Assert(foo));565 Assert.True(ex.Message.Contains("1. "));566 Assert.True(ex.Message.Contains("2. "));567 Assert.True(ex.Message.Contains("3. "));568 Assert.True(ex.Message.Contains("4. "));569 Assert.True(ex.Message.Contains("--no calls--"));570 }571 public abstract class AbstractCUT572 {573 public void A() { this.DoA(); }574 public abstract void DoA();575 public void B() { this.DoB(); }576 protected abstract void DoB();577 }578 [TestMethod, TestCategory("Lite"), TestCategory("Assertion")]579 public void ShouldAssertAbstractMethodExercisedOnAbstractCUT()580 {581 var target = Mock.Create<AbstractCUT>(Behavior.CallOriginal);582 Mock.Arrange(() => target.DoA()).DoNothing();583 target.A();584 Mock.Assert(() => target.DoA(), Occurs.Once());585 Mock.NonPublic.Arrange(target, "DoB").DoNothing();586 target.B();587 Mock.NonPublic.Assert(target, "DoB", Occurs.Once());588 }589 [TestMethod]590 public void ShouldIncludeMessageInPosthocAssertion()591 {592 var x = Mock.Create<IDisposable>();593 var ex = Assert.Throws<AssertionException>(() => Mock.Assert(() => x.Dispose(), "The message!"));594 Assert.True(ex.Message.Contains("The message!"));595 }596 [TestMethod]597 public void ShouldIncludeMessageInBlanketAssertionWithMultipleFailures()598 {599 var x = Mock.Create<IDisposable>();600 Mock.Arrange(() => x.Dispose()).MustBeCalled("Because of reasons!");601 Mock.Arrange(() => x.Dispose()).InOrder("More reasons!");602 var ex = Assert.Throws<AssertionException>(() => Mock.Assert(x, "The blanket!"));603 Assert.True(ex.Message.Contains("Because of reasons!"));604 Assert.True(ex.Message.Contains("More reasons!"));605 Assert.True(ex.Message.Contains("The blanket!"));606 }607 [TestMethod]608 public void ShouldIncludeMessageInBlanketAssertionWithSingleFailure()609 {610 var x = Mock.Create<IDisposable>();611 Mock.Arrange(() => x.Dispose()).MustBeCalled("Because of reasons!");612 var ex = Assert.Throws<AssertionException>(() => Mock.Assert(x, "The blanket!"));613 Assert.True(ex.Message.Contains("Because of reasons!"));614 Assert.True(ex.Message.Contains("The blanket!"));615 }616 public class FooWithSetThatThows617 {618 public virtual int Value619 {620 get { return value; }621 set { throw new NotImplementedException(); }622 }623 private readonly int value;624 }625 public interface IView626 {627 }628 public interface IViewService629 {630 void TryCloseViews(IEnumerable<IView> param1);631 IView ActiveView { get; set; }632 IView[] Views { get; set; }633 }634 public enum RegionNames635 {636 OperationsEditRegion637 }638 public interface IRegionManager639 {640 void RequestNavigate(RegionNames names, FooExrepssion exp);641 }642 public class FooExrepssion643 {644 public virtual void Update(IEnumerable<string> arguments)645 {646 }647 public virtual void Update(IEnumerable<int> arguments)648 {649 }650 public virtual void UpdateIt(FooResult value)651 {652 }653 }654 public class FooResult655 {656 }657 public interface IDataAccess658 {659 void ProcessFilterResult(FooResult result, string email, string body);660 }661 public interface IFooRepository662 {663 IList<Foo> GetFoos();664 }665 public interface IFoo666 {667 void EchoOut(out bool expected);668 void VoidCall();669 int Value { get; set; }670 void Execute(string arg);671 int Echo(int intValue);672 int Execute(int arg1, int arg2);673 IFoo GetFoo();674 }675 public interface IFooIndexed676 {677 string this[int key] { get; set; }678 }679 public class Foo680 {681 public virtual int Echo(int input)682 {683 return input;684 }685 public virtual int Sum(int x, int y)686 {687 return x + y;688 }689 public virtual Bar GetBar()690 {691 return new Bar();692 }693 public virtual bool Value { get; set; }694 protected virtual void OnFooValueChanged()695 {696 }697 public virtual IFoo FooValue698 {699 get700 {701 return fooValue;702 }703 set...
SequenceFixture.cs
Source:SequenceFixture.cs
...69 {70 var bar1 = Mock.Create<IBar>();71 var bar2 = Mock.Create<IBar>();72 var foo = Mock.Create<IFoo>();73 Mock.Arrange(() => foo.GetBar()).Returns(bar1).InSequence();74 Mock.Arrange(() => foo.GetBar()).Returns(bar2).InSequence();75 Assert.Equal(foo.GetBar().GetHashCode(), bar1.GetHashCode());76 Assert.Equal(foo.GetBar().GetHashCode(), bar2.GetHashCode());77 }78 [TestMethod, TestCategory("Lite"), TestCategory("Sequence")]79 public void ShouldMultipleForDifferentMatchers()80 {81 var foo = Mock.Create<IFoo>();82 Mock.Arrange(() => foo.Echo(Arg.Matches<int>(x => x > 10))).Returns(10).InSequence();83 Mock.Arrange(() => foo.Echo(Arg.Matches<int>(x => x > 20))).Returns(20).InSequence();84 Assert.Equal(foo.Echo(11), 10);85 Assert.Equal(foo.Echo(21), 20);86 }87 [TestMethod, TestCategory("Lite"), TestCategory("Sequence")]88 public void ShouldBeAbleToChainReturns()89 {90 var foo = Mock.Create<IFoo>();91 Mock.Arrange(() => foo.Echo(Arg.AnyInt))92 .Returns(10)93 .Returns(11);94 Assert.Equal(10, foo.Echo(1));95 Assert.Equal(11, foo.Echo(2));96 }97 [TestMethod, TestCategory("Lite"), TestCategory("Sequence")]98 public void ShouldBeAbleToSetMustBeCalledForChainReturn()99 {100 var foo = Mock.Create<IFoo>();101 Mock.Arrange(() => foo.Echo(Arg.AnyInt))102 .Returns(10)103 .Returns(11).MustBeCalled();104 Assert.Equal(10, foo.Echo(1));105 Assert.Equal(11, foo.Echo(2));106 Mock.Assert(foo);107 }108 [TestMethod, TestCategory("Lite"), TestCategory("Sequence")]109 public void ShouldBeAbleToCorrectlyArrangeTwoChainReturns()110 {111 var foo = Mock.Create<IFoo>();112 Mock.Arrange(() => foo.Echo(Arg.AnyInt))113 .Returns(10)114 .Returns(11).MustBeCalled();115 Mock.Arrange(() => foo.Echo(Arg.AnyInt))116 .Returns(12)117 .Returns(13).MustBeCalled();118 Assert.Equal(10, foo.Echo(1));119 Assert.Equal(11, foo.Echo(2));120 Assert.Equal(12, foo.Echo(3));121 Assert.Equal(13, foo.Echo(4));122 Mock.Assert(foo);123 }124 [TestMethod, TestCategory("Lite"), TestCategory("Sequence")]125 public void Should_Arrange_Calls_In_Sequence()126 {127 var foo = Mock.Create<IFoo2>();128 foo.Arrange(x => x.Add(Arg.AnyInt, Arg.AnyInt)).Returns(3).InSequence();129 foo.Arrange(x => x.Add(Arg.AnyInt, Arg.AnyInt)).Returns(5).InSequence();130 foo.Arrange(x => x.Add(Arg.AnyInt, Arg.AnyInt)).Returns(7).InSequence();131 //The parameters don't matter132 Assert.Equal(3, foo.Add(2, 2));133 Assert.Equal(5, foo.Add(2, 2));134 Assert.Equal(7, foo.Add(2, 2));135 //Anything after the last configured InSequence/Returns follows rule of the last arrange136 Assert.Equal(7, foo.Add(2, 5));137 }138 [TestMethod, TestCategory("Lite"), TestCategory("Sequence")]139 public void Should_Arrange_Calls_In_Sequence_Fluently()140 {141 var foo = Mock.Create<IFoo2>();142 foo.Arrange(x => x.Add(Arg.AnyInt, Arg.AnyInt)).Returns(3).Returns(5).Returns(7);143 //The parameters don't matter144 Assert.Equal(3, foo.Add(2, 2));145 Assert.Equal(5, foo.Add(2, 2));146 Assert.Equal(7, foo.Add(2, 2));147 //Anything after the last configured InSequence/Returns follows rule of the last arrange148 Assert.Equal(7, foo.Add(2, 2));149 }150 [TestMethod, TestCategory("Lite"), TestCategory("Sequence"), TestCategory("InOrder")]151 public void ShouldAssertInOrderOnSameMethod()152 {153 var mock = Mock.Create<IFoo>();154 Mock.Arrange(() => mock.GetIntValue()).InSequence().InOrder();155 Mock.Arrange(() => mock.GetIntValue()).InSequence().InOrder();156 Assert.Throws<AssertionException>(() => Mock.Assert(mock));157 mock.GetIntValue();158 mock.GetIntValue();159 Mock.Assert(mock);160 }161 public interface IFoo2162 {163 int Add(int addend1, int addend2);164 }165 public interface IFoo166 {167 string Execute(string arg);168 int Echo(int arg1);169 int GetIntValue();170 IBar GetBar();171 }172 public interface IBar173 {174 }175 }176}...
GetBar
Using AI Code Generation
1int bar = Telerik.JustMock.Tests.Foo.GetBar();2int bar = Telerik.JustMock.Tests.Foo.GetBar();3int bar = Telerik.JustMock.Tests.Foo.GetBar();4int bar = Telerik.JustMock.Tests.Foo.GetBar();5int bar = Telerik.JustMock.Tests.Foo.GetBar();6int bar = Telerik.JustMock.Tests.Foo.GetBar();7int bar = Telerik.JustMock.Tests.Foo.GetBar();8int bar = Telerik.JustMock.Tests.Foo.GetBar();9int bar = Telerik.JustMock.Tests.Foo.GetBar();10int bar = Telerik.JustMock.Tests.Foo.GetBar();11int bar = Telerik.JustMock.Tests.Foo.GetBar();12int bar = Telerik.JustMock.Tests.Foo.GetBar();13int bar = Telerik.JustMock.Tests.Foo.GetBar();14int bar = Telerik.JustMock.Tests.Foo.GetBar();
GetBar
Using AI Code Generation
1Foo.GetBar();2Foo.GetBar();3Foo.GetBar();4Foo.GetBar();5Foo.GetBar();6Foo.GetBar();7Foo.GetBar();8Foo.GetBar();9Foo.GetBar();10Foo.GetBar();11Foo.GetBar();12Foo.GetBar();13Foo.GetBar();14Foo.GetBar();15Foo.GetBar();16Foo.GetBar();17Foo.GetBar();18Foo.GetBar();
GetBar
Using AI Code Generation
1Foo foo = new Foo();2int bar = foo.GetBar();3Foo foo = new Foo();4int bar = foo.GetBar();5Telerik.JustMock.Tests.Foo foo = Telerik.JustMock.Mock.Create<Telerik.JustMock.Tests.Foo>();6Telerik.JustMock.Mock.Arrange(() => foo.GetBar()).Returns(42);7int bar = foo.GetBar();8Telerik.JustMock.Tests.Foo foo = Telerik.JustMock.Mock.Create<Telerik.JustMock.Tests.Foo>();9Telerik.JustMock.Mock.Arrange(() => foo.GetBar()).Returns(42);10int bar = foo.GetBar();11Telerik.JustMock.Tests.Foo foo = Telerik.JustMock.Mock.Create<Telerik.JustMock.Tests.Foo>();12Telerik.JustMock.Mock.Arrange(() => foo.GetBar()).Returns(42);13int bar = foo.GetBar();14Telerik.JustMock.Tests.Foo foo = Telerik.JustMock.Mock.Create<Telerik.JustMock.Tests.Foo>();15Telerik.JustMock.Mock.Arrange(() => foo.GetBar()).Returns(42);16int bar = foo.GetBar();17Telerik.JustMock.Tests.Foo foo = Telerik.JustMock.Mock.Create<Telerik.JustMock.Tests.Foo>();18Telerik.JustMock.Mock.Arrange(() => foo.GetBar()).Returns(42);19int bar = foo.GetBar();20Telerik.JustMock.Tests.Foo foo = Telerik.JustMock.Mock.Create<Telerik.JustMock.Tests.Foo>();21Telerik.JustMock.Mock.Arrange(() => foo.GetBar()).Returns(42);22int bar = foo.GetBar();23Telerik.JustMock.Tests.Foo foo = Telerik.JustMock.Mock.Create<Telerik.JustMock.Tests.Foo>();
GetBar
Using AI Code Generation
1Foo foo = new Foo();2foo.GetBar();3Foo foo = new Foo();4foo.GetBar();5Foo foo = new Foo();6foo.GetBar();7Foo foo = new Foo();8foo.GetBar();9Foo foo = new Foo();10foo.GetBar();11Foo foo = new Foo();12foo.GetBar();13Foo foo = new Foo();14foo.GetBar();15Foo foo = new Foo();16foo.GetBar();17Foo foo = new Foo();18foo.GetBar();19Foo foo = new Foo();20foo.GetBar();21Foo foo = new Foo();22foo.GetBar();23Foo foo = new Foo();24foo.GetBar();25Foo foo = new Foo();26foo.GetBar();27Foo foo = new Foo();28foo.GetBar();29Foo foo = new Foo();30foo.GetBar();
GetBar
Using AI Code Generation
1var foo = Mock.Create<Foo>();2Mock.Arrange(() => foo.GetBar()).Returns(42);3var foo = Mock.Create<Foo>();4Mock.Arrange(() => foo.GetBar()).Returns(42);5var foo = Mock.Create<Foo>();6Mock.Arrange(() => foo.GetBar()).Returns(42);7var foo = Mock.Create<Foo>();8Mock.Arrange(() => foo.GetBar()).Returns(42);9var foo = Mock.Create<Foo>();10Mock.Arrange(() => foo.GetBar()).Returns(42);11var foo = Mock.Create<Foo>();12Mock.Arrange(() => foo.GetBar()).Returns(42);13var foo = Mock.Create<Foo>();14Mock.Arrange(() => foo.GetBar()).Returns(42);15var foo = Mock.Create<Foo>();16Mock.Arrange(() => foo.GetBar()).Returns(42);17var foo = Mock.Create<Foo>();18Mock.Arrange(() => foo.GetBar()).Returns(42);
GetBar
Using AI Code Generation
1var foo = Mock.Create<Foo>();2Mock.Arrange(() => foo.GetBar()).Returns("Bar");3Console.WriteLine(foo.GetBar());4var foo = Mock.Create<Foo>();5Mock.Arrange(() => foo.GetBar()).Returns("Bar");6Console.WriteLine(foo.GetBar());
GetBar
Using AI Code Generation
1var foo = Telerik.JustMock.Mock.Create<Telerik.JustMock.Tests.Foo>();2Telerik.JustMock.Mock.Arrange(() => foo.GetBar()).Returns(1);3var result = foo.GetBar();4var foo = Telerik.JustMock.Mock.Create<Telerik.JustMock.Tests.Foo>();5Telerik.JustMock.Mock.Arrange(() => foo.GetBar()).Returns(2);6var result = foo.GetBar();7var foo = Telerik.JustMock.Mock.Create<Telerik.JustMock.Tests.Foo>();8Telerik.JustMock.Mock.Arrange(() => foo.GetBar()).Returns(3);9var result = foo.GetBar();10var foo = Telerik.JustMock.Mock.Create<Telerik.JustMock.Tests.Foo>();11Telerik.JustMock.Mock.Arrange(() => foo.GetBar()).Returns(4);12var result = foo.GetBar();13var foo = Telerik.JustMock.Mock.Create<Telerik.JustMock.Tests.Foo>();14Telerik.JustMock.Mock.Arrange(() => foo.GetBar()).Returns(5);15var result = foo.GetBar();16var foo = Telerik.JustMock.Mock.Create<Telerik.JustMock.Tests.Foo>();17Telerik.JustMock.Mock.Arrange(() => foo.GetBar()).Returns(6);18var result = foo.GetBar();
GetBar
Using AI Code Generation
1var foo = Mock.Create<Foo>();2Mock.Arrange(() => foo.GetBar()).Returns(1);3int bar = foo.GetBar();4Console.WriteLine(bar);5var foo = Mock.Create<Foo>();6Mock.Arrange(() => foo.GetBar()).Returns(2);7int bar = foo.GetBar();8Console.WriteLine(bar);9var foo = Mock.Create<Foo>();10Mock.Arrange(() => foo.GetBar()).Returns(3);11int bar = foo.GetBar();12Console.WriteLine(bar);13var foo = Mock.Create<Foo>();14Mock.Arrange(() => foo.GetBar()).Returns(4);15int bar = foo.GetBar();16Console.WriteLine(bar);17var foo = Mock.Create<Foo>();18Mock.Arrange(() => foo.GetBar()).Returns(5);19int bar = foo.GetBar();20Console.WriteLine(bar);21var foo = Mock.Create<Foo>();22Mock.Arrange(() => foo.GetBar()).Returns(6);23int bar = foo.GetBar();24Console.WriteLine(bar);25var foo = Mock.Create<Foo>();26Mock.Arrange(() => foo.GetBar()).Returns(7);27int bar = foo.GetBar();28Console.WriteLine(bar);29var foo = Mock.Create<Foo>();30Mock.Arrange(() => foo.GetBar()).Returns(8);31int bar = foo.GetBar();32Console.WriteLine(bar);33var foo = Mock.Create<Foo>();34Mock.Arrange(() => foo.GetBar()).Returns(9);35int bar = foo.GetBar();36Console.WriteLine(bar);
GetBar
Using AI Code Generation
1Foo foo = new Foo();2string bar = foo.GetBar();3Foo foo = new Foo();4string bar = foo.GetBar();5Foo foo = new Foo();6string bar = foo.GetBar();7Foo foo = new Foo();8string bar = foo.GetBar();9Foo foo = new Foo();10string bar = foo.GetBar();11Foo foo = new Foo();12string bar = foo.GetBar();13Foo foo = new Foo();14string bar = foo.GetBar();15Foo foo = new Foo();16string bar = foo.GetBar();17Foo foo = new Foo();18string bar = foo.GetBar();19Foo foo = new Foo();20string bar = foo.GetBar();21Foo foo = new Foo();22string bar = foo.GetBar();23Foo foo = new Foo();24string bar = foo.GetBar();25Foo foo = new Foo();26string bar = foo.GetBar();27Foo foo = new Foo();28string bar = foo.GetBar();29Foo foo = new Foo();30string bar = foo.GetBar();
GetBar
Using AI Code Generation
1var foo = Mock.Create<Foo>();2Mock.Arrange(() => foo.GetBar()).Returns("bar");3string s = foo.GetBar();4Console.WriteLine(s);5var foo = Mock.Create<Foo>();6Mock.Arrange(() => foo.GetBar()).Returns("bar");7string s = foo.GetBar();8Console.WriteLine(s);9var foo = Mock.Create<Foo>();10Mock.Arrange(() => foo.GetBar()).Returns("bar");11string s = foo.GetBar();12Console.WriteLine(s);13var foo = Mock.Create<Foo>();14Mock.Arrange(() => foo.GetBar()).Returns("bar");15string s = foo.GetBar();16Console.WriteLine(s);17var foo = Mock.Create<Foo>();18Mock.Arrange(() => foo.GetBar()).Returns("bar");19string s = foo.GetBar();20Console.WriteLine(s);21var foo = Mock.Create<Foo>();22Mock.Arrange(() => foo.GetBar()).Returns("bar");23string s = foo.GetBar();24Console.WriteLine(s);25var foo = Mock.Create<Foo>();26Mock.Arrange(() => foo.GetBar()).Returns("bar");27string s = foo.GetBar();28Console.WriteLine(s);29var foo = Mock.Create<Foo>();30Mock.Arrange(() => foo.GetBar()).Returns("bar");31string s = foo.GetBar();32Console.WriteLine(s);33var foo = Mock.Create<Foo>();34Mock.Arrange(() => foo.GetBar()).Returns("bar");35string s = foo.GetBar();36Console.WriteLine(s);
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!