Initial commit
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
var Backbone = require('backbone');
|
||||
var NodeGeometryTracker = require('builder/node-geometry-tracker');
|
||||
|
||||
describe('NodeGeometryTracker.track', function () {
|
||||
beforeEach(function () {
|
||||
this.layerDefinitionsCollection = new Backbone.Collection([
|
||||
{
|
||||
source: 'a0',
|
||||
id: 'l1'
|
||||
}
|
||||
]);
|
||||
this.analysisDefinitionNodesCollection = new Backbone.Collection([
|
||||
{
|
||||
id: 'a0'
|
||||
}
|
||||
]);
|
||||
this.analysisDefinitionsCollection = new Backbone.Collection();
|
||||
this.analysisDefinitionsCollection.saveAnalysisForLayer = function () {};
|
||||
spyOn(this.analysisDefinitionsCollection, 'saveAnalysisForLayer');
|
||||
|
||||
NodeGeometryTracker.track({
|
||||
layerDefinitionsCollection: this.layerDefinitionsCollection,
|
||||
analysisDefinitionNodesCollection: this.analysisDefinitionNodesCollection,
|
||||
analysisDefinitionsCollection: this.analysisDefinitionsCollection
|
||||
});
|
||||
});
|
||||
|
||||
it('should save analysis if node geometry changes', function () {
|
||||
var nodeDefModel = this.analysisDefinitionNodesCollection.at(0);
|
||||
var layerDefModel = this.layerDefinitionsCollection.at(0);
|
||||
nodeDefModel.set('simple_geom', 'line');
|
||||
expect(this.analysisDefinitionsCollection.saveAnalysisForLayer).toHaveBeenCalledWith(layerDefModel);
|
||||
});
|
||||
|
||||
it('should not save analysis for the layer if node is source type', function () {
|
||||
var nodeDefModel = this.analysisDefinitionNodesCollection.at(0);
|
||||
var layerDefModel = this.layerDefinitionsCollection.at(0);
|
||||
nodeDefModel.set({
|
||||
simple_geom: 'line',
|
||||
table_name: 'hello-kitty'
|
||||
});
|
||||
expect(this.analysisDefinitionsCollection.saveAnalysisForLayer).not.toHaveBeenCalledWith(layerDefModel);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user