Message ID | 20170718203839.14913-1-yann.morin.1998@free.fr |
---|---|
State | Accepted |
Headers | show |
Hello, On Tue, 18 Jul 2017 22:38:39 +0200, Yann E. MORIN wrote: > Currently, defining a config fragment in the runtime test infra requires > that the fragment not to be indented. This is beark, and causes grievance > when looking at the code (e.g. to fix it). > > Just strip out all leading spaces/tabs when writing the configuration > lines into the config file, allowing in-line indented config fragments, > like so: > > class TestFoo(bla): > config = bla.config + \ > """ > FOO=y > # BAR is not set > """ > > Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> > Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> > Cc: Arnout Vandecappelle <arnout@mind.be> > > --- > Changes v2 -> v3: > - use and fix code snippet provided by Arnout, thanks! ;-) > - do it in our base test class, not on the builder class (Arnout) Applied to master, thanks. Thomas
On 18-07-17 22:38, Yann E. MORIN wrote: > Currently, defining a config fragment in the runtime test infra requires > that the fragment not to be indented. This is beark, and causes grievance > when looking at the code (e.g. to fix it). > > Just strip out all leading spaces/tabs when writing the configuration > lines into the config file, allowing in-line indented config fragments, > like so: > > class TestFoo(bla): > config = bla.config + \ > """ > FOO=y > # BAR is not set > """ > > Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> > Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> > Cc: Arnout Vandecappelle <arnout@mind.be> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> > > --- > Changes v2 -> v3: > - use and fix code snippet provided by Arnout, thanks! ;-) > - do it in our base test class, not on the builder class (Arnout) > > Changes v1 -> v2: > - add example in commit log (Thomas) > --- > support/testing/infra/basetest.py | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/support/testing/infra/basetest.py b/support/testing/infra/basetest.py > index 1a082bb441..07c180e232 100644 > --- a/support/testing/infra/basetest.py > +++ b/support/testing/infra/basetest.py > @@ -41,6 +41,7 @@ class BRTest(unittest.TestCase): > self.testname = self.__class__.__name__ > self.builddir = self.outputdir and os.path.join(self.outputdir, self.testname) > self.emulator = None > + self.config = '\n'.join([line.lstrip() for line in self.config.splitlines()]) It would also be nice to move the setting of jlevel to the constructor. But heck, there's probably a lot that would be nice to improve in the testing infra :-) Regards, Arnout > > def show_msg(self, msg): > print "{} {:40s} {}".format(datetime.datetime.now().strftime("%H:%M:%S"), >
Hello, On Wed, 19 Jul 2017 14:00:40 +0200, Arnout Vandecappelle wrote: > On 18-07-17 22:38, Yann E. MORIN wrote: > > Currently, defining a config fragment in the runtime test infra requires > > that the fragment not to be indented. This is beark, and causes grievance > > when looking at the code (e.g. to fix it). > > > > Just strip out all leading spaces/tabs when writing the configuration > > lines into the config file, allowing in-line indented config fragments, > > like so: > > > > class TestFoo(bla): > > config = bla.config + \ > > """ > > FOO=y > > # BAR is not set > > """ > > > > Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> > > Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> > > Cc: Arnout Vandecappelle <arnout@mind.be> > > Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> I already applied yesterday evening: https://git.buildroot.org/buildroot/commit/?id=cf3cd4388a652c9af27ef1c35622e2d0a55b99a9. Best regards, Thomas
diff --git a/support/testing/infra/basetest.py b/support/testing/infra/basetest.py index 1a082bb441..07c180e232 100644 --- a/support/testing/infra/basetest.py +++ b/support/testing/infra/basetest.py @@ -41,6 +41,7 @@ class BRTest(unittest.TestCase): self.testname = self.__class__.__name__ self.builddir = self.outputdir and os.path.join(self.outputdir, self.testname) self.emulator = None + self.config = '\n'.join([line.lstrip() for line in self.config.splitlines()]) def show_msg(self, msg): print "{} {:40s} {}".format(datetime.datetime.now().strftime("%H:%M:%S"),
Currently, defining a config fragment in the runtime test infra requires that the fragment not to be indented. This is beark, and causes grievance when looking at the code (e.g. to fix it). Just strip out all leading spaces/tabs when writing the configuration lines into the config file, allowing in-line indented config fragments, like so: class TestFoo(bla): config = bla.config + \ """ FOO=y # BAR is not set """ Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Arnout Vandecappelle <arnout@mind.be> --- Changes v2 -> v3: - use and fix code snippet provided by Arnout, thanks! ;-) - do it in our base test class, not on the builder class (Arnout) Changes v1 -> v2: - add example in commit log (Thomas) --- support/testing/infra/basetest.py | 1 + 1 file changed, 1 insertion(+)