public void Should_create_edge_with_returnNew_parameter()
{
Database.ClearTestCollection(Database.TestEdgeCollectionName);
var db = new ADatabase(Database.Alias);
var document = new Dictionary<string, object>()
.From(_documents[0].ID())
.To(_documents[1].ID())
.String("foo", "foo string value")
.Int("bar", 12345);
var createResult = db
.Document
.ReturnNew()
.CreateEdge(Database.TestEdgeCollectionName, document);
Assert.AreEqual(202, createResult.StatusCode);
Assert.IsTrue(createResult.Success);
Assert.IsTrue(createResult.HasValue);
Assert.IsTrue(createResult.Value.IsString("_id"));
Assert.IsTrue(createResult.Value.IsString("_key"));
Assert.IsTrue(createResult.Value.IsString("_rev"));
Assert.IsTrue(createResult.Value.Has("new"));
Assert.AreEqual(createResult.Value.ID(), createResult.Value.String("new._id"));
Assert.AreEqual(createResult.Value.Key(), createResult.Value.String("new._key"));
Assert.AreEqual(createResult.Value.Rev(), createResult.Value.String("new._rev"));
Assert.AreEqual(document.String("_from"), createResult.Value.String("new._from"));
Assert.AreEqual(document.String("_to"), createResult.Value.String("new._to"));
Assert.AreEqual(document.String("foo"), createResult.Value.String("new.foo"));
Assert.AreEqual(document.Int("bar"), createResult.Value.Int("new.bar"));
}