Add asymmetric equality tester to match a string against a regexp

- Also move the asymmetric testers into their own dir for easier
  locating.

[#58120558] Fix #243
This commit is contained in:
slackersoft
2014-12-19 12:36:33 -08:00
parent 2472982fe9
commit dfa8a77dc3
11 changed files with 134 additions and 74 deletions

View File

@@ -0,0 +1,16 @@
getJasmineRequireObj().StringMatching = function(j$) {
function StringMatching(expected) {
if (!j$.isString_(expected) && !j$.isA_('RegExp', expected)) {
throw new Error('Expected is not a String or a RegExp');
}
this.regexp = new RegExp(expected);
}
StringMatching.prototype.asymmetricMatch = function(other) {
return this.regexp.test(other);
};
return StringMatching;
};

View File

@@ -53,6 +53,10 @@ getJasmineRequireObj().base = function(j$, jasmineGlobal) {
return new j$.ObjectContaining(sample);
};
j$.stringMatching = function(expected) {
return new j$.StringMatching(expected);
};
j$.createSpy = function(name, originalFn) {
var spyStrategy = new j$.SpyStrategy({

View File

@@ -36,6 +36,7 @@ getJasmineRequireObj = (function (jasmineGlobal) {
j$.Spec = jRequire.Spec(j$);
j$.SpyRegistry = jRequire.SpyRegistry(j$);
j$.SpyStrategy = jRequire.SpyStrategy();
j$.StringMatching = jRequire.StringMatching(j$);
j$.Suite = jRequire.Suite();
j$.Timer = jRequire.Timer();
j$.version = jRequire.version();