<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/buildstream.git/tests/format/listdirectiveerrors.py, branch bschubert/python38</title>
<subtitle>gitlab.com: buildstream/buildstream.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/'/>
<entry>
<title>Reformat code using Black</title>
<updated>2019-11-14T21:21:06+00:00</updated>
<author>
<name>Chandan Singh</name>
<email>csingh43@bloomberg.net</email>
</author>
<published>2019-11-11T17:07:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/commit/?id=122177153b14664a0e4fed85aa4f22b87cfabf56'/>
<id>122177153b14664a0e4fed85aa4f22b87cfabf56</id>
<content type='text'>
As discussed over the mailing list, reformat code using Black. This is a
one-off change to reformat all our codebase. Moving forward, we
shouldn't expect such blanket reformats. Rather, we expect each change
to already comply with the Black formatting style.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
As discussed over the mailing list, reformat code using Black. This is a
one-off change to reformat all our codebase. Moving forward, we
shouldn't expect such blanket reformats. Rather, we expect each change
to already comply with the Black formatting style.
</pre>
</div>
</content>
</entry>
<entry>
<title>plugintestutils: Rename 'plugintestutils' package to 'testing'</title>
<updated>2019-04-16T13:25:40+00:00</updated>
<author>
<name>Phil Dawson</name>
<email>phil.dawson@codethink.co.uk</email>
</author>
<published>2019-04-15T10:02:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/commit/?id=97bbedbef15fc9edea5b04f66a30ec788da7f130'/>
<id>97bbedbef15fc9edea5b04f66a30ec788da7f130</id>
<content type='text'>
- Rename plugintestutils to testing.

- Don't run the tests from bst-plugins-template. This imports
  buildstream.plugintestutils so will have to be disabled to get
  through CI. This can be re nabled once bst-plugins-template has been
  patched.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- Rename plugintestutils to testing.

- Don't run the tests from bst-plugins-template. This imports
  buildstream.plugintestutils so will have to be disabled to get
  through CI. This can be re nabled once bst-plugins-template has been
  patched.
</pre>
</div>
</content>
</entry>
<entry>
<title>tests:lint: disable 'unused-import' checks on pytest fixtures</title>
<updated>2019-03-20T09:38:42+00:00</updated>
<author>
<name>Benjamin Schubert</name>
<email>ben.c.schubert@gmail.com</email>
</author>
<published>2019-03-19T18:36:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/commit/?id=da439e6658049bb79ca471f4eeac401e70c548f1'/>
<id>da439e6658049bb79ca471f4eeac401e70c548f1</id>
<content type='text'>
Pylint can't know that pytest's fixtures are used in a file and
therefore reports false positives. Silencing all those errors
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Pylint can't know that pytest's fixtures are used in a file and
therefore reports false positives. Silencing all those errors
</pre>
</div>
</content>
</entry>
<entry>
<title>tests:lint: silence redefined-outer-name in files using fixtures</title>
<updated>2019-03-20T09:38:42+00:00</updated>
<author>
<name>Benjamin Schubert</name>
<email>ben.c.schubert@gmail.com</email>
</author>
<published>2019-03-19T18:05:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/commit/?id=a90daa6a123d74a938a646e2fccaf4bfe6a5b950'/>
<id>a90daa6a123d74a938a646e2fccaf4bfe6a5b950</id>
<content type='text'>
Pylint doesn't play well with pytest fixtures, we therefore need to
silence this error.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Pylint doesn't play well with pytest fixtures, we therefore need to
silence this error.
</pre>
</div>
</content>
</entry>
<entry>
<title>tests: rename tests shadowing another one and fix failures</title>
<updated>2019-03-20T09:38:41+00:00</updated>
<author>
<name>Benjamin Schubert</name>
<email>ben.c.schubert@gmail.com</email>
</author>
<published>2019-03-09T11:07:19+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/commit/?id=180b8ada3922f7a1b139d76559ebece2bb54579f'/>
<id>180b8ada3922f7a1b139d76559ebece2bb54579f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Expose basic api for testing external plugins.</title>
<updated>2019-02-08T14:27:54+00:00</updated>
<author>
<name>Phil Dawson</name>
<email>phil.dawson@codethink.co.uk</email>
</author>
<published>2019-01-16T14:03:41+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/commit/?id=b4d4c4f59c12c9b500f83d8cd4381418e1124f67'/>
<id>b4d4c4f59c12c9b500f83d8cd4381418e1124f67</id>
<content type='text'>
We want external plugins to be able to make use of the core testing utils.
This commit exposes the basic utilities which are currently in use in
bst-external plugins. If necessary, more utilities could be exposed in the
future.

Moves the following files from tests/testutils/ to
buildstream/plugintestingutils/:
o runcli.py
o integration.py

As part of this, this commit makes the following changes to runcli.py
and integration.py:
o runcli.py: Fix linting errors
o runcli.py: Add user facing documentation
o Integration.py: Add user facing documentation
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We want external plugins to be able to make use of the core testing utils.
This commit exposes the basic utilities which are currently in use in
bst-external plugins. If necessary, more utilities could be exposed in the
future.

Moves the following files from tests/testutils/ to
buildstream/plugintestingutils/:
o runcli.py
o integration.py

As part of this, this commit makes the following changes to runcli.py
and integration.py:
o runcli.py: Fix linting errors
o runcli.py: Add user facing documentation
o Integration.py: Add user facing documentation
</pre>
</div>
</content>
</entry>
<entry>
<title>tests/format: Use new error assertions all around</title>
<updated>2018-01-01T10:44:53+00:00</updated>
<author>
<name>Tristan Van Berkom</name>
<email>tristan.vanberkom@codethink.co.uk</email>
</author>
<published>2018-01-01T09:30:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/commit/?id=c1b3a483d17337b45c9118ba2580437a89db2271'/>
<id>c1b3a483d17337b45c9118ba2580437a89db2271</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove unused imports in test files</title>
<updated>2017-12-07T14:25:40+00:00</updated>
<author>
<name>Gökçen Nurlu</name>
<email>gnurlu1@bloomberg.net</email>
</author>
<published>2017-12-05T16:15:59+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/commit/?id=fe720cbdd7bbc79efce8e7dc5fd2005af973aa05'/>
<id>fe720cbdd7bbc79efce8e7dc5fd2005af973aa05</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Refactoring: Move exceptions module to be private</title>
<updated>2017-11-06T09:15:33+00:00</updated>
<author>
<name>Tristan Van Berkom</name>
<email>tristan.vanberkom@codethink.co.uk</email>
</author>
<published>2017-11-06T09:15:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/commit/?id=27aac095bdb6b0025c989572789a1f98d8d89b3c'/>
<id>27aac095bdb6b0025c989572789a1f98d8d89b3c</id>
<content type='text'>
Hide all of buildstream's internal exceptions from the API surface.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Hide all of buildstream's internal exceptions from the API surface.
</pre>
</div>
</content>
</entry>
<entry>
<title>Catch attempts to compose a list</title>
<updated>2017-10-31T06:59:38+00:00</updated>
<author>
<name>Sam Thursfield</name>
<email>sam.thursfield@codethink.co.uk</email>
</author>
<published>2017-10-27T16:15:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/commit/?id=8c4d8ca2b7c886690fb933428c6768c745667db7'/>
<id>8c4d8ca2b7c886690fb933428c6768c745667db7</id>
<content type='text'>
Attempting to compose a list property would result in an unhandled
exception:

    AttributeError: 'CommentedSeq' object has no attribute 'get'

We now at least detect the situation and produce an exception that
the frontend will report neatly:

    Error loading pipeline: element.bst [line 11 column 4]: Only values of type 'dict' can be composed.

I was getting this error from an attempt to conditionally extend the
sources list:

    sources:
      (?):
        arch == "x86_64":
          - url: http://example.com/x86_64

The correct way to do this is to move the conditional into the parent
dict, e.g.:

    (?):
      arch == "x86_64":
        sources:
          - url: https://example.com/x86_64

It would be nice if the error message could hint at how the user can do
what they want, but it doesn't seem possible in this case.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Attempting to compose a list property would result in an unhandled
exception:

    AttributeError: 'CommentedSeq' object has no attribute 'get'

We now at least detect the situation and produce an exception that
the frontend will report neatly:

    Error loading pipeline: element.bst [line 11 column 4]: Only values of type 'dict' can be composed.

I was getting this error from an attempt to conditionally extend the
sources list:

    sources:
      (?):
        arch == "x86_64":
          - url: http://example.com/x86_64

The correct way to do this is to move the conditional into the parent
dict, e.g.:

    (?):
      arch == "x86_64":
        sources:
          - url: https://example.com/x86_64

It would be nice if the error message could hint at how the user can do
what they want, but it doesn't seem possible in this case.
</pre>
</div>
</content>
</entry>
</feed>
