Ejemplo n.º 1
0
        public async Task SendAsync_Dictionary_WithPortals_ShouldHaveData()
        {
            // arrange
            var mockHttp = new MockHttpMessageHandler();

            var layout = "the-layout";

            mockHttp.When(HttpMethod.Post, $"{FindTestsHelpers.Server}/fmi/data/v1/databases/{FindTestsHelpers.File}/sessions")
            .Respond("application/json", DataApiResponses.SuccessfulAuthentication());

            mockHttp.When(HttpMethod.Post, $"{FindTestsHelpers.Server}/fmi/data/v1/databases/{FindTestsHelpers.File}/layouts/{layout}/_find")
            .Respond(HttpStatusCode.OK, "application/json", DataApiResponses.SuccessfulFindWithPortal());

            var fdc = new FileMakerRestClient(mockHttp.ToHttpClient(), FindTestsHelpers.Connection);

            var fr = new FindRequest <Dictionary <string, string> >
            {
                Layout = layout
            };

            fr.AddQuery(new Dictionary <string, string> {
                { "one", "one" }
            }, false);

            // act
            var response = await fdc.SendAsync(fr);

            // assert
            Assert.NotEmpty(response.Response.Data);
        }
Ejemplo n.º 2
0
        public async Task FindAsync_WithPortals_ShouldHaveData()
        {
            // arrange
            var mockHttp = new MockHttpMessageHandler();

            var layout = "the-layout";

            mockHttp.When(HttpMethod.Post, $"{FindTestsHelpers.server}/fmi/data/v1/databases/{FindTestsHelpers.file}/sessions")
            .Respond("application/json", DataApiResponses.SuccessfulAuthentication());

            mockHttp.When(HttpMethod.Post, $"{FindTestsHelpers.server}/fmi/data/v1/databases/{FindTestsHelpers.file}/layouts/{layout}/_find")
            .Respond(HttpStatusCode.OK, "application/json", DataApiResponses.SuccessfulFindWithPortal());

            var fdc = new FileMakerRestClient(mockHttp.ToHttpClient(),
                                              FindTestsHelpers.server,
                                              FindTestsHelpers.file,
                                              FindTestsHelpers.user,
                                              FindTestsHelpers.pass);

            var toFind = new PortalModel()
            {
                ES_ONE = ""
            };

            // act
            var response = await fdc.FindAsync(toFind);

            // assert
            Assert.NotEmpty(response);
            Assert.NotEmpty(response.SelectMany(p => p.Actions));
            // hard coded from sample data, if changed update here
            Assert.Equal(16, response.First().Actions.First().ID);
        }