Best JustMockLite code snippet using Telerik.JustMock.Tests.Book.ToString
MockFixture.cs
Source:MockFixture.cs  
...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;978			bool implCalled = false;979			Mock.Arrange(() => mock.Initialize()).DoInstead(() => implCalled = true).MustBeCalled();980			mock.Initialize();981			Assert.True(implCalled);982			Mock.Assert(() => mock.Initialize());983		}984		[TestMethod, TestCategory("Lite"), TestCategory("Mock")]985		public void ShouldArrangeBothBaseAndOverriddenMethod()986		{987			var mock = Mock.Create<Control>() as FrameworkElement;988			bool implCalled = false;989			Mock.Arrange(() => mock.Initialize()).DoInstead(() => implCalled = true);990			mock.Initialize();991			Assert.True(implCalled);992			Mock.Assert(() => mock.Initialize());993			Mock.Assert(() => ((ISupportInitialize)mock).Initialize());994		}995		[TestMethod, TestCategory("Lite"), TestCategory("Mock")]996		public void ShouldArrangeBaseMethodInManyImplementations()997		{998			var fe = Mock.Create<FrameworkElement>();999			var control = Mock.Create<Control>();1000			int calls = 0;1001			Mock.Arrange(() => (null as ISupportInitialize).Initialize()).DoInstead(() => calls++);1002			fe.Initialize();1003			Assert.Equal(1, calls);1004			control.Initialize();1005			Assert.Equal(2, calls);1006		}1007		[TestMethod, TestCategory("Lite"), TestCategory("Mock")]1008		public void ShouldAssertMethodAtAllHierarchyLevels()1009		{1010			var control = Mock.Create<Control>();1011			control.Initialize();1012			Mock.Assert(() => control.Initialize(), Occurs.Once());1013			Mock.Assert(() => (control as FrameworkElement).Initialize(), Occurs.Once());1014			Mock.Assert(() => (control as ISupportInitialize).Initialize(), Occurs.Once());1015		}1016		[TestMethod, TestCategory("Lite"), TestCategory("Mock")]1017		public void ShouldArrangeBaseMethodInManyImplementationsForProperty()1018		{1019			var fe = Mock.Create<FrameworkElement>();1020			var control = Mock.Create<Control>();1021			int calls = 0;1022			Mock.Arrange(() => (null as ISupportInitialize).Property).DoInstead(() => calls++);1023			var property = fe.Property;1024			Assert.Equal(1, calls);1025			property = control.Property;1026			Assert.Equal(2, calls);1027		}1028		[TestMethod, TestCategory("Lite"), TestCategory("Mock")]1029		public void ShouldAssertMethodAtAllHierarchyLevelsForProperty()1030		{1031			var control = Mock.Create<Control>();1032			var property = control.Property;1033			Mock.Assert(() => control.Property, Occurs.Once());1034			Mock.Assert(() => (control as FrameworkElement).Property, Occurs.Once());1035			Mock.Assert(() => (control as ISupportInitialize).Property, Occurs.Once());1036		}1037		[TestMethod, TestCategory("Lite"), TestCategory("Mock")]1038		public void ShouldArrangeInheritableMemberOfExplicitlySpecifiedType()1039		{1040			var ident = Mock.Create<IIdentifiable>();1041			Mock.Arrange<IIdentifiable, int>(new Func<int>(() => ident.Id)).Returns(15);1042			Assert.Equal(15, ident.Id);1043		}1044#if !SILVERLIGHT1045		[TestMethod, TestCategory("Elevated"), TestCategory("Lite"), TestCategory("Mock")]1046		public void ShouldNotCreateProxyIfNotNecessary()1047		{1048			var mock = Mock.Create<Poco>();1049			Mock.Arrange(() => mock.Data).Returns(10);1050			Assert.Equal(10, mock.Data);1051			if (Mock.IsProfilerEnabled)1052				Assert.Same(typeof(Poco), mock.GetType());1053		}1054#elif !LITE_EDITION1055		[TestMethod, TestCategory("Elevated"), TestCategory("Mock")]1056		public void ShouldNotCreateProxyIfNotNecessary()1057		{1058			var mock = Mock.Create<Poco>(Constructor.Mocked);1059			Mock.Arrange(() => mock.Data).Returns(10);1060			Assert.Equal(10, mock.Data);1061			Assert.Same(typeof(Poco), mock.GetType());1062		}1063#endif1064#if LITE_EDITION && !COREFX1065		[TestMethod, TestCategory("Lite"), TestCategory("Mock")]1066		public void MockInternalMembersWithoutExplicitlyGivenVisibilitySentinel()1067		{1068			Assert.Throws<MockException>(() => Mock.Create<InvisibleInternal>());1069		}1070#endif1071		public class Poco // should be inheritable but shouldn't be abstract1072		{1073			public virtual int Data { get { return 0; } }1074		}1075		public interface IIdentifiable1076		{1077			int Id { get; }1078		}1079		public interface ISupportInitialize1080		{1081			void Initialize();1082			string Property { get; }1083		}1084		public abstract class FrameworkElement : ISupportInitialize1085		{1086			public abstract void Initialize();1087			public abstract string Property { get; set; }1088		}1089		public abstract class Control : FrameworkElement1090		{1091			public override void Initialize()1092			{1093				throw new NotImplementedException();1094			}1095			public override string Property1096			{1097				get1098				{1099					throw new NotImplementedException();1100				}1101				set1102				{1103					throw new NotImplementedException();1104				}1105			}1106		}1107		public abstract class TestTreeItem : IComparable1108		{1109			int IComparable.CompareTo(object obj)1110			{1111				return 1;1112			}1113		}1114		public class FooNullable1115		{1116			public virtual void ValideDate(DateTime? date)1117			{1118			}1119		}1120		public enum SubdivisionTypeCode : byte1121		{1122			None = 255,1123			State = 0,1124			County = 1,1125			City = 2,1126		}1127		public interface ISubdivisionTypeRepository1128		{1129			string Get(SubdivisionTypeCode subdivisionTypeCode);1130		}1131		public class WorkerHelper1132		{1133			public IWorker TheWorker { get; private set; }1134			public WorkerHelper()1135			{1136				this.TheWorker = Mock.Create<IWorker>(Behavior.Strict);1137			}1138			public IWorker Worker1139			{1140				get1141				{1142					return this.TheWorker;1143				}1144			}1145			public void Arrange()1146			{1147				Mock.Arrange(() => this.TheWorker.Echo(Arg.AnyString)).DoNothing();1148			}1149		}1150		public interface IWorker1151		{1152			void Echo(string value);1153		}1154		public interface IMockable1155		{1156			T[] Get<T>(params string[] values);1157		}1158		public interface ILoanStringField : ILoanField1159		{1160			string Value { get; set; }1161		}1162		public interface ILoanField1163		{1164			void ClearValue();1165			object Value { get; set; }1166		}1167		public interface IKioskPart1168		{1169		}1170		public interface IKioskWellInfo1171		{1172		}1173		public class InteractiveKioskPresenter1174		{1175			public virtual void ShowControl(KeyValuePair<IKioskPart, IKioskWellInfo> kPart)1176			{1177			}1178			public virtual void DrawRect(Size size)1179			{1180			}1181		}1182		public struct Size1183		{1184		}1185		public interface IRule1186		{1187			bool Equals(object obj);1188		}1189		public class B1190		{1191			public string b_string = null;1192			public virtual string b_string_set_get { get { return b_string; } set { b_string = value; } }1193		}1194		public interface IProject : IProjectItemContainer1195		{1196			IEnumerable<IProjectItem> Items { get; }1197			void AddChild();1198		}1199		public interface IProjectItem : IProjectItemContainer1200		{1201		}1202		public interface IProjectItemContainer : IDocumentItemContainer<IProjectItem>1203		{1204			bool CanAddChild { get; }1205		}1206		public interface IDocumentItemContainer : IDocumentItem1207		{1208			IEnumerable<IDocumentItem> Children { get; }1209		}1210		public interface IDocumentItemContainer<T> : IDocumentItemContainer1211		where T : IDocumentItem1212		{1213			IEnumerable<T> Children { get; }1214			void AddChild(T child);1215			void RemoveChild(T child);1216		}1217		public interface IDocumentItem1218		{1219		}1220		public delegate void RefAction<T1, T2>(T1 arg1, ref T2 arg2);1221		public class DoInsteadWithCustomDelegate1222		{1223			public virtual void Do(int k, ref int j)1224			{1225			}1226		}1227		public class ClassWithLongMethod1228		{1229			public virtual long AddOne(long number)1230			{1231				return number + 1;1232			}1233		}1234		public class BookService1235		{1236			private IBookRepository repository;1237			public BookService(IBookRepository repository)1238			{1239				this.repository = repository;1240			}1241			public Book GetSingleBook(int id)1242			{1243				return repository.GetWhere(book => book.Id == id);1244			}1245		}1246		public interface IBookRepository1247		{1248			Book GetWhere(Expression<Func<Book, bool>> expression);1249		}1250		public class Book1251		{1252			public int Id { get; private set; }1253			public string Title { get; set; }1254		}1255		#region Syntax Integrity1256		[TestMethod, TestCategory("Lite"), TestCategory("Mock")]1257		public void ShouldBeAbleToInvokeMustBeCalledWithIgnoreArguments()1258		{1259			var foo = Mock.Create<Foo>();1260			Mock.Arrange(() => foo.Execute(0)).IgnoreArguments().MustBeCalled();1261			foo.Execute(10);1262			Mock.Assert(foo);1263		}1264		[TestMethod, TestCategory("Lite"), TestCategory("Mock")]1265		public void ShouldBeAbleToUseMuseBeCalledAfterIgnoreFoFunc()1266		{1267			var foo = Mock.Create<Foo>();1268			Mock.Arrange(() => foo.Echo(0)).IgnoreArguments().MustBeCalled();1269			foo.Echo(10);1270			Mock.Assert(foo);1271		}1272		[TestMethod, TestCategory("Lite"), TestCategory("Mock")]1273		public void ShouldBeAbleToDoDoNothingForNonVoidCalls()1274		{1275			var foo = Mock.Create<Foo>();1276			Mock.Arrange(() => foo.Echo(Arg.AnyInt)).DoNothing();1277			foo.Echo(10);1278		}1279		[TestMethod, TestCategory("Lite"), TestCategory("Mock")]1280		public void ShouldBeAbleToSpecifyOccursAfterReturns()1281		{1282			var foo = Mock.Create<Foo>();1283			Mock.Arrange(() => foo.Echo(Arg.AnyInt))1284				.Returns(10)1285				.Occurs(1);1286			foo.Echo(10);1287			Mock.Assert(foo);1288		}1289		internal abstract class FooAbstract1290		{1291			protected internal abstract bool TryCreateToken(string literal);1292		}1293		internal abstract class FooAbstract2 : FooAbstract1294		{1295		}1296		[TestMethod, TestCategory("Lite"), TestCategory("Mock")]1297		public void ShouldAsssertMockHavingInternalAbstractBaseMethod()1298		{1299			var foo = Mock.Create<FooAbstract2>();1300			foo.TryCreateToken(string.Empty);1301		}1302		#endregion1303		public interface ISession1304		{1305			ICriteria CreateCriteria<T>() where T : class;1306			ICriteria CreateCriteria(string entityName);1307			ICriteria CreateCriteria<T>(string alias) where T : class;1308			ICriteria CreateCriteria(System.Type persistentClass);1309			ICriteria CreateCriteria(string entityName, string alias);1310			ICriteria CreateCriteria(System.Type persistentClass, string alias);1311		}1312		[TestMethod, TestCategory("Lite"), TestCategory("Mock")]1313		public void ShouldNotTryToWeaveMethodInSilverlightRuntime()1314		{1315			var foo = Mock.Create<FooSilver>();1316			Assert.NotNull(foo);1317		}1318		public interface ICloneable1319		{1320			object Clone();1321		}1322		public abstract class FooSilver1323		{1324			public void Do()1325			{1326			}1327		}1328#if LITE_EDITION1329		[TestMethod]1330		public void ShouldThrowMockExceptionWhenTryingToMockFinalMethod()1331		{1332			var mock = Mock.Create<Bar>();1333			Assert.Throws<MockException>(() => Mock.Arrange(() => mock.Submit()).DoNothing());1334		}1335		public class Bar1336		{1337			public void Submit()1338			{1339			}1340		}1341#endif1342		#region Test Insfrastructure1343		public class Foo1344		{1345			public virtual void Execute(int arg1)1346			{1347			}1348			public virtual int Echo(int arg1)1349			{1350				return arg1;1351			}1352			public virtual Baz Baz { get; set; }1353		}1354		public class Baz1355		{1356			public virtual string this[string key]1357			{1358				get1359				{1360					return null;1361				}1362			}1363		}1364		public class FooParam1365		{1366			public virtual int GetDevicesInLocations(int arg1, bool bExclude, params MesssageBox[] box)1367			{1368				return default(int);1369			}1370			public virtual string FormatWith(string format, params object[] args)1371			{1372				return string.Empty;1373			}1374		}1375		public class MesssageBox1376		{1377		}1378		public enum ExpressionNodeType1379		{1380			Constant,1381			Binary1382		}1383		public abstract class ExpressionNode1384		{1385			public abstract ExpressionNodeType NodeType { get; }1386		}1387		public class RealItem1388		{1389			public RealItem()1390			{1391			}1392			public RealItem(int num)1393			{1394			}1395			public RealItem(string text, params int[] args)1396			{1397				if (args.Length == 0 || string.IsNullOrEmpty(text))1398				{1399					throw new ArgumentException();1400				}1401				this.text = text;1402				this.args = args;1403			}1404			public string Text1405			{1406				get1407				{1408					return text;1409				}1410			}1411			public int[] Args1412			{1413				get1414				{1415					return args;1416				}1417			}1418			public string text;1419			private int[] args;1420		}1421		public class RealItem21422		{1423			public RealItem2(int num, string str)1424			{1425			}1426		}1427		public class Item1428		{1429			public virtual string Name { get; set; }1430			public Item(string name)1431			{1432				Name = name;1433			}1434		}1435		public class FooGeneric<T>1436		{1437			public virtual T Get<T1, T2>(T1 p1, T2 p2)1438			{1439				return default(T);1440			}1441			public virtual void Execute<T1>(T1 arg)1442			{1443				throw new Exception();1444			}1445		}1446		public class FooGeneric1447		{1448			public virtual TRet Get<T, TRet>(T arg1)1449			{1450				return default(TRet);1451			}1452			public virtual TRet Execute<T1, TRet>(out T1 arg1)1453			{1454				arg1 = default(T1);1455				object[] args = new object[1];1456				args[0] = arg1;1457				return default(TRet);1458			}1459			public virtual int Get<T1>()1460			{1461				throw new NotImplementedException();1462			}1463		}1464		public class FooWithInternalConstruct1465		{1466			internal FooWithInternalConstruct()1467			{1468			}1469			public virtual void Execute()1470			{1471				throw new ArgumentException();1472			}1473		}1474		public class Nested1475		{1476			public int expected;1477			public int expeted1;1478		}1479		class FooService : IFooService { }1480		interface IFooService { }1481		public interface ICriteria1482		{1483		}1484		public interface IFoo1485		{1486			string Execute(string arg);1487			void JustCall();1488			void Execute(Guid guid);1489			void Execute(bool flag, Guid guid);1490			void Execute(out int expected);1491			void Execute(out DateTime date);1492			IFoo GetFoo();1493			int Echo(int arg1);1494			int Echo(int arg1, int arg2);1495			int Echo(int arg1, int arg2, int arg3);1496			int Echo(int arg1, int arg2, int arg3, int arg4);1497			void Submit(int arg1);1498			void Submit(int arg1, int arg2);1499			void Submit(int arg1, int arg2, int arg3);1500			void Submit(int arg1, int arg2, int arg3, int arg4);1501			void Submit(byte[] arg);1502			void SubmitWithParams(params int[] args);1503			void CallMeOnce(bool flag, Guid guid);1504			bool FindOne(params ICriteria[] criteria);1505		}1506		public interface IBar1507		{1508			int Echo(int value);1509			int Value { get; set; }1510		}1511		public interface IFooImplemted : IFoo1512		{1513		}1514		public class CustomExepction : Exception1515		{1516			public CustomExepction(string message, bool throwed)1517				: base(message)1518			{1519			}1520		}1521		public class Log1522		{1523			public virtual void Info(string message)1524			{1525				throw new Exception(message);1526			}1527		}1528		public abstract class FooBase1529		{1530			public virtual string GetString(string inString)1531			{1532				return inString;1533			}1534			public virtual Guid GetGuid()1535			{1536				return default(Guid);1537			}1538			public virtual int Echo(int arg1)1539			{1540				return arg1;1541			}1542			public virtual void ThrowException()1543			{1544				throw new InvalidOperationException("This should throw expection.");1545			}1546		}1547		public class FooChild : FooBase1548		{1549		}1550		public class FooOverridesEquals1551		{1552			public FooOverridesEquals(string name)1553			{1554				this.name = name;1555			}1556			public override bool Equals(object obj)1557			{1558				return (obj is FooOverridesEquals) &&1559					((FooOverridesEquals)obj).name == this.name;1560			}1561			public override int GetHashCode()1562			{1563				if (!string.IsNullOrEmpty(name))1564				{1565					return name.GetHashCode();1566				}1567				return base.GetHashCode();1568			}1569			private string name;1570		}1571		public interface IParams1572		{1573			string ExecuteByName(int index, params string[] args);1574			string ExecuteParams(params string[] args);1575			string ExecuteArray(string[] args);1576			string ExecuteArrayWithString(string arg1, Dictionary<string, object> dic);1577		}1578		public class ClassNonDefaultGuidConstructor1579		{1580			public ClassNonDefaultGuidConstructor(Guid guidValue)1581			{1582				this.guidValue = guidValue;1583			}1584			public Guid guidValue;1585		}1586		public class ClassWithNonDefaultConstructor1587		{1588			internal ClassWithNonDefaultConstructor()1589			{1590			}1591			public ClassWithNonDefaultConstructor(string strValue, int intValue)1592			{1593				this.strValue = strValue;1594				this.intValue = intValue;1595			}1596			public ClassWithNonDefaultConstructor(string strValue, int intValue, bool boolValue)1597			{1598				this.strValue = strValue;1599				this.intValue = intValue;1600				this.boolValue = boolValue;1601			}1602			public override string ToString()1603			{1604				return string.Format("{0}+{1}+{2}", strValue, intValue, boolValue);1605			}1606			private string strValue;1607			private int intValue;1608			private bool boolValue;1609		}1610		#endregion1611		[TestMethod, TestCategory("Lite"), TestCategory("Mock")]1612		public void ShouldInterpretNullAsDefaultInitializedValueTypeInCtorCall()1613		{1614			var mock = Mock.Create<ValueTypeInCtor>(null, null);1615			Assert.Equal(0, mock.a);1616		}...PublicationContentUtilTest.cs
Source:PublicationContentUtilTest.cs  
...201            Stopwatch timer = new Stopwatch();202            timer.Start();203            var nextPageTreeNode = PublicationContentUtil.Instance.GetNextPageByTreeNode(testTOC);204            timer.Stop();205            timerstring = timer.ElapsedMilliseconds.ToString();206            timer.Reset();207            timer.Start();208            var previousPageTreeNode = PublicationContentUtil.Instance.GetPreviousPageByTreeNode(testTOC);209            timer.Stop();210            timerstring = timer.ElapsedMilliseconds.ToString();211            timer.Reset();212        }213        [Test]214        public async void InstallTest()215        {216            try217            {218                CancellationTokenSource source = new CancellationTokenSource();219                var d = await PublicationUtil.Instance.GetPublicationOnline();220                bookId = 19;221                var b = d.Publications;222                var downloadResult = await PublicationUtil.Instance.DownloadPublicationByBookId(bookId, source.Token, (t, y) => { }, false);223                if (downloadResult.DownloadStatus == DownLoadEnum.Success)224                {225                    var tocs = await PublicationContentUtil.Instance.GetTOCByBookId(bookId);226                    Assert.IsTrue(tocs.ChildNodes.Count > 0);227                }228            }229            catch (Exception)230            {231                throw;232            }233        }234        [Test()]235        public async void GetTOCByBookIdTest()236        {237            List<TOCNode> tocNodes = new List<TOCNode>238            {239                new TOCNode{ ID=6, ParentId=5, Title="Judicature Modernisation Bill",  Role="ancestor",  GuideCardTitle="Current Developments" },240                new TOCNode{ ID=7, ParentId=6, Title="Commentary",  Role="me",GuideCardTitle="Current Developments" },241                new TOCNode{ ID=8, ParentId=5, Title="JUDICATURE MODERNISATION BILL",  Role="ancestor", GuideCardTitle="Current Developments" },242                new TOCNode{ ID=2, ParentId=1, Title="Update",  Role="me", GuideCardTitle="Update" },243                new TOCNode{ ID=4, ParentId=3, Title="About this Publication",  Role="me",GuideCardTitle="About this Publication" },244                new TOCNode{ ID=1, ParentId=0, Title="Update",  Role="ancestor", GuideCardTitle="Update" },245                new TOCNode{ ID=3, ParentId=0, Title="About this Publication",  Role="ancestor", GuideCardTitle="About this Publication" },246                new TOCNode{ ID=5, ParentId=55, Title="Current Developments",  Role="ancestor", GuideCardTitle="Current Developments" },247                new TOCNode{ ID=55, ParentId=0, Title="Current Developments1",  Role="ancestor", GuideCardTitle="Current Developments" }248            };249            container.Arrange<IPackageAccess>(packageAccess => packageAccess.GetTOC(null)).IgnoreArguments().Returns(tocNodes);250            container.Arrange<IPublicationAccess>(publicationAccess => publicationAccess.GetDlBookByBookId(0, null)).IgnoreArguments().Returns(dlBook);251            var root = await container.Instance.GetTOCByBookId(bookId);252            Assert.IsTrue(root.ChildNodes.Count == 3);253            Assert.IsTrue(root.ChildNodes.FirstOrDefault(o => o.ID == 1).ChildNodes.Count == 1);254            Assert.IsTrue(root.ChildNodes.FirstOrDefault(o => o.ID == 3).ChildNodes.Count == 1);255            Assert.IsTrue(root.ChildNodes.FirstOrDefault(o => o.ID == 55).ChildNodes.Count == 1);256        }257        [Test()]258        public async void GetNextTOCNodeTest()259        {260            List<TOCNode> tocNodes = new List<TOCNode>261            {262                new TOCNode{ ID=6, ParentId=5, Title="Judicature Modernisation Bill",  Role="ancestor",GuideCardTitle="Current Developments" },263                new TOCNode{ ID=7, ParentId=6, Title="Commentary",  Role="me",GuideCardTitle="Current Developments" },264                new TOCNode{ ID=8, ParentId=5, Title="JUDICATURE MODERNISATION BILL",  Role="me", GuideCardTitle="Current Developments" },265                new TOCNode{ ID=2, ParentId=1, Title="Update",  Role="me",GuideCardTitle="Update" },266                new TOCNode{ ID=4, ParentId=3, Title="About this Publication",  Role="me", GuideCardTitle="About this Publication" },267                new TOCNode{ ID=9, ParentId=3, Title="About this Publication1",  Role="me", GuideCardTitle="About this Publication" },268                new TOCNode{ ID=1, ParentId=0, Title="Update",  Role="ancestor", GuideCardTitle="Update" },269                new TOCNode{ ID=3, ParentId=0, Title="About this Publication",  Role="ancestor", GuideCardTitle="About this Publication" },270                new TOCNode{ ID=5, ParentId=55, Title="Current Developments",  Role="ancestor", GuideCardTitle="Current Developments" },271                new TOCNode{ ID=55, ParentId=0, Title="Current Developments1",  Role="ancestor",GuideCardTitle="Current Developments" }272            };273            container.Arrange<IPackageAccess>(packageAccess => packageAccess.GetTOC(null)).IgnoreArguments().Returns(tocNodes);274            container.Arrange<IPublicationAccess>(publicationAccess => publicationAccess.GetDlBookByBookId(0, null)).IgnoreArguments().Returns(dlBook);275            var root = await container.Instance.GetTOCByBookId(bookId);276            PublicationContentDomainService contentService = new PublicationContentDomainService(null, null, null);277            var nextNode = contentService.GetNextTOCNode(4, 4, root, true);278            Assert.IsTrue(nextNode.ID == 9);279            var nextNode1 = contentService.GetNextTOCNode(2, 2, root, true);280            Assert.IsTrue(nextNode1.ID == 4);281            var nextNode2 = contentService.GetNextTOCNode(9, 9, root, true);282            Assert.IsTrue(nextNode2.ID == 7);283            var nextNode3 = contentService.GetNextTOCNode(7, 7, root, true);284            Assert.IsTrue(nextNode3.ID == 8);285            var nextNode4 = contentService.GetNextTOCNode(8, 8, root, true);286            Assert.IsTrue(nextNode4 == null);287        }288        [Test()]289        public async void GetFirsTAndLastTOCNodeTest()290        {291            List<TOCNode> tocNodes = new List<TOCNode>292            {293                new TOCNode{ ID=1, ParentId=0, Title="Update",  Role="ancestor",  GuideCardTitle="Update" },294                new TOCNode{ ID=2, ParentId=1, Title="Update",  Role="me",  GuideCardTitle="Update" },295                new TOCNode{ ID=3, ParentId=0, Title="About this Publication",  Role="ancestor",  GuideCardTitle="About this Publication" },296                new TOCNode{ ID=4, ParentId=3, Title="About this Publication",  Role="me",  GuideCardTitle="About this Publication" },297                new TOCNode{ ID=9, ParentId=3, Title="About this Publication1",  Role="me",  GuideCardTitle="About this Publication" },298                new TOCNode{ ID=55, ParentId=0, Title="Current Developments1",  Role="ancestor",  GuideCardTitle="Current Developments" },299                new TOCNode{ ID=5, ParentId=55, Title="Current Developments",  Role="ancestor",  GuideCardTitle="Current Developments" },300                new TOCNode{ ID=6, ParentId=5, Title="Judicature Modernisation Bill",  Role="ancestor",GuideCardTitle="Current Developments" },301                new TOCNode{ ID=8, ParentId=5, Title="JUDICATURE MODERNISATION BILL",  Role="me",  GuideCardTitle="Current Developments" },302                new TOCNode{ ID=7, ParentId=6, Title="Commentary",  Role="me", GuideCardTitle="Current Developments" }303            };304            container.Arrange<IPackageAccess>(packageAccess => packageAccess.GetTOC(null)).IgnoreArguments().Returns(tocNodes);305            dlBook.ServiceCode = GlobalAccess.Instance.CurrentUserInfo.Country.CountryCode;306            dlBook.Email = GlobalAccess.Instance.CurrentUserInfo.Email;307            container.Arrange<IPublicationAccess>(publicationAccess => publicationAccess.GetDlBookByBookId(0, null)).IgnoreArguments().Returns(dlBook);308            var rootNode = await container.Instance.GetTOCByBookId(bookId);309            var node1 = container.Instance.GetFirstAndLastTOCNode(rootNode);310        }311        [Test()]312        public async void GetPreviousTOCNodeTest()313        {314            List<TOCNode> tocNodes = new List<TOCNode>315            {316                new TOCNode{ ID=6, ParentId=5, Title="Judicature Modernisation Bill",  Role="ancestor", GuideCardTitle="Current Developments" },317                new TOCNode{ ID=7, ParentId=6, Title="Commentary",  Role="me",GuideCardTitle="Current Developments" },318                new TOCNode{ ID=8, ParentId=5, Title="JUDICATURE MODERNISATION BILL",  Role="me", GuideCardTitle="Current Developments" },319                new TOCNode{ ID=2, ParentId=1, Title="Update",  Role="me",  GuideCardTitle="Update" },320                new TOCNode{ ID=4, ParentId=3, Title="About this Publication",  Role="me",  GuideCardTitle="About this Publication" },321                new TOCNode{ ID=9, ParentId=3, Title="About this Publication1",  Role="me",  GuideCardTitle="About this Publication" },322                new TOCNode{ ID=1, ParentId=0, Title="Update",  Role="ancestor",  GuideCardTitle="Update" },323                new TOCNode{ ID=3, ParentId=0, Title="About this Publication",  Role="ancestor",  GuideCardTitle="About this Publication" },324                new TOCNode{ ID=5, ParentId=55, Title="Current Developments",  Role="ancestor",  GuideCardTitle="Current Developments" },325                new TOCNode{ ID=55, ParentId=0, Title="Current Developments1",  Role="ancestor",  GuideCardTitle="Current Developments" }326            };327            container.Arrange<IPackageAccess>(packageAccess => packageAccess.GetTOC(null)).IgnoreArguments().Returns(tocNodes);328            container.Arrange<IPublicationAccess>(publicationAccess => publicationAccess.GetDlBookByBookId(0, null)).IgnoreArguments().Returns(dlBook);329            var root = await container.Instance.GetTOCByBookId(bookId);330            PublicationContentDomainService contentService = new PublicationContentDomainService(null, null, null);331            var nextNode = contentService.GetNextTOCNode(8, 8, root, false);332            Assert.IsTrue(nextNode.ID == 7);333            var nextNode1 = contentService.GetNextTOCNode(7, 7, root, false);334            Assert.IsTrue(nextNode1.ID == 9);335            var nextNode2 = contentService.GetNextTOCNode(9, 9, root, false);336            Assert.IsTrue(nextNode2.ID == 4);337            var nextNode3 = contentService.GetNextTOCNode(4, 4, root, false);338            Assert.IsTrue(nextNode3.ID == 2);339            var nextNode4 = contentService.GetNextTOCNode(2, 2, root, false);340            Assert.IsTrue(nextNode4 == null);341            var nextNode11 = contentService.GetNextTOCNode(8, 8, root, true);342            Assert.IsTrue(nextNode11 == null);343            var nextNode12 = contentService.GetNextTOCNode(7, 7, root, true);344            Assert.IsTrue(nextNode12.ID == 8);345            var nextNode21 = contentService.GetNextTOCNode(9, 9, root, true);346            Assert.IsTrue(nextNode21.ID == 7);347            var nextNode31 = contentService.GetNextTOCNode(4, 4, root, true);348            Assert.IsTrue(nextNode31.ID == 9);349            var nextNode41 = contentService.GetNextTOCNode(2, 2, root, true);350            Assert.IsTrue(nextNode41.ID == 4);351        }352        [Test()]353        public async void GetIndexsByBookIdTest()354        {355            List<Index> list = new List<Index> { 356              new Index{ Title="AB",FileName="AB1.xml"},357              new Index{ Title="AC",FileName="AC1.xml"},358              new Index{ Title="AD",FileName="AD1.xml"},359              new Index{ Title="BA",FileName="BA1.xml"},360              new Index{ Title="BC",FileName="BC1.xml"},361              new Index{ Title="BE",FileName="BE1.xml"},362            };363            container.Arrange<IPublicationAccess>(publicationAccess => publicationAccess.GetDlBookByBookId(0, null)).IgnoreArguments().Returns(dlBook);364            container.Arrange<IPackageAccess>(packageAccess => packageAccess.GetIndexs(null)).IgnoreArguments().Returns(list);365            var indexdic = await container.Instance.GetIndexsByBookId(bookId);366            Assert.IsTrue(indexdic.Count == 2);367            Assert.IsTrue(indexdic["A"].Count == 3);368            Assert.IsTrue(indexdic["B"].Count == 3);369        }370        [Test()]371        public async void GetIndexListTest()372        {373            List<Index> list = new List<Index> { 374              new Index{ Title="AB",FileName="AB1.xml"},375              new Index{ Title="AC",FileName="AC1.xml"},376              new Index{ Title="AD",FileName="AD1.xml"},377              new Index{ Title="BA",FileName="BA1.xml"},378              new Index{ Title="BC",FileName="BC1.xml"},379              new Index{ Title="BE",FileName="BE1.xml"},380            };381            container.Arrange<IPublicationAccess>(publicationAccess => publicationAccess.GetDlBookByBookId(0, null)).IgnoreArguments().Returns(dlBook);382            container.Arrange<IPackageAccess>(packageAccess => packageAccess.GetIndexs(null)).IgnoreArguments().Returns(list);383            var indexList = await container.Instance.GetIndexList(bookId);384            Assert.IsTrue(indexList.Count == 6);385            Assert.IsTrue(indexList.FirstOrDefault(o => o.Title == "Ab") != null);386        }387        [Test]388        public void GetContentFromTOCTest()389        {390            try391            {392                string path = AppDomain.CurrentDomain.BaseDirectory;393                string content = File.ReadAllText(Path.Combine(path, "XpathTest.txt"));394                HtmlHelper helper = new HtmlHelper();395                helper.LoadHtml(content);396                helper.LoadHtml(content);397                var spanid = helper.GetSpanIdByXpath("div/div[3]/div[3]/section[1]/div/h3/span");398                var xpath = helper.GetXpathBySpanId(spanid);399                Assert.IsTrue(content.Length > 0);400            }401            catch (Exception)402            {403                throw;404            }405        }406        [Test, Ignore]407        public void GetContentFromIndexTest()408        {409            try410            {411                Index index = new Index { Title = "BB" };412                container.Arrange<IPublicationAccess>(publicationAccess => publicationAccess.GetDlBookByBookId(0, null)).IgnoreArguments().Returns(dlBook);413                var content = PublicationContentUtil.Instance.GetContentFromIndex(bookId, index).Result;414                Assert.IsTrue(content.Length > 0);415            }416            catch (Exception)417            {418                throw;419            }420        }421        [Test]422        public void FilePathReplace()423        {424            var dd = Regex.Replace("<a href=\"file:\\DL_FOLDER\\dd.pdf\" />dsadas<a href=\"file:\\DL_FOLDER\\dd.pdf\" />", @"file:\\DL_FOLDER", "file:\\" + dlBook.GetDirectory());425            Assert.IsTrue(!dd.Contains("DL_FOLDER"));426        }427        [Test]428        public void GetRecentHistoryTest()429        {430            TOCNode tocNode = new TOCNode431            {432                GuideCardTitle = "GuideCardTitle",433                Title = "",434                ID = 3435            };436            container.Arrange<IPublicationAccess>(publicationAccess => publicationAccess.GetDlBookByBookId(0, null)).IgnoreArguments().Returns(dlBook);437            var content = PublicationContentUtil.Instance.GetContentFromTOC(bookId, tocNode).Result;438            var history = PublicationContentUtil.Instance.GetRecentHistory();439            Assert.IsTrue(history.Count > 0);440        }441        [Test]442        public async void GetTOCListTest()443        {444            //Stopwatch timer = new Stopwatch();445            //timer.Start();446            var tocs = await PublicationContentUtil.Instance.GetTOCByBookId(bookId);447            // timer.Stop();448            //    await Logger.Log(timer.ElapsedMilliseconds.ToString());449            //    await Logger.Log("-------------------------end---------------------------------");450        }451        [Test]452        public async void GetTOCNodeByTOCIdTest()453        {454            var tocNode = await PublicationContentUtil.Instance.GetTOCByBookId(bookId);455            var specialNode = PublicationContentUtil.Instance.GetTOCByTOCId(2, tocNode);456            Assert.IsTrue(specialNode.ID == 2);457        }458        [Test]459        public void RenderHyperLinkTest()460        {461            string str = File.ReadAllText(@"C:\TempFiles_can_delete\RenderHyperLinkTest.htm");462            string result = PublicationContentUtil.Instance.RenderHyperLink(str, 13);...TaxExemptDiscriminatorServiceTests.cs
Source:TaxExemptDiscriminatorServiceTests.cs  
...28        [Test, TestCaseSource(nameof(_productTypeToIsTaxableCases))]29        public void IsTaxable_ReturnsValueBasedOnDefinedTypeNames_Test(ProductType prodType, bool expected)30        {31            var iProduct = Mock.Create<IProduct>();32            var productTypeName = prodType.ToString();33            Mock.Arrange(() => iProduct.ProdType).Returns(productTypeName);34            var sut = new TaxExemptDiscriminatorService(Settings.Config.TaxExemptProductTypeNames);35            var actual = sut.IsTaxable(iProduct);36            Assert.AreEqual(expected, actual);37        }38        [Test, TestCaseSource(nameof(_productTypeToIsTaxExemptCases))]39        public void IsTaxExempt_ReturnsValueBasedOnDefinedTypeNames_Test(ProductType prodType, bool expected)40        {41            var iProduct = Mock.Create<IProduct>();42            var productTypeName = prodType.ToString();43            Mock.Arrange(() => iProduct.ProdType).Returns(productTypeName);44            var sut = new TaxExemptDiscriminatorService(Settings.Config.TaxExemptProductTypeNames);45            var actual = sut.IsTaxExempt(iProduct);46            Assert.AreEqual(expected, actual);47        }48        [Test()]49        public void IsTaxExempt_ReturnsTrue_WhenTypeNameIncludedInConstructor_Test()50        {51            var iProduct = Mock.Create<IProduct>();52            var productTypeName = "book";53            Mock.Arrange(() => iProduct.ProdType).Returns(productTypeName);54            IEnumerable<string> productTypeNames = new List<string>55            {56                productTypeName...ToString
Using AI Code Generation
1var book = new Book();2book.ToString();3var book = new Book();4book.ToString();5var book = new Book();6book.ToString();7var book = new Book();8book.ToString();9var book = new Book();10book.ToString();11var book = new Book();12book.ToString();13var book = new Book();14book.ToString();15var book = new Book();16book.ToString();17var book = new Book();18book.ToString();19var book = new Book();20book.ToString();21var book = new Book();22book.ToString();23var book = new Book();24book.ToString();25var book = new Book();26book.ToString();27var book = new Book();28book.ToString();29var book = new Book();30book.ToString();31var book = new Book();32book.ToString();ToString
Using AI Code Generation
1var book = Mock.Create<Book>();2Mock.Arrange(() => book.ToString()).Returns("Book");3Console.WriteLine(book.ToString());4var book = Mock.Create<Book>();5Mock.Arrange(() => book.ToString()).Returns("Book");6Console.WriteLine(book.ToString());7var book = Mock.Create<Book>();8Mock.Arrange(() => book.ToString()).Returns("Book");9Console.WriteLine(book.ToString());10var book = Mock.Create<Book>();11Mock.Arrange(() => book.ToString()).Returns("Book");12Console.WriteLine(book.ToString());13var book = Mock.Create<Book>();14Mock.Arrange(() => book.ToString()).Returns("Book");15Console.WriteLine(book.ToString());16var book = Mock.Create<Book>();17Mock.Arrange(() => book.ToString()).Returns("Book");18Console.WriteLine(book.ToString());19var book = Mock.Create<Book>();20Mock.Arrange(() => book.ToString()).Returns("Book");21Console.WriteLine(book.ToString());22var book = Mock.Create<Book>();23Mock.Arrange(() => book.ToString()).Returns("Book");24Console.WriteLine(book.ToString());25var book = Mock.Create<Book>();26Mock.Arrange(() => book.ToString()).Returns("Book");27Console.WriteLine(book.ToString());28var book = Mock.Create<Book>();29Mock.Arrange(() => book.ToString()).Returns("Book");30Console.WriteLine(book.ToString());31var book = Mock.Create<Book>();32Mock.Arrange(() => book.ToString()).Returns("Book");33Console.WriteLine(book.ToString());ToString
Using AI Code Generation
1var book = new Book("The Da Vinci Code", "Dan Brown");2Console.WriteLine(book.ToString());3var book = new Book("The Da Vinci Code", "Dan Brown");4Console.WriteLine(book.ToString());5var book = new Book("The Da Vinci Code", "Dan Brown");6Console.WriteLine(book.ToString());7var book = new Book("The Da Vinci Code", "Dan Brown");8Console.WriteLine(book.ToString());9var book = new Book("The Da Vinci Code", "Dan Brown");10Console.WriteLine(book.ToString());11var book = new Book("The Da Vinci Code", "Dan Brown");12Console.WriteLine(book.ToString());13var book = new Book("The Da Vinci Code", "Dan Brown");14Console.WriteLine(book.ToString());15var book = new Book("The Da Vinci Code", "Dan Brown");16Console.WriteLine(book.ToString());17var book = new Book("The Da Vinci Code", "Dan Brown");18Console.WriteLine(book.ToString());19var book = new Book("The Da Vinci Code", "Dan Brown");20Console.WriteLine(book.ToString());21var book = new Book("The Da Vinci Code", "Dan Brown");22Console.WriteLine(book.ToString());23var book = new Book("The Da Vinci Code", "Dan Brown");24Console.WriteLine(book.ToString());25var book = new Book("The Da Vinci Code", "Dan Brown");26Console.WriteLine(book.ToString());ToString
Using AI Code Generation
1public void UseToString()2{3    Mock.Arrange(() => new Book().ToString()).Returns("Book");4    Book book = new Book();5    string result = book.ToString();6}7public void UseToString()8{9    Mock.Arrange(() => new Book().ToString()).Returns("Book");10    Book book = new Book();11    string result = book.ToString();12}13public void UseToString()14{15    Mock.Arrange(() => new Book().ToString()).Returns("Book");16    Book book = new Book();17    string result = book.ToString();18}19public void UseToString()20{21    Mock.Arrange(() => new Book().ToString()).Returns("Book");22    Book book = new Book();23    string result = book.ToString();24}25public void UseToString()26{27    Mock.Arrange(() => new Book().ToString()).Returns("Book");28    Book book = new Book();29    string result = book.ToString();30}31public void UseToString()32{33    Mock.Arrange(() => new Book().ToString()).Returns("Book");34    Book book = new Book();35    string result = book.ToString();36}37public void UseToString()38{39    Mock.Arrange(() => new Book().ToString()).Returns("Book");40    Book book = new Book();41    string result = book.ToString();42}43public void UseToString()44{45    Mock.Arrange(() => new Book().ToString()).Returns("Book");46    Book book = new Book();47    string result = book.ToString();48}49public void UseToString()50{51    Mock.Arrange(() => new Book().ToString()).Returns("Book");ToString
Using AI Code Generation
1var mock = Mock.Create<ITestInterface>();2Mock.Arrange(() => mock.GetBook()).Returns(new Book { Title = "Book1" });3var book = mock.GetBook();4Assert.AreEqual("Book1", book.ToString());5var mock = Mock.Create<ITestInterface>();6Mock.Arrange(() => mock.GetBook()).Returns(new Book { Title = "Book1" });7var book = mock.GetBook();8Assert.AreEqual("Book1", book.ToString());9var mock = Mock.Create<ITestInterface>();10Mock.Arrange(() => mock.GetBook()).Returns(new Book { Title = "Book1" });11var book = mock.GetBook();12Assert.AreEqual("Book1", book.ToString());13var mock = Mock.Create<ITestInterface>();14Mock.Arrange(() => mock.GetBook()).Returns(new Book { Title = "Book1" });15var book = mock.GetBook();16Assert.AreEqual("Book1", book.ToString());17var mock = Mock.Create<ITestInterface>();18Mock.Arrange(() => mock.GetBook()).Returns(new Book { Title = "Book1" });19var book = mock.GetBook();20Assert.AreEqual("Book1", book.ToString());21var mock = Mock.Create<ITestInterface>();22Mock.Arrange(() => mock.GetBook()).Returns(new Book { Title = "Book1" });23var book = mock.GetBook();24Assert.AreEqual("Book1", book.ToString());25var mock = Mock.Create<ITestInterface>();26Mock.Arrange(() => mock.GetBook()).Returns(new Book { Title = "Book1" });27var book = mock.GetBook();28Assert.AreEqual("Book1", book.ToString());29var mock = Mock.Create<ITestInterface>();30Mock.Arrange(()ToString
Using AI Code Generation
1var book = new Telerik.JustMock.Tests.Book("The Adventures of Huckleberry Finn", "Mark Twain");2var bookString = book.ToString();3var obj = new Object();4var objString = obj.ToString();5var book = new Telerik.JustMock.Tests.Book("The Adventures of Huckleberry Finn", "Mark Twain");6var bookString = book.ToString();7var obj = new Object();8var objString = obj.ToString();9var book = new Telerik.JustMock.Tests.Book("The Adventures of Huckleberry Finn", "Mark Twain");10var bookString = book.ToString();11var obj = new Object();12var objString = obj.ToString();13var book = new Telerik.JustMock.Tests.Book("The Adventures of Huckleberry Finn", "Mark Twain");14var bookString = book.ToString();15var obj = new Object();16var objString = obj.ToString();17var book = new Telerik.JustMock.Tests.Book("The Adventures of Huckleberry Finn", "Mark Twain");18var bookString = book.ToString();19var obj = new Object();20var objString = obj.ToString();21var book = new Telerik.JustMock.Tests.Book("The Adventures of Huckleberry Finn", "Mark Twain");22var bookString = book.ToString();23var obj = new Object();24var objString = obj.ToString();25var book = new Telerik.JustMock.Tests.Book("The Adventures of Huckleberry Finn", "Mark Twain");26var bookString = book.ToString();ToString
Using AI Code Generation
1using Telerik.JustMock.Tests;2{3    {4        public virtual string GetBookDetails(Book book)5        {6            return book.ToString();7        }8    }9}10using Telerik.JustMock;11using Telerik.JustMock.Demo;12using Telerik.JustMock.Tests;13{14    {15        public void GetBookDetails_ShouldReturnBookDetails()16        {17            var book = new Book();18            var bookRepository = Mock.Create<BookRepository>();19            Mock.Arrange(() => bookRepository.GetBookDetails(book)).Returns("Book details");20            var result = bookRepository.GetBookDetails(book);21            Assert.AreEqual("Book details", result);22        }23    }24}25using System;26using System.Collections.Generic;27using System.Linq;28using System.Text;29using Telerik.JustMock;30using Telerik.JustMock.Demo;31using Telerik.JustMock.Tests;32{33    {34        public void GetBookDetails_ShouldReturnBookDetails()35        {36            var book = new Book();37            var bookRepository = Mock.Create<BookRepository>();38            Mock.Arrange(() => bookRepository.GetBookDetails(book)).Returns("Book details");39            var result = bookRepository.GetBookDetails(book);40            Assert.AreEqual("Book details", result);41        }42    }43}44using System;45using System.Collections.Generic;46using System.Linq;47using System.Text;48using Telerik.JustMock;49using Telerik.JustMock.Demo;50using Telerik.JustMock.Tests;51{52    {53        public void GetBookDetails_ShouldReturnBookDetails()54        {55            var book = new Book();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!!
