Fix getFullName on spec.
- Fixes specFiltering on nested specs
This commit is contained in:
@@ -1,7 +1,5 @@
|
||||
describe("Clock", function() {
|
||||
|
||||
// TODO: fullName/SpecFilter is broken, so don't nest describes you want to filter
|
||||
|
||||
it("calls the global setTimeout directly if Clock is not installed", function() {
|
||||
var setTimeout = jasmine.createSpy('setTimeout'),
|
||||
delayedFunctionScheduler = jasmine.createSpyObj('delayedFunctionScheduler', ['scheduleFunction']),
|
||||
|
||||
@@ -158,7 +158,7 @@ describe("jasmine.Env", function() {
|
||||
});
|
||||
});
|
||||
|
||||
describe("jasmine Env", function() {
|
||||
describe("jasmine Env (integration)", function() {
|
||||
|
||||
it("Mock clock can be installed and used in tests", function() {
|
||||
var setTimeout = jasmine.createSpy('setTimeout'),
|
||||
@@ -186,4 +186,28 @@ describe("jasmine Env", function() {
|
||||
expect(setTimeout).toHaveBeenCalledWith(globalTimeoutFn, 100);
|
||||
});
|
||||
|
||||
it("should be possible to get full name from a spec", function() {
|
||||
var env = new jasmine.Env({global: { setTimeout: setTimeout }}),
|
||||
topLevelSpec, nestedSpec, doublyNestedSpec;
|
||||
|
||||
env.describe("my tests", function() {
|
||||
topLevelSpec = env.it("are sometimes top level", function() {
|
||||
});
|
||||
env.describe("are sometimes", function() {
|
||||
nestedSpec = env.it("singly nested", function() {
|
||||
|
||||
});
|
||||
env.describe("even", function() {
|
||||
doublyNestedSpec = env.it("doubly nested", function() {
|
||||
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
env.execute();
|
||||
expect(topLevelSpec.getFullName()).toBe("my tests are sometimes top level.");
|
||||
expect(nestedSpec.getFullName()).toBe("my tests are sometimes singly nested.");
|
||||
expect(doublyNestedSpec.getFullName()).toBe("my tests are sometimes even doubly nested.");
|
||||
});
|
||||
});
|
||||
|
||||
@@ -166,10 +166,8 @@ describe("Spec (real-ish unit tests)", function() {
|
||||
});
|
||||
|
||||
it("can return its full name", function() {
|
||||
//TODO: not convinced that a spec should provide this as part of its public interface, but adding temporarily
|
||||
//until we fix the reporting
|
||||
var spec = new jasmine.Spec({
|
||||
fullNameFactory: function(passedVal) {
|
||||
getSpecName: function(passedVal) {
|
||||
expect(passedVal).toBe(spec);
|
||||
return 'expected val';
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user