public void returns_metadata() { using (var store = GetDocumentStore()) { var index = new Customers_ByName(); index.Execute(store); using (var session = store.OpenSession()) { session.Store(new Customer { Name = "John", Address = "Tel Aviv" }); session.SaveChanges(); } WaitForIndexing(store); using (var session = store.OpenSession()) { var customer = session.Query <Customer>().FirstOrDefault(); Assert.NotNull(customer); Assert.NotNull(customer.Id); Assert.Equal(customer.Name, "John"); Assert.Equal(customer.Address, "Tel Aviv"); var metadata = session.Advanced.GetMetadataFor(customer); Assert.NotNull(metadata[Constants.Documents.Metadata.ChangeVector]); Assert.NotNull(metadata[Constants.Documents.Metadata.RavenClrType]); Assert.NotNull(metadata[Constants.Documents.Metadata.Collection]); Assert.NotNull(metadata[Constants.Documents.Metadata.LastModified]); } } }
public void projections_with_property_rename() { using (var store = GetDocumentStore()) { var index = new Customers_ByName(); index.Execute(store); using (var session = store.OpenSession()) { session.Store(new Customer { Name = "John", Address = "Tel Aviv" }); session.SaveChanges(); WaitForIndexing(store); var customer = session.Query <Customer>(index.IndexName) .Select(r => new { Name = r.Name, OtherThanName = r.Address, OtherThanName2 = r.Address, AnotherOtherThanName = r.Name }).Single(); { Assert.Equal("John", customer.Name); Assert.Equal("Tel Aviv", customer.OtherThanName); Assert.Equal("Tel Aviv", customer.OtherThanName2); Assert.Equal("John", customer.AnotherOtherThanName); } } } }
public void load_lazily_returns_metadata_async() { using (var store = GetDocumentStore()) { var index = new Customers_ByName(); index.Execute(store); using (var session = store.OpenSession()) { session.Store(new Customer { Name = "John", Address = "Tel Aviv" }); session.SaveChanges(); } WaitForIndexing(store); using (var session = store.OpenAsyncSession()) { var customerLazy = session.Advanced.Lazily.LoadAsync <Customer>("customers/1-A"); var customer = customerLazy.Value.Result; Assert.NotNull(customer); Assert.NotNull(customer.Id); Assert.Equal(customer.Name, "John"); Assert.Equal(customer.Address, "Tel Aviv"); var metadata = session.Advanced.GetMetadataFor(customer); Assert.NotNull(metadata[Constants.Documents.Metadata.ChangeVector]); Assert.NotNull(metadata[Constants.Documents.Metadata.RavenClrType]); Assert.NotNull(metadata[Constants.Documents.Metadata.Collection]); Assert.NotNull(metadata[Constants.Documents.Metadata.LastModified]); } } }
public async Task get_returns_metadata_async() { using (var store = NewDocumentStore()) { var index = new Customers_ByName(); index.Execute(store); using (var session = store.OpenSession()) { session.Store(new Customer { Name = "John", Address = "Tel Aviv" }); session.SaveChanges(); } WaitForIndexing(store); var customer = await store.AsyncDatabaseCommands.GetAsync("customers/1"); Assert.NotNull(customer); Assert.NotNull(customer.Key); Assert.Equal(customer.DataAsJson.Value <string>("Name"), "John"); Assert.Equal(customer.DataAsJson.Value <string>("Address"), "Tel Aviv"); Assert.NotNull(customer.Etag); Assert.NotNull(customer.LastModified); Assert.NotNull(customer.Metadata.Value <string>(Constants.RavenClrType)); Assert.NotNull(customer.Metadata.Value <string>(Constants.RavenEntityName)); Assert.NotNull(customer.Metadata.Value <string>(Constants.LastModified)); Assert.NotNull(customer.Metadata.Value <string>(Constants.RavenLastModified)); } }
public void load_lazily_returns_metadata() { using (var store = NewDocumentStore()) { var index = new Customers_ByName(); index.Execute(store); using (var session = store.OpenSession()) { session.Store(new Customer { Name = "John", Address = "Tel Aviv" }); session.SaveChanges(); } WaitForIndexing(store); using (var session = store.OpenSession()) { var customerLazy = session.Advanced.Lazily.Load <Customer>("customers/1"); var customer = customerLazy.Value; Assert.NotNull(customer); Assert.NotNull(customer.Id); Assert.Equal(customer.Name, "John"); Assert.Equal(customer.Address, "Tel Aviv"); var metadata = session.Advanced.GetMetadataFor(customer); Assert.NotNull(metadata.Value <string>("@etag")); Assert.NotNull(metadata.Value <string>(Constants.RavenClrType)); Assert.NotNull(metadata.Value <string>(Constants.RavenEntityName)); Assert.NotNull(metadata.Value <string>(Constants.LastModified)); Assert.NotNull(metadata.Value <string>(Constants.RavenLastModified)); } } }
public void load_with_big_key_returns_metadata() { using (var store = NewDocumentStore()) { var index = new Customers_ByName(); index.Execute(store); var id = new string('a', 130); using (var session = store.OpenSession()) { session.Store(new Customer { Name = "John", Address = "Tel Aviv" }, id); session.SaveChanges(); } WaitForIndexing(store); var customer = store.DatabaseCommands.Get(id); Assert.NotNull(customer); Assert.NotNull(customer.Key); Assert.Equal(customer.DataAsJson.Value <string>("Name"), "John"); Assert.Equal(customer.DataAsJson.Value <string>("Address"), "Tel Aviv"); Assert.NotNull(customer.Etag); Assert.NotNull(customer.LastModified); Assert.NotNull(customer.Metadata.Value <string>(Constants.RavenClrType)); Assert.NotNull(customer.Metadata.Value <string>(Constants.RavenEntityName)); Assert.NotNull(customer.Metadata.Value <string>(Constants.LastModified)); Assert.NotNull(customer.Metadata.Value <string>(Constants.RavenLastModified)); } }
public void returns_metadata_async() { using (var store = NewDocumentStore()) { var index = new Customers_ByName(); index.Execute(store); using (var session = store.OpenSession()) { session.Store(new Customer { Name = "John", Address = "Tel Aviv" }); session.SaveChanges(); } WaitForIndexing(store); using (var session = store.OpenAsyncSession()) { var customerAsync = session.Query <Customer>().FirstOrDefaultAsync(); Assert.NotNull(customerAsync); var customer = customerAsync.Result; Assert.NotNull(customer.Id); Assert.Equal(customer.Name, "John"); Assert.Equal(customer.Address, "Tel Aviv"); var metadata = session.Advanced.GetMetadataFor(customer); Assert.NotNull(metadata.Value <string>("@etag")); Assert.NotNull(metadata.Value <string>(Constants.RavenClrType)); Assert.NotNull(metadata.Value <string>(Constants.RavenEntityName)); Assert.NotNull(metadata.Value <string>(Constants.LastModified)); Assert.NotNull(metadata.Value <string>(Constants.RavenLastModified)); } } }
public async Task streaming_and_projections_with_property_rename_Async() { using (var store = NewDocumentStore()) { var index = new Customers_ByName(); index.Execute(store); using (var session = store.OpenSession()) { session.Store(new Customer { Name = "John", Address = "Tel Aviv" }); session.SaveChanges(); } WaitForIndexing(store); using (var session = store.OpenAsyncSession()) { var query = session.Query <Customer>(index.IndexName) .Select(r => new { Name = r.Name, OtherThanName = r.Address, }); var enumerator = await session.Advanced.StreamAsync(query); while (await enumerator.MoveNextAsync()) { Assert.Equal("John", enumerator.Current.Document.Name); Assert.Equal("Tel Aviv", enumerator.Current.Document.OtherThanName); } } } }
public async Task streaming_and_projections_with_property_rename_Async() { using (var store = GetDocumentStore()) { var index = new Customers_ByName(); index.Execute(store); using (var session = store.OpenSession()) { session.Store(new Customer { Name = "John", Address = "Tel Aviv" }); session.SaveChanges(); } WaitForIndexing(store); using (var session = store.OpenAsyncSession()) { var query = session.Query <Customer>(index.IndexName); //TODO - Add when we have query with projection /* .Select(r => new * { * Name = r.Name, * OtherThanName = r.Address, * });*/ var enumerator = await session.Advanced.StreamAsync(query); while (await enumerator.MoveNextAsync()) { Assert.Equal("John", enumerator.Current.Document.Name); //TODO - delete when we have query with projection Assert.Equal("Tel Aviv", enumerator.Current.Document.Address); //TODO - Add when we have query with projection //Assert.Equal("Tel Aviv", enumerator.Current.Document.OtherThanName); Assert.NotNull(enumerator.Current.Key); Assert.NotNull(enumerator.Current.Metadata[Constants.Metadata.IndexScore]); } } } }
public async Task load_with_big_key_returns_metadata_async() { using (var store = GetDocumentStore()) { var index = new Customers_ByName(); index.Execute(store); var id = new string('a', 130); using (var session = store.OpenSession()) { session.Store(new Customer { Name = "John", Address = "Tel Aviv" }, id); session.SaveChanges(); } WaitForIndexing(store); using (var commands = store.Commands()) { var customer = await commands.GetAsync(id); Assert.NotNull(customer); var metadata = customer.BlittableJson.GetMetadata(); var key = metadata.GetId(); Assert.NotNull(key); dynamic customerDynamic = customer; Assert.Equal(customerDynamic.Name.ToString(), "John"); Assert.Equal(customerDynamic.Address.ToString(), "Tel Aviv"); Assert.NotNull(metadata.GetChangeVector()); Assert.NotNull(metadata.GetLastModified()); object _; Assert.NotNull(metadata.TryGetMember(Constants.Documents.Metadata.RavenClrType, out _)); Assert.NotNull(metadata.TryGetMember(Constants.Documents.Metadata.Collection, out _)); Assert.NotNull(metadata.TryGetMember(Constants.Documents.Metadata.LastModified, out _)); } } }
public void get_returns_metadata() { using (var store = GetDocumentStore()) { var index = new Customers_ByName(); index.Execute(store); using (var session = store.OpenSession()) { session.Store(new Customer { Name = "John", Address = "Tel Aviv" }); session.SaveChanges(); } Indexes.WaitForIndexing(store); using (var commands = store.Commands()) { var customer = commands.Get("customers/1-A"); Assert.NotNull(customer); var metadata = customer.BlittableJson.GetMetadata(); var id = metadata.GetId(); Assert.NotNull(id); dynamic customerDynamic = customer; Assert.Equal(customerDynamic.Name.ToString(), "John"); Assert.Equal(customerDynamic.Address.ToString(), "Tel Aviv"); Assert.NotNull(metadata.GetChangeVector()); Assert.NotNull(metadata.GetLastModified()); object _; Assert.NotNull(metadata.TryGetMember(Constants.Documents.Metadata.RavenClrType, out _)); Assert.NotNull(metadata.TryGetMember(Constants.Documents.Metadata.Collection, out _)); Assert.NotNull(metadata.TryGetMember(Constants.Documents.Metadata.LastModified, out _)); } } }
public void multi_load_returns_metadata() { using (var store = GetDocumentStore()) { var index = new Customers_ByName(); index.Execute(store); using (var session = store.OpenSession()) { session.Store(new Customer { Name = "John", Address = "Tel Aviv" }); session.Store(new Customer { Name = "John", Address = "Tel Aviv" }); session.SaveChanges(); } WaitForIndexing(store); using (var session = store.OpenSession()) { var customers = session.Load <Customer>(new List <string> { "customers/1-A", "customers/2-A" }); foreach (var customer in customers.Values) { Assert.NotNull(customer); Assert.NotNull(customer.Id); Assert.Equal(customer.Name, "John"); Assert.Equal(customer.Address, "Tel Aviv"); var metadata = session.Advanced.GetMetadataFor(customer); Assert.NotNull(metadata[Constants.Documents.Metadata.ChangeVector]); Assert.NotNull(metadata[Constants.Documents.Metadata.RavenClrType]); Assert.NotNull(metadata[Constants.Documents.Metadata.Collection]); Assert.NotNull(metadata[Constants.Documents.Metadata.LastModified]); } } } }
public void streaming_query_returns_metadata() { using (var store = NewDocumentStore()) { var index = new Customers_ByName(); index.Execute(store); using (var session = store.OpenSession()) { session.Store(new Customer { Name = "John", Address = "Tel Aviv" }); session.SaveChanges(); } WaitForIndexing(store); using (var session = store.OpenSession()) { var query = session.Query <Customer>(index.IndexName); var enumerator = session.Advanced.Stream(query); while (enumerator.MoveNext()) { Assert.NotNull(enumerator.Current.Document.Id); Assert.Equal("John", enumerator.Current.Document.Name); Assert.Equal("Tel Aviv", enumerator.Current.Document.Address); Assert.NotNull(enumerator.Current.Key); Assert.NotNull(enumerator.Current.Etag); Assert.NotNull(enumerator.Current.Metadata.Value <string>(Constants.RavenClrType)); Assert.NotNull(enumerator.Current.Metadata.Value <string>(Constants.RavenEntityName)); Assert.NotNull(enumerator.Current.Metadata.Value <string>(Constants.TemporaryScoreValue)); Assert.NotNull(enumerator.Current.Metadata.Value <string>(Constants.LastModified)); Assert.NotNull(enumerator.Current.Metadata.Value <string>(Constants.RavenLastModified)); } } } }
public void streaming_and_projections_with_property_rename() { using (var store = NewDocumentStore()) { var index = new Customers_ByName(); index.Execute(store); using (var session = store.OpenSession()) { session.Store(new Customer { Name = "John", Address = "Tel Aviv" }); session.SaveChanges(); } WaitForIndexing(store); using (var session = store.OpenSession()) { var query = session.Query <Customer>(index.IndexName) .Select(r => new { Name = r.Name, OtherThanName = r.Address, }); var enumerator = session.Advanced.Stream(query); while (enumerator.MoveNext()) { Assert.Equal("John", enumerator.Current.Document.Name); Assert.Equal("Tel Aviv", enumerator.Current.Document.OtherThanName); Assert.NotNull(enumerator.Current.Key); Assert.NotNull(enumerator.Current.Metadata.Value <string>(Constants.TemporaryScoreValue)); } } } }
public void streaming_query_returns_metadata() { using (var store = GetDocumentStore()) { var index = new Customers_ByName(); index.Execute(store); using (var session = store.OpenSession()) { session.Store(new Customer { Name = "John", Address = "Tel Aviv" }); session.SaveChanges(); } WaitForIndexing(store); using (var session = store.OpenSession()) { var query = session.Query <Customer>(index.IndexName); var enumerator = session.Advanced.Stream(query); while (enumerator.MoveNext()) { Assert.NotNull(enumerator.Current.Document.Id); Assert.Equal("John", enumerator.Current.Document.Name); Assert.Equal("Tel Aviv", enumerator.Current.Document.Address); Assert.NotNull(enumerator.Current.Id); Assert.NotNull(enumerator.Current.ChangeVector); Assert.NotNull(enumerator.Current.Metadata[Constants.Documents.Metadata.RavenClrType]); Assert.NotNull(enumerator.Current.Metadata[Constants.Documents.Metadata.Collection]); Assert.NotNull(enumerator.Current.Metadata[Constants.Documents.Metadata.IndexScore]); Assert.NotNull(enumerator.Current.Metadata[Constants.Documents.Metadata.LastModified]);; } } } }
public async Task streaming_query_returns_metadata_async() { using (var store = GetDocumentStore()) { var index = new Customers_ByName(); index.Execute(store); using (var session = store.OpenSession()) { session.Store(new Customer { Name = "John", Address = "Tel Aviv" }); session.SaveChanges(); } WaitForIndexing(store); using (var session = store.OpenAsyncSession()) { var query = session.Query <Customer>(index.IndexName); var enumerator = await session.Advanced.StreamAsync(query); while (await enumerator.MoveNextAsync()) { Assert.NotNull(enumerator.Current.Document.Id); Assert.Equal("John", enumerator.Current.Document.Name); Assert.Equal("Tel Aviv", enumerator.Current.Document.Address); Assert.NotNull(enumerator.Current.Key); Assert.NotNull(enumerator.Current.Etag); Assert.NotNull(enumerator.Current.Metadata[Constants.Headers.RavenClrType]); Assert.NotNull(enumerator.Current.Metadata[Constants.Headers.RavenEntityName]); Assert.NotNull(enumerator.Current.Metadata[Constants.Headers.LastModified]); Assert.NotNull(enumerator.Current.Metadata[Constants.Headers.RavenLastModified]); Assert.NotNull(enumerator.Current.Metadata[Constants.Metadata.IndexScore]); } } } }
public async Task streaming_returns_metadata_async() { using (var store = GetDocumentStore()) { var index = new Customers_ByName(); index.Execute(store); using (var session = store.OpenSession()) { session.Store(new Customer { Name = "John", Address = "Tel Aviv" }); session.SaveChanges(); } WaitForIndexing(store); using (var session = store.OpenAsyncSession()) { var enumerator = await session.Advanced.StreamAsync <Customer>(startsWith : "customers/"); while (await enumerator.MoveNextAsync()) { Assert.NotNull(enumerator.Current.Document.Id); Assert.Equal("John", enumerator.Current.Document.Name); Assert.Equal("Tel Aviv", enumerator.Current.Document.Address); Assert.NotNull(enumerator.Current.Id); Assert.NotNull(enumerator.Current.ChangeVector); Assert.NotNull(enumerator.Current.Metadata[Constants.Documents.Metadata.RavenClrType]); Assert.NotNull(enumerator.Current.Metadata[Constants.Documents.Metadata.Collection]); Assert.NotNull(enumerator.Current.Metadata[Constants.Documents.Metadata.LastModified]); } } } }
public void streaming_returns_metadata() { using (var store = GetDocumentStore()) { var index = new Customers_ByName(); index.Execute(store); using (var session = store.OpenSession()) { session.Store(new Customer { Name = "John", Address = "Tel Aviv" }); session.SaveChanges(); } WaitForIndexing(store); using (var session = store.OpenSession()) { var enumerator = session.Advanced.Stream <Customer>("customers/"); while (enumerator.MoveNext()) { Assert.NotNull(enumerator.Current.Document.Id); Assert.Equal("John", enumerator.Current.Document.Name); Assert.Equal("Tel Aviv", enumerator.Current.Document.Address); Assert.NotNull(enumerator.Current.Key); Assert.NotNull(enumerator.Current.Etag); Assert.NotNull(enumerator.Current.Metadata[Constants.Headers.RavenEntityName]); Assert.NotNull(enumerator.Current.Metadata[Constants.Headers.RavenLastModified]); Assert.NotNull(enumerator.Current.Metadata[Constants.Headers.LastModified]); } } } }