예제 #1
0
    def test_request_WellBehavedFactories_ReturnRequestOpenResult(self):

        expectedResult = ("text", 123)
        arguments = {'something': 'whatever'}
        postData = 'blah blah'
        server = Server('host', 'blah', 'blah')

        mocks = mox.Mox()
        urlBuilder = mocks.CreateMock(IUrlBuilder)
        urlBuilderFactory = mocks.CreateMock(IUrlBuilderFactory)
        request = mocks.CreateMock(IRequest)
        requestFactory = mocks.CreateMock(IRequestFactory)

        urlBuilderFactory.create().AndReturn(urlBuilder)
        urlBuilder.build('host', 'path', arguments).AndReturn('full url')

        requestFactory.create('full url').AndReturn(request)
        request.setBasicAuthorisation(mox.IgnoreArg(),
                                      mox.IgnoreArg()).InAnyOrder()
        request.request(postData).InAnyOrder().AndReturn(expectedResult)

        mocks.ReplayAll()

        http = Http(server, urlBuilderFactory, requestFactory)
        result = http.request('path', arguments, postData)

        self.assertEqual(expectedResult, result)
예제 #2
0
    def test_request_NoUsername_AuthenticationNotSet(self):

        expectedResult = ("text", 123)
        arguments = {'something': 'whatever'}
        postData = 'blah blah'
        server = Server('host', '', 'password anyway')

        mocks = mox.Mox()
        urlBuilder = mocks.CreateMock(IUrlBuilder)
        urlBuilderFactory = mocks.CreateMock(IUrlBuilderFactory)
        request = mocks.CreateMock(IRequest)
        requestFactory = mocks.CreateMock(IRequestFactory)

        urlBuilderFactory.create().AndReturn(urlBuilder)
        urlBuilder.build('host', 'path', arguments).AndReturn('full url')

        requestFactory.create('full url').AndReturn(request)
        request.request(postData).AndReturn(expectedResult)

        mocks.ReplayAll()

        http = Http(server, urlBuilderFactory, requestFactory)
        http.request('path', arguments, postData)

        mox.Verify(request)
예제 #3
0
    def _create_jobs_mvp(self, settings, media_files):

        if settings.host == 'FAKE':
            jenkins = gui.fake.Jenkins()
            self._jenkins_url = QtCore.QUrl(
                'https://github.com/coolhandmook/trayjenkins')
        else:
            server = Server(settings.host, settings.username,
                            settings.password)
            jenkins = JenkinsFactory().create(server)
            self._jenkins_url = QtCore.QUrl(settings.host)

        error_logger = gui.jobs.ErrorLogger(self)
        self._jobs_model = JobsModel(jenkins, error_logger)
        self._jobs_view = gui.jobs.ListView()
        menu_factory = gui.jobs.ContextMenuFactory(self._jobs_view)
        view_adapter = gui.jobs.ListViewAdapter(self._jobs_view, media_files,
                                                menu_factory)
        self._jobs_presenter = JobsPresenter(self._jobs_model, view_adapter)
예제 #4
0
    def test_repr_ReturnsSensibleResult(self):

        server = Server('bacon', 'eggs', 'spam')
        self.assertEquals("Server(host='bacon',username='******',password='******')", server.__repr__())
예제 #5
0
    def test_constructor_HostAttributeMatchesThatPassedIn(self):

        server = Server('a host', 'whatever', 'whatever')
        self.assertEqual('a host', server.host)
예제 #6
0
    def test_equalityop_PasswordsDiffer_ReturnFalse(self):

        serverOne = Server('host', 'username', 'password A')
        serverTwo = Server('host', 'username', 'password B')

        self.assertFalse(serverOne == serverTwo)
예제 #7
0
    def test_equalityop_UsernamesDiffer_ReturnFalse(self):

        serverOne = Server('host', 'username A', 'password')
        serverTwo = Server('host', 'username B', 'password')

        self.assertFalse(serverOne == serverTwo)
예제 #8
0
    def test_equalityop_TwoEquivalentObjects_ReturnTrue(self):

        serverOne = Server('host', 'username', 'password')
        serverTwo = Server('host', 'username', 'password')

        self.assertTrue(serverOne == serverTwo)
예제 #9
0
    def test_constructor_PasswordAttributeMatchesThatPassedIn(self):

        server = Server('whatever', 'whatever', 'a password')
        self.assertEqual('a password', server.password)
예제 #10
0
    def test_constructor_UsernameAttributeMatchesThatPassedIn(self):

        server = Server('whatever', 'a username', 'whatever')
        self.assertEqual('a username', server.username)