🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: alt.pl.comp.lang.csharp
Article #9958

NMock

#9958
From: Michał Piaskowski
Date: Fri, 11 Nov 2005 22:21
71 lines
2456 bytes
Witam!

Mam taki interfejs.
	public interface MoveCheckerInterface
	{
		 bool checkMove(Position p,StoneColor c,Board b);
	}

Moj problem polega na tym, ze gdy tworze mocka do tego interfejsu
i oczekuje wywołania metody checkPosition, to mock przy wywołaniu tej
metody rzuca mi wyjątkiem 
	NMockTest.NMockTest.CheckerCallTest : System.NullReferenceException :
Object reference not set to an instance of an object.
	 at ProxyCheckerInterface.checkPosition(Position , Color , Board )
	  at NMockTest.NMockTest.CheckerCallTest() in d:\documents and
settings\piaskal\my documents\visual studio
projects\nmocktest\class1.cs:line 40

Napisałem kod który wywołuje tą metodę bezpośrednio w teście (bez
odwoływania się do testowanej klasy) i cały czas jest tak samo.

Ktoś wie co może być przyczyną tego. Co robie źle?

Oto mój kod:

using System;
using NUnit.Framework;
using NMock;
using NMock.Constraints;

namespace NMockTest
{
	public class Position
	{
		public Position(int x,int y) 
		{
		}
	};
	public enum StoneColor
	{
		empty = 0,
		black,white
	}
	public class Board {}

	public interface MoveCheckerInterface
	{
		 bool checkMove(Position p,StoneColor c,Board b);
	}

	
	[TestFixture]
	public class NMockTest
	{
		[Test]
		public void CheckerCallTest()
		{
			Position p = new Position(4,5);
			Board b = new Board();
			Mock mock = new DynamicMock(typeof(MoveCheckerInterface));
			MoveCheckerInterface mockInstance = (MoveCheckerInterface)
mock.MockInstance;
			
			mock.Expect("checkMove",p,StoneColor.white,b);

			mockInstance.checkMove(p,StoneColor.white,b);

			mock.Verify();
		}
	}
}
Technical Details
Message-ID: <aacm22h1uo9t$.uqjw59tfm1p5$.dlg@40tude.net>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mail

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mail
From: Michał Piaskowski <piaskal@gmail.com.nospam>
Newsgroups: alt.pl.comp.lang.csharp
Subject: NMock
Date: Fri, 11 Nov 2005 23:21:22 +0100
Organization: tp.internet - http://www.tpi.pl/
Lines: 75
Message-ID: <aacm22h1uo9t$.uqjw59tfm1p5$.dlg@40tude.net>
NNTP-Posting-Host: btb84.neoplus.adsl.tpnet.pl
Mime-Version: 1.0
X-Trace: atlantis.news.tpi.pl 1131747688 20360 83.29.147.84 (11 Nov 2005 22:21:28 GMT)
X-Complaints-To: usenet@tpi.pl
NNTP-Posting-Date: Fri, 11 Nov 2005 22:21:28 +0000 (UTC)
User-Agent: 40tude_Dialog/2.0.15.1pl
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit