From mboxrd@z Thu Jan 1 00:00:00 1970 From: gvb.uboot Date: Tue, 27 Nov 2007 21:32:08 -0500 Subject: [U-Boot-Users] [RFC PATCH] Add u-boot command regression tests. In-Reply-To: <20071127224638.GU3851@pengutronix.de> References: <474ACEEC.1080801@ge.com> <20071126140935.58BD9247C1@gemini.denx.de> <20071127224638.GU3851@pengutronix.de> Message-ID: <474CD328.7090109@gmail.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Robert Schwebel wrote: > On Mon, Nov 26, 2007 at 03:09:35PM +0100, Wolfgang Denk wrote: >> in message <474ACEEC.1080801@ge.com> you wrote: >>> I've used tk/tcl/expect and am not wild about them. The older scripting >>> languages are so.... 70s. ;-) I haven't used python much, but I've come >>> to like it a lot, kind of a rational perl. :-/ >> I think I know what you mean. > > Same here, we are through all these iterations as well: > > - we've written a test suite in python with xml specs (oo design, but > very complex in the end, without the advantages we expected from > an oo language) > > - expect/tcl based test suite; causes brain cancer because of tcl > > Now we do the u-boot tests/scripting with the tcl/expect stuff and all > other Linux test suites in normal shell scripts, remote-controlled via > ssh. > > While the latter one has finally turned out to be a good way to write > test cases, we think about adding something like a dbus module to > u-boot-v2, which would make it possible to do real and well defined RPC > between a host and u-boot. > > rsc Hmmm, I seem to have hit a resonance. More background trivia... my weekend experiment was using python-serial. I chose that and used it to capture whole serial transactions (waited until it appeared no more serial characters were being sent) so I could then use python regexp matching to do simpler, more elaborate, and more sane (yes, all three) pattern matching than what I was able to do with expect due to expect breaking the serial stream in semi-random time based chunks. Another option that I have not experimented with is a python-based expect: Best regards, gvb