or
public
void
ThrowTest(Guid id,
string
stringToUpdate)
{
var user = _model.Users.SingleOrDefault(p => p.Guid == id);
if
(user !=
null
)
{
user.StringToUpdate = stringToUpdate;
try
{
_model.SaveChanges();
}
catch
(OptimisticVerificationException optimisticVerificationException)
{
_model.Refresh(RefreshMode.OverwriteChangesFromStore, user);
user.StringToUpdate = stringToUpdate;
_model.SaveChanges();
}
}
}
Mock.Arrange(() => _mockModel.SaveChanges()).Occurs(2);
Mock.Arrange(() => _mockModel.SaveChanges()).Throws<OptimisticVerificationException>(
string
.Empty).InSequence();
Mock.Arrange(() => _mockModel.SaveChanges()).InSequence();
Mock.Arrange(() => _mockModel.Users.SingleOrDefault(p => p.Guid == userGuid)).Returns(
new
User());
Mock.Arrange(() => _mockModel.Refresh(RefreshMode.OverwriteChangesFromStore, Arg.IsAny<User>())).MustBeCalled();
[Test]
public
void
SqlException_Example()
{
var sqlEx = Mock.Create<SqlException>();
sqlEx.Arrange(ex => ex.Class).Returns(20);
sqlEx.Arrange(ex => ex.InnerException).Returns(
new
Exception(
"My Test"
));
Assert.IsTrue(Mock.IsProfilerEnabled);
Assert.That(sqlEx.Class, Is.EqualTo(20));
Assert.That(sqlEx.InnerException, Is.Not.Null);
//<-- Fails
}
public
class
SimpleClass
{
public
string
GetFormatedString(
string
mask,
params
object
[] par)
{
return
string
.Format(mask, par);
}
}
[TestMethod]
public void MyTestMethod()
{
// here when I look at nodes, it has values
XmlNodeList
n
odes = GetPresetNodes();
XmlDocument mockedXmlDocument = Mock.Create<
XmlDocument
>();
Mock.Arrange(() => mockedXmlDocument.Load("C:\\Presets.xml"))
.IgnoreInstance()
.DoNothing();
// it doesn't matter if I have IgnoreArguments here or not
Mock.Arrange(() => mockedXmlDocument.SelectNodes("//presets/preset"))
.IgnoreArguments()
.IgnoreInstance()
.Returns(presetNodes);
ClassA c = new ClassA();
}
public class ClassA
{
public static readonly ClassToTest = new ClassToTest();
....
}
public sealed class ClassToTest
{
// constructor
public ClassToTest()
{
XmlDocument doc = new XmlDocument();
// this correctly gets ignored
doc.Load("
C:\\Presets.xml"
);
// this returns an empty XmlNodeList and not the one I created in the test
XmlNodeList presets = doc.SelectNodes("//presets/preset");
}
}
Any Ideas?