Best JustMockLite code snippet using Telerik.JustMock.Tests.MockFixture.ShouldAssertCallOriginal
MockFixture.cs
Source:MockFixture.cs
...173 {174 Assert.Throws<Exception>(() => Mock.Create<IFoo>(25, true));175 }176 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]177 public void ShouldAssertCallOriginal()178 {179 var foo = Mock.Create<FooBase>();180 Mock.Arrange(() => foo.GetString("x")).CallOriginal();181 Mock.Arrange(() => foo.GetString("y")).Returns("z");182 Assert.Equal("x", foo.GetString("x"));183 Assert.Equal("z", foo.GetString("y"));184 }185 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]186 public void ShouldAssertGuidParam()187 {188 var foo = Mock.Create<IFoo>();189 Guid guid = Guid.NewGuid();190 bool called = false;191 Mock.Arrange(() => foo.Execute(guid)).DoInstead(() => called = true);192 foo.Execute(guid);193 Assert.True(called);194 }195 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]196 public void ShouldAssertCallOriginalForVoid()197 {198 var log = Mock.Create<Log>();199 Mock.Arrange(() => log.Info(Arg.IsAny<string>())).CallOriginal();200 Assert.Throws<Exception>(() => log.Info("test"));201 }202 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]203 public void ShouldPassArgumentToOriginal()204 {205 var log = Mock.Create<Log>();206 Mock.Arrange(() => log.Info("x")).CallOriginal();207 Assert.Equal(Assert.Throws<Exception>(() => log.Info("x")).Message, "x");208 }209 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]210 public void MockObjectShouldBeAssignableToMockedInterface()211 {212 var iFoo = Mock.Create<IFoo>();213 Assert.True(iFoo is IFoo);214 }215 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]216 public void ShouldAssertVoidCall()217 {218 var iFoo = Mock.Create<IFoo>();219 Mock.Arrange(() => iFoo.JustCall()).DoNothing();220 iFoo.JustCall();221 }222 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]223 public void ShouldAssertCallsThatAreMethodCalls()224 {225 const int arg = 2;226 var iBar = Mock.Create<IBar>();227 Mock.Arrange(() => iBar.Echo(Arg.IsAny<int>())).Returns(1);228 Assert.Equal(iBar.Echo(arg + 1), 1);229 }230 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]231 public void ShouldAssertGenericThrowsCall()232 {233 var iFoo = Mock.Create<IFoo>();234 Mock.Arrange(() => iFoo.Execute(Arg.IsAny<string>())).Throws<FormatException>();235 Assert.Throws<FormatException>(() => iFoo.Execute("crash"));236 }237 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]238 public void ShouldAssertThrowsHavingArguments()239 {240 var iFoo = Mock.Create<IFoo>();241 Mock.Arrange(() => iFoo.Execute(Arg.IsAny<string>())).Throws<CustomExepction>("test", true);242 Assert.Throws<CustomExepction>(() => iFoo.Execute("crash"));243 }244 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]245 public void ShouldAssertEqualityRefereces()246 {247 var iFoo1 = Mock.Create<IFoo>();248 var iFoo2 = Mock.Create<IFoo>();249 Assert.True(iFoo1.Equals(iFoo1));250 Assert.False(iFoo1.Equals(iFoo2));251 }252 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]253 public void TwoMockedObjectsShouldHavdDifferentHashCode()254 {255 var iFoo1 = Mock.Create<IFoo>();256 var iFoo2 = Mock.Create<IFoo>();257 Assert.NotEqual(iFoo1.GetHashCode(), iFoo2.GetHashCode());258 }259 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]260 public void ToStringShouldNotbeNullOrEmpty()261 {262 var foo = Mock.Create<IFoo>();263 Assert.False(String.IsNullOrEmpty(foo.ToString()));264 }265 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]266 public void ShouldMockClassWithNonDefaultConstructor()267 {268 var nonDefaultClass = Mock.Create<ClassWithNonDefaultConstructor>("ping", 1);269 Assert.NotNull(nonDefaultClass);270 }271 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]272 public void ShouldMockClassWithNonDefaultConstructorWithoutPassingAnything()273 {274 var nonDefaultClass = Mock.Create<ClassWithNonDefaultConstructor>();275 Assert.NotNull(nonDefaultClass);276 }277 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]278 public void ShouldMockClassWithNoDefaultConstructorWithNull()279 {280 var nonDefaultClass = Mock.Create<ClassWithNonDefaultConstructor>(null, 1);281 Assert.NotNull(nonDefaultClass);282 }283 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]284 public void ShoulsMockClassWithMultipleNonDefaultConstructor()285 {286 var nonDefaultClass = Mock.Create<ClassWithNonDefaultConstructor>(null, 1, true);287 Assert.NotNull(nonDefaultClass);288 }289 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]290 public void ShouldAssertGuidNonDefaultCtorWithDefaultIfNotSpecified()291 {292 var nonDefaultGuidClass = Mock.Create<ClassNonDefaultGuidConstructor>();293 Assert.Equal(nonDefaultGuidClass.guidValue, default(Guid));294 }295 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]296 public void ShouldAssertBaseCallWithGuid()297 {298 var foo = Mock.Create<FooBase>();299 Mock.Arrange(() => foo.GetGuid()).CallOriginal();300 Assert.Equal(foo.GetGuid(), default(Guid));301 }302 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]303 public void ShouldAssertImplementedInterface()304 {305 var implemented = Mock.Create<IFooImplemted>();306 Assert.NotNull(implemented);307 }308 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]309 public void ShouldAssertBaseForImplemetedInterface()310 {311 var implemented = Mock.Create<IFooImplemted>();312 Assert.True(implemented is IFoo);313 }314 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]315 public void SHouldAssertCallsFromBaseInImplemented()316 {317 var implemented = Mock.Create<IFooImplemted>();318 Mock.Arrange(() => implemented.Execute("hello")).Returns("world");319 Assert.Equal(implemented.Execute("hello"), "world");320 }321 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]322 public void ShouldMockObject_GetHashCodeMethod()323 {324 var foo = Mock.Create<FooBase>();325 Mock.Arrange(() => foo.GetHashCode()).Returns(1);326 Assert.Equal(1, foo.GetHashCode());327 }328 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]329 public void ShouldMockObject_ToStringMethod()330 {331 var foo = Mock.Create<FooBase>();332 Mock.Arrange(() => foo.ToString()).Returns("foo");333 Assert.Equal("foo", foo.ToString());334 }335 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]336 public void ShouldMockObject_EqualsMethod()337 {338 var foo = Mock.Create<FooBase>();339 Mock.Arrange(() => foo.Equals(Arg.IsAny<object>())).Returns(true);340 Assert.True(foo.Equals(new object()));341 }342 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]343 public void ShouldCallUnderlyingEquals()344 {345 var foo1 = Mock.Create<FooOverridesEquals>("foo");346 var foo2 = Mock.Create<FooOverridesEquals>("foo");347 Assert.True(foo1.Equals(foo2));348 }349 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]350 public void ShouldNotCallBaseByDefault()351 {352 var foo = Mock.Create<FooBase>();353 // this will not throw exception.354 foo.ThrowException();355 }356 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]357 public void ShouldTakeLatestSetup()358 {359 var foo = Mock.Create<IFoo>();360 Mock.Arrange(() => foo.Execute("ping")).Returns("pong");361 Mock.Arrange(() => foo.Execute(Arg.IsAny<string>())).Returns("pong");362 Assert.Equal(foo.Execute("nothing"), "pong");363 }364 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]365 public void ShouldOverrideBehaviorFromBaseClass()366 {367 var foo = Mock.Create<FooBase>();368 Mock.Arrange(() => foo.GetString("pong")).CallOriginal().InSequence();369 Mock.Arrange(() => foo.GetString(Arg.IsAny<string>())).Returns("ping").InSequence();370 Assert.Equal(foo.GetString("pong"), "pong");371 Assert.Equal(foo.GetString("it"), "ping");372 }373 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]374 public void ShouldAssertDateTimeAsRef()375 {376 var foo = Mock.Create<IFoo>();377 DateTime expected = new DateTime(2009, 11, 26);378 Mock.Arrange(() => foo.Execute(out expected)).DoNothing();379 DateTime acutal = DateTime.Now;380 foo.Execute(out acutal);381 Assert.Equal(expected, acutal);382 }383 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]384 public void ShouldAssertOutputParamPassedViaNested()385 {386 var nested = new Nested();387 nested.expected = 10;388 var foo = Mock.Create<IFoo>();389 Mock.Arrange(() => foo.Execute(out nested.expected));390 int actual = 0;391 foo.Execute(out actual);392 Assert.Equal(actual, 10);393 }394 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]395 public void ShouldNotInvokeOriginalCallWhenInitiatedFromCtor()396 {397 var foo = Mock.Create<FooAbstractCall>(false);398 Assert.NotNull(foo);399 }400 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]401 public void ShouldNotInvokeOriginalActionWhenInitiatedFromCtor()402 {403 var foo = Mock.Create<FooAbstractAction>();404 Assert.NotNull(foo);405 }406 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]407 public void ShouldNotInitalizeAsArgMatcherWhenProcessingMemberAccessArgument()408 {409 var foo = Mock.Create<IFoo>();410 Mock.Arrange(() => foo.Execute(false, BadGuid)).OccursOnce();411 foo.Execute(false, Guid.Empty);412 Mock.Assert(() => foo.Execute(Arg.IsAny<bool>(), Guid.Empty));413 }414 public static readonly Guid BadGuid = Guid.Empty;415 public abstract class FooAbstractCall416 {417 public FooAbstractCall(bool flag)418 {419 // invoke base will throw exception here.420 Initailize();421 }422 public abstract bool Initailize();423 }424 public abstract class FooAbstractAction425 {426 public FooAbstractAction()427 {428 // invoke base will throw exception here.429 Initailize();430 }431 public abstract void Initailize();432 }433#if !COREFX434 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]435 public void ShouldCreateMockClassWithInternalConstructor()436 {437 var foo = Mock.Create<FooWithInternalConstruct>();438 Assert.NotNull(foo);439 }440 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]441 public void ShouldAssertArrangeWithInternalConstructor()442 {443 var foo = Mock.Create<FooWithInternalConstruct>();444 bool called = false;445 Mock.Arrange(() => foo.Execute()).DoInstead(() => called = true);446 foo.Execute();447 Assert.True(called);448 }449#endif450 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]451 public void ShouldAssertGenericFuncCalls()452 {453 var genericClass = Mock.Create<FooGeneric<int>>();454 Mock.Arrange(() => genericClass.Get(1, 1)).Returns(10);455 Assert.Equal(genericClass.Get(1, 1), 10);456 }457 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]458 public void ShouldAssertGenericVoidCalls()459 {460 var genericClass = Mock.Create<FooGeneric<int>>();461 bool called = false;462 Mock.Arrange(() => genericClass.Execute(1)).DoInstead(() => called = true);463 genericClass.Execute(1);464 Assert.True(called);465 }466 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]467 public void ShouldAssertGenricMockWithNoGenericClass()468 {469 var genericClass = Mock.Create<FooGeneric>();470 Mock.Arrange(() => genericClass.Get<int, int>(1)).Returns(10);471 Assert.Equal(genericClass.Get<int, int>(1), 10);472 }473 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]474 public void ShouldAssertFuncWithOccurrence()475 {476 var foo = Mock.Create<IFoo>();477 Mock.Arrange(() => foo.Execute("x")).Returns("x");478 foo.Execute("x");479 Mock.Assert(() => foo.Execute("x"), Occurs.Exactly(1));480 }481 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]482 public void ShouldAssertOutputGenericArgument()483 {484 var fooGen = Mock.Create<FooGeneric>();485 int result = 0;486 fooGen.Execute<int, int>(out result);487 Assert.Equal(result, 0);488 }489 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]490 public void ShouldAssertArrangeForGenricOutArgument()491 {492 var fooGen = Mock.Create<FooGeneric>();493 int expected = 10;494 Mock.Arrange(() => fooGen.Execute<int, int>(out expected)).Returns(0);495 int actual = 0;496 fooGen.Execute<int, int>(out actual);497 Assert.Equal(expected, actual);498 }499 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]500 public void ShouldAssertParamArrayMatchArugments()501 {502 string expected = "bar";503 string argument = "foo";504 var target = Mock.Create<IParams>();505 Mock.Arrange(() => target.ExecuteParams(argument, "baz")).Returns(expected);506 string ret = target.ExecuteParams(argument, "baz");507 Assert.Equal(expected, ret);508 }509 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]510 public void ShouldDistinguiseMethodWithDifferentGenericArgument()511 {512 var foo = Mock.Create<FooGeneric>();513 Mock.Arrange(() => foo.Get<int>()).Returns(10);514 Mock.Arrange(() => foo.Get<string>()).Returns(12);515 Assert.Equal(foo.Get<string>(), 12);516 Assert.Equal(foo.Get<int>(), 10);517 }518 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]519 public void ShouldAssertParamArrayWithMatcherAndConcreteValue()520 {521 string expected = "bar";522 string argument = "foo";523 var target = Mock.Create<IParams>();524 Mock.Arrange(() => target.ExecuteByName(Arg.IsAny<int>(), argument)).Returns(expected);525 string ret = target.ExecuteByName(0, argument);526 Assert.Equal(expected, ret);527 }528 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]529 public void ShouldAssertCallWithMultipleMathers()530 {531 var foo = Mock.Create<IFoo>();532 Mock.Arrange(() => foo.Echo(Arg.Matches<int>(x => x == 10), Arg.Matches<int>(x => x == 10))).Returns(20);533 int ret = foo.Echo(10, 10);534 Assert.Equal(20, ret);535 }536 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]537 public void ShouldAssertArgumentMatherArgumentSetup()538 {539 var foo = Mock.Create<IFoo>();540 Mock.Arrange(() => foo.Echo(10, Arg.Matches<int>(x => x > 10 && x < 20), 21)).Returns(20);541 int ret = foo.Echo(10, 11, 21);542 Assert.Equal(20, ret);543 }544 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]545 public void ShouldAssertCallWithDefaultValues()546 {547 var foo = Mock.Create<IFoo>();548 Mock.Arrange(() => foo.Echo(0, 0)).Returns(2);549 int ret = foo.Echo(0, 0);550 Assert.Equal(2, ret);551 }552 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]553 public void ShouldCreateMockFromRealObject()554 {555 var realItem = Mock.Create(() => new RealItem());556 Assert.NotNull(realItem);557 }558 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]559 public void ShouldCreateMockFromRealObjectForNonDefaultConstructor()560 {561 var realItem = Mock.Create(() => new RealItem(10));562 Assert.NotNull(realItem);563 }564 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]565 public void ShouldCreateMockFromRealObjectThatHasOnlyNonDefaultCtor()566 {567 var realItem = Mock.Create(() => new RealItem2(10, string.Empty));568 Assert.NotNull(realItem);569 }570 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]571 public void ShouldCreateMockFromRealCtorWithParams()572 {573 // the following line should not throw any argument exception.574 var realItem = Mock.Create(() => new RealItem("hello", 10, 20),575 Behavior.CallOriginal);576 Assert.Equal("hello", realItem.Text);577 Assert.Equal(2, realItem.Args.Length);578 }579 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]580 public void ShouldAssertMixins()581 {582 var realItem = Mock.Create<RealItem>(x =>583 {584 x.Implements<IDisposable>();585 x.CallConstructor(() => new RealItem(0));586 });587 var iDispose = realItem as IDisposable;588 iDispose.Dispose();589 }590 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]591 public void ShouldAssertMixinsWithClosure()592 {593 int a = 5;594 var realItem = Mock.Create<RealItem>(x =>595 {596 x.Implements<IDisposable>();597 x.CallConstructor(() => new RealItem(a));598 });599 var iDispose = realItem as IDisposable;600 iDispose.Dispose();601 }602 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]603 public void ShouldImplementDependentInterfacesWhenTopIsSpecified()604 {605 var realItem = Mock.Create<RealItem>(x =>606 {607 x.Implements<IFooImplemted>();608 x.CallConstructor(() => new RealItem(0));609 });610 Assert.NotNull(realItem as IFoo);611 }612 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]613 public void ShouldCloneWhenItemImplementsICloneableAndOneOtherInterface()614 {615 var myMock = Mock.Create<IDisposable>(x => x.Implements<ICloneable>());616 var myMockAsClonable = myMock as ICloneable;617 bool isCloned = false;618 Mock.Arrange(() => myMockAsClonable.Clone()).DoInstead(() => isCloned = true);619 myMockAsClonable.Clone();620 Assert.True(isCloned);621 }622 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]623 public void ShouldCallOriginalMethodForCallsOriginal()624 {625 var foo = Mock.Create<FooBase>(Behavior.CallOriginal);626 //// should call the original.627 Assert.Throws<InvalidOperationException>(() => foo.ThrowException());628 }629 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]630 public void ShouldNotCallOriginalMethodIfThereisASetupForCallsOriginal()631 {632 var foo = Mock.Create<FooBase>(Behavior.CallOriginal);633 Guid expected = Guid.NewGuid();634 Mock.Arrange(() => foo.GetGuid()).Returns(expected);635 Assert.Equal(expected, foo.GetGuid());636 }637 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]638 public void ShouldCallOriginalIfThereIsNoSetupForSimilarTypeForCallsOiginal()639 {640 var foo = Mock.Create<FooBase>(Behavior.CallOriginal);641 Mock.Arrange(() => foo.Echo(1)).Returns(2);642 Assert.Equal(2, foo.Echo(1));643 Assert.Equal(2, foo.Echo(2));644 }645 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]646 public void ShouldBeAbleToIgnoreArgumentsIfSpecified()647 {648 var foo = Mock.Create<IFoo>();649 Mock.Arrange(() => foo.Echo(10, 9)).IgnoreArguments().Returns(11);650 Assert.Equal(11, foo.Echo(1, 1));651 }652 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]653 public void ShouldInterceptVirtualsFromBaseClass()654 {655 var foo = Mock.Create<FooChild>();656 Mock.Arrange(() => foo.ThrowException()).Throws<ArgumentException>();657 Assert.Throws<ArgumentException>(() => foo.ThrowException());658 }659 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]660 public void ShouldAssertSetupWithArgAnyMatcherForArray()661 {662 var foo = Mock.Create<IFoo>();663 Mock.Arrange(() => foo.Submit(Arg.IsAny<byte[]>())).MustBeCalled();664 foo.Submit(new byte[10]);665 Mock.Assert(foo);666 }667 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]668 public void ShouldAssertDictionaryArgumentForIsAny()669 {670 var param = Mock.Create<IParams>();671 Mock.Arrange(() =>672 param.ExecuteArrayWithString(Arg.AnyString, Arg.IsAny<Dictionary<string, object>>()))673 .MustBeCalled();674 param.ExecuteArrayWithString("xxx", new Dictionary<string, object>());675 Mock.Assert(param);676 }677 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]678 public void ShouldAssertSetupWithCallHavingParamsAndPassedWithMatcher()679 {680 var foo = Mock.Create<IFoo>();681 Mock.Arrange(() => foo.FindOne(Arg.IsAny<ICriteria>())).Returns(true);682 var criteria = Mock.Create<ICriteria>();683 Assert.True(foo.FindOne(criteria));684 }685 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]686 public void ShouldThrowNotImplementedExceptionForBaseInovocationOnAbstract()687 {688 var node = Mock.Create<ExpressionNode>(Behavior.CallOriginal);689 Assert.Throws<NotImplementedException>(() => { var expected = node.NodeType; });690 }691 [TestMethod, TestCategory("Lite"), TestCategory("Behavior"), TestCategory("CallOriginal")]692 public void CallOriginalClause_AbstractMethod_ThrowsNotImplemented()693 {694 var mock = Mock.Create<IFoo>();695 Mock.Arrange(() => mock.JustCall()).CallOriginal();696 Assert.Throws<NotImplementedException>(() => mock.JustCall());697 }698 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]699 public void ShouldSetupMockWithParamsWhenNoParamIsPassed()700 {701 var fooParam = Mock.Create<FooParam>();702 var expected = "hello";703 Mock.Arrange(() => fooParam.FormatWith(expected)).Returns(expected);704 Assert.Equal(expected, fooParam.FormatWith(expected));705 }706 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]707 public void ShouldBeAbleToPassSingleArgIsAnyForParamsTypeArgument()708 {709 var fooParam = Mock.Create<FooParam>();710 Mock.Arrange(() => fooParam.GetDevicesInLocations(0, false, Arg.IsAny<MesssageBox>())).Returns(10);711 int result = fooParam.GetDevicesInLocations(0, false, new MesssageBox());712 Assert.Equal(10, result);713 }714 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]715 public void ShouldBeAbleToPassMultipleArgIsAnyForParamsTypeArgument()716 {717 var fooParam = Mock.Create<FooParam>();718 Mock.Arrange(() => fooParam719 .GetDevicesInLocations(0, false, Arg.IsAny<MesssageBox>(), Arg.IsAny<MesssageBox>()))720 .Returns(10);721 var box = new MesssageBox();722 int result = fooParam.GetDevicesInLocations(0, false, box, box);723 Assert.Equal(10, result);724 }725 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]726 public void ShouldCreateMockFromInterfaceWithSimilarGenericOverloads()727 {728 var session = Mock.Create<ISession>();729 Assert.NotNull(session);730 }731 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]732 public void ShouldDisposeArrangementEffects()733 {734 var mock = Mock.Create<IBar>();735 using (Mock.Arrange(() => mock.Value).Returns(123))736 {737 Assert.Equal(123, mock.Value);738 }739 Assert.Equal(0, mock.Value);740 }741 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]742 public void ShouldDisposeArrangementExpectations()743 {744 var mock = Mock.Create<IBar>();745 using (Mock.Arrange(() => mock.Value).MustBeCalled())746 {747 Assert.Throws<AssertionException>(() => Mock.Assert(mock));748 }749 Mock.Assert(mock);750 }751 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]752 public void ShouldAssertExpectedWithDynamicQuery()753 {754 var bookRepo = Mock.Create<IBookRepository>();755 var expected = new Book();756 Mock.Arrange(() => bookRepo.GetWhere(book => book.Id > 1))757 .Returns(expected)758 .MustBeCalled();759 var actual = bookRepo.GetWhere(book => book.Id > 1);760 Assert.Equal(expected, actual);761 Mock.Assert(bookRepo);762 }763 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]764 public void ShouldAssertMockExpressionDeleteArgumentForCompoundQuery()765 {766 var bookRepo = Mock.Create<IBookRepository>();767 var expected = new Book();768 string expectedTitle = "Telerik";769 Mock.Arrange(() => bookRepo.GetWhere(book => book.Id > 1 && book.Title == expectedTitle))770 .Returns(expected)771 .MustBeCalled();772 var actual = bookRepo.GetWhere(book => book.Id > 1 && book.Title == expectedTitle);773 Assert.Equal(expected, actual);774 Mock.Assert(bookRepo);775 }776 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]777 public void ShouldAssertMockForDynamicQueryWhenComparedUsingAVariable()778 {779 var repository = Mock.Create<IBookRepository>();780 var expected = new Book { Title = "Adventures" };781 var service = new BookService(repository);782 Mock.Arrange(() => repository.GetWhere(book => book.Id == 1))783 .Returns(expected)784 .MustBeCalled();785 var actual = service.GetSingleBook(1);786 Assert.Equal(actual.Title, expected.Title);787 }788 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]789 public void ShouldAssertWithIntValueUsedForLongValuedArgument()790 {791 int number = 5;792 int expectedResult = 42;793 var myClass = Mock.Create<ClassWithLongMethod>();794 Mock.Arrange(() => myClass.AddOne(number)).Returns(expectedResult);795 // Act796 var result = myClass.AddOne(number);797 // Assert798 Assert.Equal(expectedResult, result);799 }800 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]801 public void ShouldAutoArrangePropertySetInConstructor()802 {803 var expected = "name";804 var item = Mock.Create<Item>(() => new Item(expected));805 Assert.Equal(expected, item.Name);806 }807 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]808 public void ShouldTakeOutValueFromDoInteadWhenDefinedWithCustomDelegate()809 {810 int outArg = 1;811 var mock = Mock.Create<DoInsteadWithCustomDelegate>();812 Mock.Arrange(() => mock.Do(0, ref outArg)).DoInstead(new RefAction<int, int>((int i, ref int arg2) => { arg2 = 2; }));813 mock.Do(0, ref outArg);814 Assert.Equal(2, outArg);815 }816 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]817 public void ShouldCheckMethodOverloadsWhenResolvingInterfaceInheritance()818 {819 var project = Mock.Create<IProject>();820 Assert.NotNull(project);821 }822 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]823 public void PropertySetShouldThrowExceptionWhenNameHasSet_Literal()824 {825 var b_object = Mock.Create<B>();826 Mock.ArrangeSet<B>(() => b_object.b_string_set_get = string.Empty).DoNothing().MustBeCalled();827 b_object.b_string_set_get = string.Empty;828 Mock.Assert(b_object);829 }830 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]831 public void ShouldNotAffectAssertionForInvalidAsserts()832 {833 var foo = Mock.Create<IFoo>();834 Guid goodGuid = Guid.NewGuid();835 Guid badGuid = Guid.NewGuid();836 Mock.Arrange(() => foo.CallMeOnce(true, goodGuid)).OccursOnce();837 foo.CallMeOnce(true, goodGuid);838 Mock.Assert(() => foo.CallMeOnce(true, badGuid), Occurs.Never());839 Mock.Assert(() => foo.CallMeOnce(true, Guid.Empty), Occurs.Never());840 Mock.Assert(() => foo.CallMeOnce(true, goodGuid), Occurs.Once());841 Mock.Assert(() => foo.CallMeOnce(false, badGuid), Args.Ignore(), Occurs.Once());842 Mock.Assert(() => foo.CallMeOnce(Arg.AnyBool, badGuid), Occurs.Never());843 Mock.Assert(() => foo.CallMeOnce(Arg.IsAny<bool>(), badGuid), Occurs.Never());844 }845 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]846 public void ShouldEqualityCheckForMockFromAnInterfaceThatHasEquals()847 {848 IRule mockRule1 = Mock.Create<IRule>();849 List<IRule> ruleList = new List<IRule>();850 Assert.False(ruleList.Contains(mockRule1));851 ruleList.Add(mockRule1);852 Assert.True(ruleList.Contains(mockRule1));853 }854 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]855 public void ShouldAssertMethodWithKeyValuePairTypeArgument()856 {857 var presenter = Mock.Create<InteractiveKioskPresenter>(Behavior.CallOriginal);858 var key = Mock.Create<IKioskPart>();859 var val = Mock.Create<IKioskWellInfo>();860 presenter.ShowControl(new KeyValuePair<IKioskPart, IKioskWellInfo>(key, val));861 }862 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]863 public void ShouldAssertMethodWithStructTypeArgument()864 {865 var presenter = Mock.Create<InteractiveKioskPresenter>(Behavior.CallOriginal);866 Size size = new Size();867 presenter.DrawRect(size);868 }869 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]870 public void ShouldParsePrimitiveParamsArrayCorrectly()871 {872 var foo = Mock.Create<IFoo>();873 Mock.Arrange(() => foo.SubmitWithParams(Arg.AnyInt)).MustBeCalled();874 foo.SubmitWithParams(10);875 Mock.Assert(foo);876 }877 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]878 public void ShouldAssertCorrectMethodWhenDifferentArgumentsPassedForParamSetup()879 {880 var foo = Mock.Create<IFoo>();881 Mock.Arrange(() => foo.SubmitWithParams(10)).OccursOnce();882 foo.SubmitWithParams(10);883 foo.SubmitWithParams(10, 11);884 Mock.Assert(foo);885 }886 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]887 public void ShouldAssertOccursForIndexedPropertyWithDifferentArguments()888 {889 var foo = Mock.Create<Foo>();890 string expected = "string";891 Mock.Arrange(() => foo.Baz["Test"]).Returns(expected);892 Mock.Arrange(() => foo.Baz["TestName"]).Returns(expected);893 Assert.Equal(expected, foo.Baz["Test"]);894 Assert.Equal(expected, foo.Baz["TestName"]);895 Mock.Assert(() => foo.Baz["Test"], Occurs.Once());896 Mock.Assert(() => foo.Baz["TestName"], Occurs.Once());897 }898 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]899 public void ShouldNotSkipBaseInterfaceWhenSomeMembersAreSame()900 {901 var loanString = Mock.Create<ILoanStringField>();902 Assert.NotNull(loanString);903 }904 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]905 public void ShouldAssertParamsArrayAsArrayBasedOnArgument()906 {907 string value1 = "Hello";908 string value2 = "World";909 var session = Mock.Create<IMockable>();910 Mock.Arrange(() => session.Get<string>(Arg.Matches<string[]>(v => v.Contains("Lol") &&911 v.Contains("cakes"))))912 .Returns(new[]913 {914 value1,915 value2,916 });917 var testValues = new[]{918 "Lol",919 "cakes"920 };921 var result = session.Get<string>(testValues);922 Assert.Equal(value1, result[0]);923 Assert.Equal(value2, result[1]);924 }925 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]926 public void ShouldNotInitRescursiveMockingWithProfilerForProperyThatReturnsMock()927 {928 WorkerHelper helper = new WorkerHelper();929 helper.Arrange();930 helper.Worker.Echo("hello");931 }932 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]933 public void ShouldAssertMockWithEnumArgumentWithUnderlyingTypeOtherThanInt()934 {935 var subdivisionTypeCode = SubdivisionTypeCode.City;936 var subdivisionTypeRepository = Mock.Create<ISubdivisionTypeRepository>();937 Mock.Arrange(() => subdivisionTypeRepository.Get(subdivisionTypeCode)).Returns((SubdivisionTypeCode subDivision) =>938 {939 return subDivision.ToString();940 });941 var result = subdivisionTypeRepository.Get(subdivisionTypeCode);942 Assert.Equal(result, subdivisionTypeCode.ToString());943 Mock.AssertAll(subdivisionTypeRepository);944 }945 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]946 public void ShouldAssertMockWithNullableValueTypeArg()947 {948 FooNullable foo = Mock.Create<FooNullable>();949 var now = DateTime.Now;950 Mock.Arrange(() => foo.ValideDate(now)).MustBeCalled();951 foo.ValideDate(now);952 Mock.Assert(foo);953 }954 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]955 public void ShouldAssertMockWithNullForNullableValueTypeArg()956 {957 FooNullable foo = Mock.Create<FooNullable>();958 Mock.Arrange(() => foo.ValideDate(null)).MustBeCalled();959 foo.ValideDate(null);960 Mock.Assert(foo);961 }962 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]963 public void ShouldAssertCallOriginalForAbstractClass()964 {965 Assert.NotNull(Mock.Create<TestTreeItem>(Behavior.CallOriginal));966 }967 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]968 public void ShouldCallBaseWhenCallOriginalSpecifiedForMock()969 {970 var item = Mock.Create<TestTreeItem>(Behavior.CallOriginal);971 var result = ((IComparable)item).CompareTo(10);972 Assert.Equal(1, result);973 }974 [TestMethod, TestCategory("Lite"), TestCategory("Mock")]975 public void ShouldArrangeBothInterfaceMethodAndImplementation()976 {977 var mock = Mock.Create<FrameworkElement>() as ISupportInitialize;...
ShouldAssertCallOriginal
Using AI Code Generation
1using System;2using System.Collections.Generic;3using System.Linq;4using System.Text;5using System.Threading.Tasks;6using Telerik.JustMock;7using Telerik.JustMock.Helpers;8using Telerik.JustMock.Tests;9{10 {11 public void ShouldAssertCallOriginal()12 {13 var mock = Mock.Create<MockFixture>(Behavior.CallOriginal);14 Mock.Arrange(() => mock.GetDouble()).Returns(1.0);15 Assert.AreEqual(mock.GetDouble(), 1.0);16 }17 }18}
ShouldAssertCallOriginal
Using AI Code Generation
1using System;2using System.Collections.Generic;3using System.Linq;4using System.Text;5using System.Threading.Tasks;6using Telerik.JustMock;7using Telerik.JustMock.Tests;8using Microsoft.VisualStudio.TestTools.UnitTesting;9{10 {11 public void ShouldAssertCallOriginal()12 {13 var mock = Mock.Create<IFoo>();14 Mock.Arrange(() => mock.Execute(Arg.AnyInt)).CallOriginal();15 mock.Execute(5);16 Mock.Assert(mock);17 }18 }19 {20 void Execute(int value);21 }22}23using System;24using System.Collections.Generic;25using System.Linq;26using System.Text;27using System.Threading.Tasks;28using Telerik.JustMock;29using Telerik.JustMock.Tests;30using Microsoft.VisualStudio.TestTools.UnitTesting;31{32 {33 public void ShouldAssertCallOriginal()34 {35 var mock = Mock.Create<IFoo>();36 Mock.Arrange(() => mock.Execute(Arg.AnyInt)).CallOriginal();37 mock.Execute(5);38 Mock.Assert(() => mock.Execute(5), Occurs.Exactly(1));39 }40 }41 {42 void Execute(int value);43 }44}45using System;46using System.Collections.Generic;47using System.Linq;48using System.Text;49using System.Threading.Tasks;50using Telerik.JustMock;51using Telerik.JustMock.Tests;52using Microsoft.VisualStudio.TestTools.UnitTesting;
ShouldAssertCallOriginal
Using AI Code Generation
1using Telerik.JustMock;2using System;3using System.Collections.Generic;4using System.Linq;5using System.Text;6using System.Threading.Tasks;7{8 {9 public int Method1(int a, int b)10 {11 return a + b;12 }13 }14 {15 public int Method1(int a, int b)16 {17 return a + b;18 }19 }20 {21 public int Method1(int a, int b)22 {23 return a + b;24 }25 }26 {27 public int Method1(int a, int b)28 {29 return a + b;30 }31 }32 {33 public int Method1(int a, int b)34 {35 return a + b;36 }37 }38 {39 public int Method1(int a, int b)40 {41 return a + b;42 }43 }44 {45 public int Method1(int a, int b)46 {47 return a + b;48 }49 }50 {51 public int Method1(int a, int b)52 {53 return a + b;54 }55 }56 {57 public int Method1(int a, int b)58 {59 return a + b;60 }61 }62 {63 public int Method1(int a, int b)64 {65 return a + b;66 }67 }68 {69 public int Method1(int a, int b)70 {71 return a + b;72 }73 }74 {75 public int Method1(int a, int b)76 {77 return a + b;78 }79 }80 {81 public int Method1(int a, int b)82 {83 return a + b;84 }85 }86 {87 public int Method1(int a, int b)88 {89 return a + b;90 }91 }92 {93 public int Method1(int a, int b)94 {95 return a + b;96 }97 }
ShouldAssertCallOriginal
Using AI Code Generation
1using Telerik.JustMock;2using Telerik.JustMock.Tests;3{4 {5 public void ShouldAssertCallOriginal()6 {7 var mock = Mock.Create<IFoo>();8 Mock.Arrange(() => mock.Execute(Arg.AnyString)).CallOriginal();9 mock.Execute("test");10 }11 }12}13using Telerik.JustMock;14using Telerik.JustMock.Tests;15{16 {17 public void ShouldAssertCallOriginal()18 {19 var mock = Mock.Create<IFoo>();20 Mock.Arrange(() => mock.Execute(Arg.AnyString)).CallOriginal();21 mock.Execute("test");22 }23 }24}25using Telerik.JustMock;26using Telerik.JustMock.Tests;27{28 {29 public void ShouldAssertCallOriginal()30 {31 var mock = Mock.Create<IFoo>();32 Mock.Arrange(() => mock.Execute(Arg.AnyString)).CallOriginal();33 mock.Execute("test");34 }35 }36}37using Telerik.JustMock;38using Telerik.JustMock.Tests;39{40 {41 public void ShouldAssertCallOriginal()42 {43 var mock = Mock.Create<IFoo>();44 Mock.Arrange(() => mock.Execute(Arg.AnyString)).CallOriginal();45 mock.Execute("test");46 }47 }48}49using Telerik.JustMock;50using Telerik.JustMock.Tests;51{52 {53 public void ShouldAssertCallOriginal()54 {55 var mock = Mock.Create<IFoo>();56 Mock.Arrange(() => mock.Execute(Arg.AnyString)).CallOriginal();57 mock.Execute("test");58 }59 }60}
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!!