Ejemplo n.º 1
0
 def test_mode_incremental_repourl_not_updatable_svninfo_mismatch(self):
     self.setupStep(
         svn.SVN(repourl=ConstantRenderable('http://svn.local/trunk/app'),
                 mode='incremental'))
     self.expectCommands(
         ExpectShell(workdir='wkdir', command=['svn', '--version']) + 0,
         Expect('stat', dict(file='wkdir/.svn', logEnviron=True)) + 0,
         ExpectShell(workdir='wkdir',
                     command=[
                         'svn', 'info', '--non-interactive',
                         '--no-auth-cache'
                     ]) + ExpectShell.log(
                         'stdio',  # expecting ../trunk/app
                         stdout="URL: http://svn.local/branch/foo/app") + 0,
         Expect('rmdir', {
             'dir': 'wkdir',
             'logEnviron': True
         }) + 0,
         ExpectShell(workdir='wkdir',
                     command=[
                         'svn', 'checkout', 'http://svn.local/trunk/app',
                         '.', '--non-interactive', '--no-auth-cache'
                     ]) + 0,
         ExpectShell(workdir='wkdir', command=['svnversion']) +
         ExpectShell.log('stdio', stdout='100') + 0,
     )
     self.expectOutcome(result=SUCCESS, status_text=["update"])
     return self.runStep()
Ejemplo n.º 2
0
    def test_mode_full_stream_renderable_p4branch(self):
        self.setupStep(
            P4(p4port='localhost:12000',
               mode='full',
               p4base='//depot',
               p4branch=ConstantRenderable('render_branch'),
               p4user='******',
               p4client='p4_client1',
               p4passwd='pass',
               stream=True))

        root_dir = '/home/user/workspace/wkdir'
        if _is_windows:
            root_dir = r'C:\Users\username\Workspace\wkdir'
        client_spec = textwrap.dedent('''\
        Client: p4_client1

        Owner: user

        Description:
        \tCreated by user

        Root:\t%s

        Options:\tallwrite rmdir

        LineEnd:\tlocal

        Stream:\t//depot/render_branch
        ''' % root_dir)
        self._full(client_stdin=client_spec)
    def test_mode_full_renderable_p4branch(self):
        # Note that the config check skips checking p4base if it's a renderable
        self.setupStep(
            P4(p4port='localhost:12000',
               mode='full',
               p4base='//depot',
               p4branch=ConstantRenderable('render_branch'),
               p4user='******',
               p4client='p4_client1',
               p4passwd='pass'))

        root_dir = '/home/user/workspace/wkdir'
        if _is_windows:
            root_dir = r'C:\Users\username\Workspace\wkdir'
        client_stdin = textwrap.dedent('''\
        Client: p4_client1

        Owner: user

        Description:
        \tCreated by user

        Root:\t%s

        Options:\tallwrite rmdir

        LineEnd:\tlocal

        View:
        \t//depot/render_branch/... //p4_client1/...\n''' % root_dir)

        self._full(client_stdin=client_stdin)
    def test_mode_full_renderable_p4viewspec(self):
        self.setupStep(
            P4(p4port='localhost:12000',
               mode='full',
               p4viewspec=[(ConstantRenderable('//depot/render_trunk/'), '')],
               p4user='******',
               p4client='p4_client1',
               p4passwd='pass'))

        root_dir = '/home/user/workspace/wkdir'
        if _is_windows:
            root_dir = r'C:\Users\username\Workspace\wkdir'
        client_stdin = textwrap.dedent('''\
        Client: p4_client1

        Owner: different_user

        Description:
        \tCreated by different_user

        Root:\t%s

        Options:\tallwrite rmdir

        LineEnd:\tlocal

        View:
        \t//depot/render_trunk/... //p4_client1/...\n''' % root_dir)

        self._full(client_stdin=client_stdin, p4user='******')
Ejemplo n.º 5
0
 def test_mode_incremental_repourl_renderable(self):
     self.setupStep(
         svn.SVN(repourl=ConstantRenderable('http://svn.local/trunk'),
                 mode='incremental'))
     self.expectCommands(
         ExpectShell(workdir='wkdir', command=['svn', '--version']) + 0,
         Expect('stat', dict(file='wkdir/.svn', logEnviron=True)) + 0,
         ExpectShell(workdir='wkdir',
                     command=[
                         'svn', 'info', '--non-interactive',
                         '--no-auth-cache'
                     ]) +
         ExpectShell.log('stdio', stdout="URL: http://svn.local/trunk") + 0,
         ExpectShell(workdir='wkdir',
                     command=[
                         'svn', 'update', '--non-interactive',
                         '--no-auth-cache'
                     ]) + 0,
         ExpectShell(workdir='wkdir', command=['svnversion']) +
         ExpectShell.log('stdio', stdout='100') + 0,
     )
     self.expectOutcome(result=SUCCESS, status_text=["update"])
     return self.runStep()
Ejemplo n.º 6
0
 def test_mode_incremental_repourl_not_updatable(self):
     self.setupStep(
         svn.SVN(
             repourl=ConstantRenderable('http://svn.local/trunk/app'),
             mode='incremental',
         ))
     self.expectCommands(
         ExpectShell(workdir='wkdir', command=['svn', '--version']) + 0,
         Expect('stat', dict(file='wkdir/.svn', logEnviron=True)) + 1,
         Expect('rmdir', {
             'dir': 'wkdir',
             'logEnviron': True
         }) + 0,
         ExpectShell(workdir='wkdir',
                     command=[
                         'svn', 'checkout', 'http://svn.local/trunk/app',
                         '.', '--non-interactive', '--no-auth-cache'
                     ]) + 0,
         ExpectShell(workdir='wkdir', command=['svn', 'info']) +
         ExpectShell.log('stdio', stdout=self.svn_info_stdout) + 0,
     )
     self.expectOutcome(result=SUCCESS, status_text=["update"])
     self.expectProperty('got_revision', '100', 'SVN')
     return self.runStep()
 def test_setProperty_notJsonable(self):
     self.props.setProperty("project", ConstantRenderable('testing'),
                            "test")
     self.props.setProperty("project", object, "test")
     self.assertEqual(
         len(self.flushWarnings([self.test_setProperty_notJsonable])), 2)
Ejemplo n.º 8
0
 def test_TargetConfigMulti_Renderable(self):
     return self.createTest(target_config=ConstantRenderable(
         ["Development", "Shipping"]), )
 def test_TitleId_Renderable(self):
     return self.createTest(
         title_id=ConstantRenderable("Title_ID_A"),
         extra_arguments=["-TitleID=Title_ID_A"],
     )
 def test_kwargs_renderable(self):
     command = Interpolate("echo '%(kw:test)s'",
                           test=ConstantRenderable('testing'))
     d = self.build.render(command)
     d.addCallback(self.failUnlessEqual, "echo 'testing'")
     return d
Ejemplo n.º 11
0
 def targetConfigurationImplementation(self):
     return self.createTest(target_config=ConstantRenderable(target_config))
 def test_TitleIdMulti_Renderable(self):
     return self.createTest(
         title_id=ConstantRenderable(
             ["Title_ID_A", "Title_ID_B", "Title_ID_C"]),
         extra_arguments=["-TitleID=Title_ID_A+Title_ID_B+Title_ID_C"],
     )
 def test_BasedOnReleaseVersion_Renderable(self):
     return self.createTest(
         base_version=ConstantRenderable("v1.2.3"),
         extra_arguments=["-BasedOnReleaseVersion=v1.2.3"])
Ejemplo n.º 14
0
 def test_ExtraArgsString_Renderable(self):
     return self.createTest(
         extra_args=ConstantRenderable("-Something -Other"),
         extra_arguments=["-Something -Other"],
     )
 def test_EngineTypeSource_Renderable(self):
     return self.createTest(engine_type=ConstantRenderable("Source"))
Ejemplo n.º 16
0
 def test_DLCName_Renderable(self):
     return self.createTest(
         dlc_name=ConstantRenderable("TestDLC"),
         extra_arguments=["-DLCName=TestDLC"],
     )
 def test_EngineTypeRocket_Renderable(self):
     return self.createTest(engine_type=ConstantRenderable("Rocket"))
 def test_EngineTypeInstalled_Renderable(self):
     return self.createTest(engine_type=ConstantRenderable("Installed"))
from buildbot.test.util import config
from buildbot.test.util import gpo
from buildbot.test.util import logging
from buildbot.test.util import steps
from buildbot.test.util import config as configmixin
from buildbot.test.util.properties import ConstantRenderable

from buildbot.test.fake.remotecommand import ExpectShell
from buildbot.test.fake.remotecommand import Expect
from buildbot.process.results import EXCEPTION
from buildbot.process.results import FAILURE
from buildbot.process.results import SKIPPED
from buildbot.process.results import SUCCESS
from buildbot.process.results import WARNINGS

constant_true = ConstantRenderable(True)
constant_false = ConstantRenderable(False)


class TestBuildCookRunLogLineObserver(unittest.TestCase):
    def setUp(self):
        self.warnings = []
        mocked_warnings = Mock()
        mocked_warnings.addStdout = lambda l: self.warnings.append(l.rstrip())

        self.cook = []
        mocked_cook = Mock()
        mocked_cook.addStdout = lambda l: self.cook.append(l.rstrip())

        self.errors = []
        self.errors_stderr = []
Ejemplo n.º 20
0
 def test_TargetPlatformMulti_Renderable(self):
     return self.createTest(target_platform=ConstantRenderable(
         ["Win64", "PS4"]), )
 def test_RunDevices_Renderable(self):
     return self.createTest(
         devices=ConstantRenderable(["PCA", "ConsoleB", "MobileC"]),
         extra_arguments=["-Device=PCA+ConsoleB+MobileC"])
Ejemplo n.º 22
0
 def test_ExtraArgsList_Renderable(self):
     return self.createTest(
         extra_args=ConstantRenderable(["-Something", "-Other"]),
         extra_arguments=["-Something", "-Other"],
     )
 def test_Map_Renderable(self):
     return self.createTest(map=ConstantRenderable(["MapA", "MapB",
                                                    "MapC"]),
                            extra_arguments=["-Map=MapA+MapB+MapC"])
 def test_ArhiveDirectory_Renderable(self):
     return self.createTest(
         archive_directory=ConstantRenderable("There/Archive"),
         extra_arguments=["-ArchiveDirectory=There/Archive"])
Ejemplo n.º 25
0
 def targetPlatformImplementation(self):
     return self.createTest(
         target_platform=ConstantRenderable(target_platform))