public async Task VerifyCosmosDefaultResultSetStreamIteratorOperationType() { CosmosClient mockClient = MockDocumentClient.CreateMockCosmosClient(); CosmosDatabase database = new CosmosDatabase(mockClient, "database"); CosmosContainer container = new CosmosContainer(database, "container"); CosmosItems item = new CosmosItems(container); CosmosSqlQueryDefinition sql = new CosmosSqlQueryDefinition("select * from r"); CosmosResultSetIterator setIterator = item .CreateItemQueryAsStream(sql, "pk", requestOptions: new CosmosQueryRequestOptions()); TestHandler testHandler = new TestHandler((request, cancellationToken) => { Assert.AreEqual( 15, //OperationType.SqlQuery (int)request.GetType().GetProperty("OperationType", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic).GetValue(request, null) ); return(TestHandler.ReturnSuccess()); }); mockClient.RequestHandler.InnerHandler = testHandler; mockClient.CosmosConfiguration.UseConnectionModeDirect(); CosmosResponseMessage response = await setIterator.FetchNextSetAsync(); testHandler = new TestHandler((request, cancellationToken) => { Assert.AreEqual( 14, //OperationType.Query (int)request.GetType().GetProperty("OperationType", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic).GetValue(request, null) ); return(TestHandler.ReturnSuccess()); }); mockClient.RequestHandler.InnerHandler = testHandler; mockClient.CosmosConfiguration.UseConnectionModeGateway(); response = await setIterator.FetchNextSetAsync(); }
private static CosmosContainerCore GetMockedContainer(CosmosItems mockedItems) { Mock <CosmosContainerCore> mockedContainer = new Mock <CosmosContainerCore>(); mockedContainer.Setup(c => c.LinkUri).Returns(new Uri("/dbs/myDb/colls/myColl", UriKind.Relative)); //mockedContainer.Setup(c => c.Client).Returns(DocumentServiceLeaseUpdaterCosmosTests.GetMockedClient()); mockedContainer.Setup(c => c.Items).Returns(mockedItems); return(mockedContainer.Object); }
/// <summary> /// Initialize the db /// </summary> /// <returns></returns> public static async Task InitDbConnection() { CosmosConfiguration config = new CosmosConfiguration(Endpoint, PrimaryKey); client = new CosmosClient(config); CosmosDatabase database = await client.Databases.CreateDatabaseIfNotExistsAsync(DatabaseId); CosmosContainer container = await database.Containers.CreateContainerIfNotExistsAsync(ContainerId, "/CategoryName"); items = container.Items; }
public static async Task Initialize(IConfiguration configuration) { databaseId = configuration.GetSection("CosmosDb").GetSection("Database").Value ?? "Tasks"; containerId = configuration.GetSection("CosmosDb").GetSection("Container").Value ?? "Items"; endpoint = configuration.GetSection("CosmosDb").GetSection("Endpoint").Value; primaryKey = configuration.GetSection("CosmosDb").GetSection("PrimaryKey").Value; var config = new CosmosConfiguration(endpoint, primaryKey); client = new CosmosClient(config); CosmosDatabase database = await client.Databases.CreateDatabaseIfNotExistsAsync(databaseId); CosmosContainer container = await database.Containers.CreateContainerIfNotExistsAsync(containerId, "/category"); items = container.Items; }