cybernaut
Version:
Reliable, automated web UI testing in BDD-style.
430 lines • 21.3 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const predicate_1 = require("../predicate");
const test_utils_1 = require("./test-utils");
let should;
beforeEach(() => {
should = new predicate_1.PredicateBuilder();
});
test_utils_1.given('a predicate is built via contain()', () => {
let predicate;
beforeEach(() => {
predicate = should.contain('foo');
});
test_utils_1.when('predicate.compare() is called', () => {
test_utils_1.then('it should return a comparison', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.compare('bar')).toBe("expected 'bar' to contain 'foo'");
}));
});
test_utils_1.when('predicate.description is accessed', () => {
test_utils_1.then('it should evaluate to a description', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.description).toBe("should contain 'foo'");
}));
});
test_utils_1.when('predicate.test() is called', () => {
test_utils_1.then('it should return true', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test('foo')).toBe(true);
expect(predicate.test('foobar')).toBe(true);
}));
test_utils_1.then('it should return false', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test('bar')).toBe(false);
expect(predicate.test('')).toBe(false);
}));
});
});
test_utils_1.given('a predicate is built via not.contain()', () => {
let predicate;
beforeEach(() => {
predicate = should.not.contain('foo');
});
test_utils_1.when('predicate.compare() is called', () => {
test_utils_1.then('it should return a comparison', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.compare('bar')).toBe("expected 'bar' to not contain 'foo'");
}));
});
test_utils_1.when('predicate.description is accessed', () => {
test_utils_1.then('it should evaluate to a description', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.description).toBe("should not contain 'foo'");
}));
});
test_utils_1.when('predicate.test() is called', () => {
test_utils_1.then('it should return true', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test('bar')).toBe(true);
expect(predicate.test('')).toBe(true);
}));
test_utils_1.then('it should return false', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test('foo')).toBe(false);
expect(predicate.test('foobar')).toBe(false);
}));
});
});
test_utils_1.given('a predicate is built via equal()', () => {
let predicate;
beforeEach(() => {
predicate = should.equal({ foo: 'foo' });
});
test_utils_1.when('predicate.compare() is called', () => {
test_utils_1.then('it should return a comparison', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.compare({ foo: 'bar' })).toBe("expected { foo: 'bar' } to equal { foo: 'foo' }");
}));
});
test_utils_1.when('predicate.description is accessed', () => {
test_utils_1.then('it should evaluate to a description', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.description).toBe("should equal { foo: 'foo' }");
}));
});
test_utils_1.when('predicate.test() is called', () => {
test_utils_1.then('it should return true', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test({ foo: 'foo' })).toBe(true);
expect(should.equal(NaN).test(NaN)).toBe(true);
}));
test_utils_1.then('it should return false', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test({ foo: 'bar' })).toBe(false);
expect(should.equal(NaN).test(0)).toBe(false);
}));
});
});
test_utils_1.given('a predicate is built via not.equal()', () => {
let predicate;
beforeEach(() => {
predicate = should.not.equal({ foo: 'foo' });
});
test_utils_1.when('predicate.compare() is called', () => {
test_utils_1.then('it should return a comparison', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.compare({ foo: 'bar' })).toBe("expected { foo: 'bar' } to not equal { foo: 'foo' }");
}));
});
test_utils_1.when('predicate.description is accessed', () => {
test_utils_1.then('it should evaluate to a description', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.description).toBe("should not equal { foo: 'foo' }");
}));
});
test_utils_1.when('predicate.test() is called', () => {
test_utils_1.then('it should return true', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test({ foo: 'bar' })).toBe(true);
expect(should.not.equal(NaN).test(0)).toBe(true);
}));
test_utils_1.then('it should return false', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test({ foo: 'foo' })).toBe(false);
expect(should.not.equal(NaN).test(NaN)).toBe(false);
}));
});
});
test_utils_1.given('a predicate is built via match()', () => {
let predicate;
beforeEach(() => {
predicate = should.match(/foo/);
});
test_utils_1.when('predicate.compare() is called', () => {
test_utils_1.then('it should return a comparison', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.compare('bar')).toBe("expected 'bar' to match /foo/");
}));
});
test_utils_1.when('predicate.description is accessed', () => {
test_utils_1.then('it should evaluate to a description', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.description).toBe('should match /foo/');
}));
});
test_utils_1.when('predicate.test() is called', () => {
test_utils_1.then('it should return true', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test('foo')).toBe(true);
expect(predicate.test('foobar')).toBe(true);
}));
test_utils_1.then('it should return false', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test('bar')).toBe(false);
expect(predicate.test('')).toBe(false);
}));
});
});
test_utils_1.given('a predicate is built via not.match()', () => {
let predicate;
beforeEach(() => {
predicate = should.not.match(/foo/);
});
test_utils_1.when('predicate.compare() is called', () => {
test_utils_1.then('it should return a comparison', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.compare('bar')).toBe("expected 'bar' to not match /foo/");
}));
});
test_utils_1.when('predicate.description is accessed', () => {
test_utils_1.then('it should evaluate to a description', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.description).toBe('should not match /foo/');
}));
});
test_utils_1.when('predicate.test() is called', () => {
test_utils_1.then('it should return true', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test('bar')).toBe(true);
expect(predicate.test('')).toBe(true);
}));
test_utils_1.then('it should return false', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test('foo')).toBe(false);
expect(predicate.test('foobar')).toBe(false);
}));
});
});
test_utils_1.given('a predicate is built via beBetween()', () => {
let predicate;
beforeEach(() => {
predicate = should.beBetween(9, 11);
});
test_utils_1.when('predicate.compare() is called', () => {
test_utils_1.then('it should return a comparison', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.compare(10)).toBe('expected 10 to be between 9 and 11, inclusive');
}));
});
test_utils_1.when('predicate.description is accessed', () => {
test_utils_1.then('it should evaluate to a description', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.description).toBe('should be between 9 and 11, inclusive');
}));
});
test_utils_1.when('predicate.test() is called', () => {
test_utils_1.then('it should return true', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test(9)).toBe(true);
expect(predicate.test(10)).toBe(true);
expect(predicate.test(11)).toBe(true);
}));
test_utils_1.then('it should return false', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test(8)).toBe(false);
expect(predicate.test(12)).toBe(false);
expect(predicate.test(NaN)).toBe(false);
}));
});
});
test_utils_1.given('a predicate is built via not.beBetween()', () => {
let predicate;
beforeEach(() => {
predicate = should.not.beBetween(9, 11);
});
test_utils_1.when('predicate.compare() is called', () => {
test_utils_1.then('it should return a comparison', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.compare(10)).toBe('expected 10 to not be between 9 and 11, inclusive');
}));
});
test_utils_1.when('predicate.description is accessed', () => {
test_utils_1.then('it should evaluate to a description', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.description).toBe('should not be between 9 and 11, inclusive');
}));
});
test_utils_1.when('predicate.test() is called', () => {
test_utils_1.then('it should return true', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test(8)).toBe(true);
expect(predicate.test(12)).toBe(true);
expect(predicate.test(NaN)).toBe(true);
}));
test_utils_1.then('it should return false', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test(9)).toBe(false);
expect(predicate.test(10)).toBe(false);
expect(predicate.test(11)).toBe(false);
}));
});
});
test_utils_1.given('a predicate is built via beGreaterThan()', () => {
let predicate;
beforeEach(() => {
predicate = should.beGreaterThan(10);
});
test_utils_1.when('predicate.compare() is called', () => {
test_utils_1.then('it should return a comparison', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.compare(11)).toBe('expected 11 to be greater than 10');
}));
});
test_utils_1.when('predicate.description is accessed', () => {
test_utils_1.then('it should evaluate to a description', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.description).toBe('should be greater than 10');
}));
});
test_utils_1.when('predicate.test() is called', () => {
test_utils_1.then('it should return true', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test(11)).toBe(true);
}));
test_utils_1.then('it should return false', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test(9)).toBe(false);
expect(predicate.test(10)).toBe(false);
expect(predicate.test(NaN)).toBe(false);
}));
});
});
test_utils_1.given('a predicate is built via not.beGreaterThan()', () => {
let predicate;
beforeEach(() => {
predicate = should.not.beGreaterThan(10);
});
test_utils_1.when('predicate.compare() is called', () => {
test_utils_1.then('it should return a comparison', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.compare(11)).toBe('expected 11 to not be greater than 10');
}));
});
test_utils_1.when('predicate.description is accessed', () => {
test_utils_1.then('it should evaluate to a description', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.description).toBe('should not be greater than 10');
}));
});
test_utils_1.when('predicate.test() is called', () => {
test_utils_1.then('it should return true', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test(9)).toBe(true);
expect(predicate.test(10)).toBe(true);
expect(predicate.test(NaN)).toBe(true);
}));
test_utils_1.then('it should return false', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test(11)).toBe(false);
}));
});
});
test_utils_1.given('a predicate is built via beGreaterThanOrEqual()', () => {
let predicate;
beforeEach(() => {
predicate = should.beGreaterThanOrEqual(10);
});
test_utils_1.when('predicate.compare() is called', () => {
test_utils_1.then('it should return a comparison', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.compare(11)).toBe('expected 11 to be greater than or equal 10');
}));
});
test_utils_1.when('predicate.description is accessed', () => {
test_utils_1.then('it should evaluate to a description', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.description).toBe('should be greater than or equal 10');
}));
});
test_utils_1.when('predicate.test() is called', () => {
test_utils_1.then('it should return true', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test(10)).toBe(true);
expect(predicate.test(11)).toBe(true);
}));
test_utils_1.then('it should return false', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test(9)).toBe(false);
expect(predicate.test(NaN)).toBe(false);
}));
});
});
test_utils_1.given('a predicate is built via not.beGreaterThanOrEqual()', () => {
let predicate;
beforeEach(() => {
predicate = should.not.beGreaterThanOrEqual(10);
});
test_utils_1.when('predicate.compare() is called', () => {
test_utils_1.then('it should return a comparison', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.compare(11)).toBe('expected 11 to not be greater than or equal 10');
}));
});
test_utils_1.when('predicate.description is accessed', () => {
test_utils_1.then('it should evaluate to a description', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.description).toBe('should not be greater than or equal 10');
}));
});
test_utils_1.when('predicate.test() is called', () => {
test_utils_1.then('it should return true', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test(9)).toBe(true);
expect(predicate.test(NaN)).toBe(true);
}));
test_utils_1.then('it should return false', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test(10)).toBe(false);
expect(predicate.test(11)).toBe(false);
}));
});
});
test_utils_1.given('a predicate is built via beLessThan()', () => {
let predicate;
beforeEach(() => {
predicate = should.beLessThan(10);
});
test_utils_1.when('predicate.compare() is called', () => {
test_utils_1.then('it should return a comparison', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.compare(11)).toBe('expected 11 to be less than 10');
}));
});
test_utils_1.when('predicate.description is accessed', () => {
test_utils_1.then('it should evaluate to a description', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.description).toBe('should be less than 10');
}));
});
test_utils_1.when('predicate.test() is called', () => {
test_utils_1.then('it should return true', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test(9)).toBe(true);
}));
test_utils_1.then('it should return false', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test(10)).toBe(false);
expect(predicate.test(11)).toBe(false);
expect(predicate.test(NaN)).toBe(false);
}));
});
});
test_utils_1.given('a predicate is built via not.beLessThan()', () => {
let predicate;
beforeEach(() => {
predicate = should.not.beLessThan(10);
});
test_utils_1.when('predicate.compare() is called', () => {
test_utils_1.then('it should return a comparison', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.compare(11)).toBe('expected 11 to not be less than 10');
}));
});
test_utils_1.when('predicate.description is accessed', () => {
test_utils_1.then('it should evaluate to a description', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.description).toBe('should not be less than 10');
}));
});
test_utils_1.when('predicate.test() is called', () => {
test_utils_1.then('it should return true', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test(10)).toBe(true);
expect(predicate.test(11)).toBe(true);
expect(predicate.test(NaN)).toBe(true);
}));
test_utils_1.then('it should return false', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test(9)).toBe(false);
}));
});
});
test_utils_1.given('a predicate is built via beLessThanOrEqual()', () => {
let predicate;
beforeEach(() => {
predicate = should.beLessThanOrEqual(10);
});
test_utils_1.when('predicate.compare() is called', () => {
test_utils_1.then('it should return a comparison', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.compare(11)).toBe('expected 11 to be less than or equal 10');
}));
});
test_utils_1.when('predicate.description is accessed', () => {
test_utils_1.then('it should evaluate to a description', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.description).toBe('should be less than or equal 10');
}));
});
test_utils_1.when('predicate.test() is called', () => {
test_utils_1.then('it should return true', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test(9)).toBe(true);
expect(predicate.test(10)).toBe(true);
}));
test_utils_1.then('it should return false', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test(11)).toBe(false);
expect(predicate.test(NaN)).toBe(false);
}));
});
});
test_utils_1.given('a predicate is built via not.beLessThanOrEqual()', () => {
let predicate;
beforeEach(() => {
predicate = should.not.beLessThanOrEqual(10);
});
test_utils_1.when('predicate.compare() is called', () => {
test_utils_1.then('it should return a comparison', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.compare(11)).toBe('expected 11 to not be less than or equal 10');
}));
});
test_utils_1.when('predicate.description is accessed', () => {
test_utils_1.then('it should evaluate to a description', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.description).toBe('should not be less than or equal 10');
}));
});
test_utils_1.when('predicate.test() is called', () => {
test_utils_1.then('it should return true', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test(11)).toBe(true);
expect(predicate.test(NaN)).toBe(true);
}));
test_utils_1.then('it should return false', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
expect(predicate.test(9)).toBe(false);
expect(predicate.test(10)).toBe(false);
}));
});
});
//# sourceMappingURL=predicate.test.js.map