Exemplo n.º 1
0
        //[Fact]
        public void Actually_Call_Api()
        {
            ITalendAdminApi api   = new TalendAdminApi(_settings.TalendAdminAddress, _settings.TalendAdminUsername, _settings.TalendAdminPassword);
            var             items = api.GetServerList();

            items.ShouldNotBeEmpty();
        }
Exemplo n.º 2
0
        public void TestGetServerListReturnsItems()
        {
            // GIVEN
            var serverList = new Models.TalendApiListResponse <Models.Server> {
                ReturnCode    = 0,
                ExecutionTime = new Models.TalendApiResponse.Executiontime {
                    millis  = 500,
                    seconds = 2
                },
                Results = new System.Collections.Generic.List <Models.Server> {
                    new Models.Server {
                        active              = true,
                        id                  = 123,
                        host                = "localhost",
                        label               = "test-server",
                        port                = 20,
                        useSSL              = true,
                        adminConsolePort    = 8000,
                        fileTransferPort    = 8001,
                        instance            = "instance 2",
                        isRuntimeServer     = true,
                        mgmtRegPort         = 8002,
                        mgmtServerPort      = 8003,
                        monitoringPort      = 8004,
                        timeOutUnknownState = 30
                    }
                }
            };
            var response = Substitute.For <RestResponse <Models.TalendApiListResponse <Models.Server> > >();

            response.Data = serverList;

            var apiCommand = new Models.ApiCommandRequest {
                authPass   = _settings.TalendAdminPassword,
                authUser   = _settings.TalendAdminUsername,
                actionName = TalendAdminApiCommands.LIST_SERVERS
            };
            var encodedApiCommand = GetMetaservletCommand(apiCommand);

            var restClient = Substitute.For <IRestClient>();

            restClient.Execute <Models.TalendApiListResponse <Models.Server> >(
                Arg.Do <RestRequest>(x => x.Resource.ShouldEqual($"metaServlet?{encodedApiCommand}"))).Returns(response);

            // WHEN
            ITalendAdminApi api   = new TalendAdminApi(_settings.TalendAdminAddress, _settings.TalendAdminUsername, _settings.TalendAdminPassword, restClient);
            var             items = api.GetServerList();

            // THEN
            items.ShouldNotBeEmpty();
            items.First().port.ShouldEqual(20);
            items.First().label.ShouldEqual("test-server");
        }
Exemplo n.º 3
0
        public void TestGetServerListThrowsExceptionIfNoResponse()
        {
            // GIVEN
            var response = Substitute.For <RestResponse <Models.TalendApiListResponse <Models.Server> > >();

            response.ErrorException = new System.Exception("ERROR");


            var restClient = Substitute.For <IRestClient>();

            restClient.Execute <Models.TalendApiListResponse <Models.Server> >(Arg.Any <RestRequest>()).Returns(response);

            // WHEN & THEN
            ITalendAdminApi api = new TalendAdminApi(_settings.TalendAdminAddress, _settings.TalendAdminUsername, _settings.TalendAdminPassword, restClient);

            Assert.Throws <System.Exception>(() => api.GetServerList());
        }
Exemplo n.º 4
0
        public void TestGetServerListFailsIfInvalid()
        {
            // GIVEN
            var serverList = new Models.TalendApiListResponse <Models.Server> {
                ReturnCode = 5
            };
            var response = Substitute.For <RestResponse <Models.TalendApiListResponse <Models.Server> > >();

            response.Data = serverList;

            var restClient = Substitute.For <IRestClient>();

            restClient.Execute <Models.TalendApiListResponse <Models.Server> >(Arg.Any <RestRequest>()).Returns(response);

            // WHEN & THEN
            ITalendAdminApi api = new TalendAdminApi(_settings.TalendAdminAddress, _settings.TalendAdminUsername, _settings.TalendAdminPassword, restClient);

            Assert.Throws <System.Exception>(() => api.GetServerList());
        }