Moodle
  1. Moodle
  2. MDL-40207

Simplepie unit tests time out too quickly causing false positives

    Details

    • Rank:
      50959

      Description

      Simplepie is constantly creating false-positive unit test failures due to low network timeout. We get about one failure per day on the integration server.

      This is intentional for interactive scripts to prevent rss requests from blocking requests (e.g. the rss block from delaying a request), and there is an API to increase the time out of a request which can be used to prevent this situation.

        Issue Links

          Activity

          Hide
          Dan Poltawski added a comment -

          I've fixed this by changing the way we call simplepie on the stable branches to set the timeout.

          On master i've made it easier to set the timeout in the constructor and converted there.

          I've intentionally not increased the timeout on the 'broken proxy' request.

          Show
          Dan Poltawski added a comment - I've fixed this by changing the way we call simplepie on the stable branches to set the timeout. On master i've made it easier to set the timeout in the constructor and converted there. I've intentionally not increased the timeout on the 'broken proxy' request.
          Hide
          Sam Hemelryk added a comment -

          Looks spot on thanks Dan, I've put this up for integration review.

          Show
          Sam Hemelryk added a comment - Looks spot on thanks Dan, I've put this up for integration review.
          Hide
          Marina Glancy added a comment -

          Thanks, this has been integrated in 2.3, 2.4, 2.5 and master

          Show
          Marina Glancy added a comment - Thanks, this has been integrated in 2.3, 2.4, 2.5 and master
          Hide
          Rossiani Wijaya added a comment -

          As advised by David Monllao, only testing instructions #2 is required to test this issue.

          However I also tested for 2.3, 2.4, 2.5 and master. It works as expected in all branches.

          Test passed.

          Show
          Rossiani Wijaya added a comment - As advised by David Monllao, only testing instructions #2 is required to test this issue. However I also tested for 2.3, 2.4, 2.5 and master. It works as expected in all branches. Test passed.
          Hide
          Dan Poltawski added a comment -

          Thanks for your contributions!

          _main:
          @ BB#0:
                  push    {r7, lr}
                  mov     r7, sp
                  sub     sp, #4
                  movw    r0, :lower16:(L_.str-(LPC0_0+4))
                  movt    r0, :upper16:(L_.str-(LPC0_0+4))
          LPC0_0:
                  add     r0, pc
                  bl      _printf
                  movs    r1, #0
                  movt    r1, #0
                  str     r0, [sp]                @ 4-byte Spill
                  mov     r0, r1
                  add     sp, #4
                  pop     {r7, pc}
          
                  .section        __TEXT,__cstring,cstring_literals
          L_.str:                                 @ @.str
                  .asciz   "This code is now upstream!"
          
          Show
          Dan Poltawski added a comment - Thanks for your contributions! _main: @ BB#0: push {r7, lr} mov r7, sp sub sp, #4 movw r0, :lower16:(L_.str-(LPC0_0+4)) movt r0, :upper16:(L_.str-(LPC0_0+4)) LPC0_0: add r0, pc bl _printf movs r1, #0 movt r1, #0 str r0, [sp] @ 4- byte Spill mov r0, r1 add sp, #4 pop {r7, pc} .section __TEXT,__cstring,cstring_literals L_.str: @ @.str .asciz "This code is now upstream!"
          Hide
          Damyon Wiese added a comment -
          Show
          Damyon Wiese added a comment - Still not long enough for unit tests always: http://integration.moodle.org/job/07.%20Run%20phpunit%20UnitTests%20(24_STABLE)/785/

            People

            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: