1. 10 May, 2014 21 commits
  2. 09 May, 2014 5 commits
  3. 08 May, 2014 5 commits
  4. 07 May, 2014 9 commits
    • Ilya Dmitrichenko's avatar
      qemu-arm: fully integrated test suite. · c1c32d65
      Ilya Dmitrichenko authored
      This is primarily intended to provide testing of Thumb-specific code within
      Travis CI as well as if anyone else want to run it locally.  As discussed in
      purposes.  This is currently agains an emulated Cortex-M3 core, however in
      the near future it can extended to support M0, M0+ as well M4 (work in
      progress exists in sushihangover/qemu).
      
      It's probably true that most of the code base can be covered running uPy
      natively on a POSIX system, however we do have the tiny bit of assembly
      code.  There may exist bugs related to endianness and type aliases, let
      alone potential standard library or compiler bugs or even
      architecture-specific optimisations.
      
      This could also incorporate lwIP (or other TCP/IP stack) integration as well
      as SDIO+FATFS drivers.
      
      The solution to inline the test cases was chose due to simplicity. It could
      alternatively be implemented in a number of different way (see #515), but
      this looked the simplest.
      
      Inclusion of tinytest was just to avoid writing boilerplate code for
      counting failed tests and other utility functions.  Currently only a few
      functions are used, however this could be extended.  Checking in the code
      instead of using submodule was a personal preference, but if people do want
      the pain of submodules, this can provided.  This particular framework is
      also pretty good if one desires to run unit test on target.  The approach
      with scripts being inlined is probably not quite suited for the size of
      memory an MCU has, but the tinytest itself should be good, if lower-level C
      code is to be unit tested.
      c1c32d65
    • Ilya Dmitrichenko's avatar
      tools: inline test suite generator. · be86596b
      Ilya Dmitrichenko authored
      be86596b
    • Ilya Dmitrichenko's avatar
    • Damien George's avatar
      d509ac25
    • Paul Sokolovsky's avatar
      Merge pull request #584 from stinos/windows-input · be6aa53c
      Paul Sokolovsky authored
      windows: Fix input.c missing in Makefile after changes for #582
      be6aa53c
    • Paul Sokolovsky's avatar
      tests/bench: Add testcase for positional/kwargs to enumerate(). · 69cbec4a
      Paul Sokolovsky authored
      Inspired by discussion in #577. So, in this case of builtin function,
      passing args by keyword has less than 1% overhead.
      69cbec4a
    • Paul Sokolovsky's avatar
      tests/bench: Add tests for various ways to pass function args. · 2a05f05f
      Paul Sokolovsky authored
      Passing 3 args with keywords is for example 50% slower than via positional
      args.
      2a05f05f
    • Paul Sokolovsky's avatar
    • Paul Sokolovsky's avatar
      tests/bench: Add testcases for lookup in 5-el instance and namedtuple. · 6638ea9c
      Paul Sokolovsky authored
      ... and we have not that bad mapping type after all - lookup time is ~ the
      same as in one-attr instance. My namedtuple implementation on the other
      hand degrades awfully.
      
      So, need to rework it. First observation is that named tuple fields are
      accessed as attributes, so all names are interned at the program start.
      Then, really should store field array as qstr[], and do quick 32/64 bit
      scan thru it.
      6638ea9c