function testWithValue(className, value, raw) {
      var title = 'should allow valid values `' + className + '=' + value + '`';

      it(title, function() {

        var expected = $mdUtil.supplant('{0}-{1}', [className, value ? String(value).replace(/\s+/g, "-") : value]);
        var markup = $mdUtil.supplant('<div {0}="{1}">Layout</div>', [className, value]);

        var element = $compile(markup)(pageScope);
        if (!element.hasClass(expected)) {
          expect(expected).toBe(element[0].classList[1]);
        }

        if (raw) {
          // Is the raw value also present?
          expect(element.hasClass(raw)).toBeFalsy();
        }

      });
    }
Test other Layout directives (e.g. flex, flex-order, flex-offset)