代码之家  ›  专栏  ›  技术社区  ›  kiritsuku

Scala规范:嵌套在语句中

  •  1
  • kiritsuku  · 技术社区  · 15 年前

    是否可以嵌套以下规范测试代码

    "ClassX" should {
      "throw an IllegalArgumentException if n < 0" in {
        ClassX(-1) must throwA[IllegalArgumentException]
      }
      "throw an IllegalArgumentException if n > 50" in {
        ClassX(51) must throwA[IllegalArgumentException]
      }
      "throw an IllegalArgumentException if n == 35" in {
        ClassX(35) must throwA[IllegalArgumentException]
      }
    }
    

    在另一个in语句中,比如:

    "ClassX" should {
      "throw an IllegalArgumentException if" in {
        "n < 0" in {
          ClassX(-1) must throwA[IllegalArgumentException]
        }
        "n > 50" in  {
          ClassX(51) must throwA[IllegalArgumentException]
        }
        "n == 35" in  {
          ClassX(35) must throwA[IllegalArgumentException]
        }
      }
    }
    

    因为它更容易读和写

    2 回复  |  直到 15 年前
        1
  •  2
  •   David Winslow    15 年前

    对。见 http://code.google.com/p/specs/wiki/DeclareSpecifications 有关可以构造规范规范的所有方法的概述。

        2
  •  0
  •   iwein    12 年前

     "My Component" >> {
       " some general function" can {
         "do stuff that I like" in {
           //…
         }
         "do stuff others like" in {
           //…
         }
       }
     }
    

    但正如你可能注意到的,有很多方法可以做到这一点。

    推荐文章