@include describe("The arguments-validator function") {
  @include it("should return whether a list of arguments is valid for bitwise") {
    @include should(expect(arguments-validator(4 '^' 2)), to(be(true)));
    @include should(expect(arguments-validator(4 '&' 2)), to(be(true)));
    @include should(expect(arguments-validator(4 '|' 2)), to(be(true)));
    @include should(expect(arguments-validator(4 '<<' 2)), to(be(true)));
    @include should(expect(arguments-validator(4 '>>' 2)), to(be(true)));
    @include should(expect(arguments-validator('~' 4)), to(be(true)));
    @include should(expect(arguments-validator(4 '|' 4 '|' 4)), to(be(true)));
    @include should(expect(arguments-validator(4 '|' 4 '^' '~' 4)), to(be(true)));
    @include should(expect(arguments-validator(4 '|' 4 '^' 4)), to(be(true)));

    @include should(expect(arguments-validator(4 '|' 4 '~' 4)), to(be(false)));
    @include should(expect(arguments-validator(4 and 2)), to(be(false)));
    @include should(expect(arguments-validator(4 or 2)), to(be(false)));
    @include should(expect(arguments-validator(4 xor 2)), to(be(false)));
    @include should(expect(arguments-validator(4 '~' 2)), to(be(false)));
    @include should(expect(arguments-validator('|' 2)), to(be(false)));
    @include should(expect(arguments-validator('^' 2)), to(be(false)));
    @include should(expect(arguments-validator('&' 2)), to(be(false)));
    @include should(expect(arguments-validator(4 2)), to(be(false)));
  }
}
