• @killeronthecorner
    link
    English
    2710 months ago

    rand will be called every time true is used, which could be hundreds of times for all we know

    • @[email protected]
      link
      fedilink
      2510 months ago

      If it’s a 16-bit integer platform, it might hit every once in a while.

      If it’s a 32-bit integer platform, it’ll hit very rarely.

      If it’s a 64-bit integer platform, someone would have to do the math with some reasonable assumptions, but I wouldn’t be surprised if it would never hit before the universe becomes nothing but black holes.

      • Morphit
        link
        fedilink
        1210 months ago

        The point being made is that it also depends how often the ‘true’ value gets used in the code. Tests might only evaluate it a few times per run, or they could cause billions of evaluations per run. You can’t know the probability of a test failure without knowing the occurrence rate of that expression.

        • @killeronthecorner
          link
          English
          4
          edit-2
          10 months ago

          Yes you’re correct, this was the point I was making.

          To elaborate: could be 100s of times in a codebase, even 1000s, being executed in tests on local machines and build servers 100s of times a day, etc. etc.

          • @themusicman
            link
            210 months ago

            But it would hit a different place every time… Most developers wouldn’t even consider checking for this, and the chance of getting a repro in a debugger is slim to none