1. C# / Говнокод #16125

    +103

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    public bool Enabled(string elementId)
            {
                bool flag = false;
                bool flagFalse = false;
                bool flagTrue = false;
                bool mainFlag = false;
                IWebElement input = Driver.FindElement(By.Id(elementId));
                if (input.Enabled == true)
                {
                    flagTrue = true;                
                }
                else
                    if (input.Enabled == false)
                    {
                        flagFalse = false;                    
                    }
    
                if (flagTrue = true)
                {
                    mainFlag = flagTrue;
                }
    
                else if (flagFalse == false)
                {
                    mainFlag = flagFalse;
                }
                return mainFlag;
            }

    Астрологи объявили неделю флагов. Их количество увеличивается вдвое.

    Запостил: alexCoder2007, 07 Июня 2014

    Комментарии (14) RSS

    • какой чудный триколор
      Ответить
    • Фейк явно.
      Ответить
      • Не думаю. Эта строка говорит в пользу реальности кода:
        > IWebElement input = Driver.FindElement(By.Id(elementId));

        Порог у шарпа такой низкий, что кодить на нем могут даже вот такие экземпляры.
        Ответить
    • Больше всего доставляет, что flagFalse вообще никогда не может быть true, а просто flag нигде не используется.

      А ещё

      if (flagTrue = true)


      присваивание? Получается, что из-за опечатки в условии вся эта писанина эквивалентна return true (а без неё была бы эквивалентна return Driver.FindElement(By.Id(elementId)).Ena bled).
      Ответить
      • А ведь верно. Хитрый способ вернуть true
        Ответить
      • На такой код будет warning, так что если умный проектировщик в автобилдах или в решении поставил флаг "Threat warning as errors", то такой код дальше машины разработчика никуда не уйдёт.
        Ответить
    • введение дополнительных уровней косвенности прям ... на каждом из которых бул.
      p.s. нужен еще nullInputFlag.
      Ответить

    Добавить комментарий