Home Manual Reference Source Test Repository

client/searching/rawsearch.spec.js

define(function () {
	mocha.setup('bdd'); 
	/** @test {InternalOpenGateAPI#rawSearchBuilder} */
	describe('Check funcionality newRawSearch module:', function(){
		it('Create new RawSearch object', function(){
			assert.isDefined(ogapi.rawSearchBuilder());
		});
		
		/** @test {InternalOpenGateAPI#rawSearchBuilder} */
		it('Set string parameter and get filter', function(){
			var filter = { "filter": { "and": [{ "like": { "entityId": "0000000000000001" } }] } };
			assert.isDefined(ogapi.rawSearchBuilder().filter(filter).from("").build()._filter());
		});

		/** @test {InternalOpenGateAPI#rawSearchBuilder} */
		it('Set string parameter and check filter', function(){
			var filter = {"filter":{"and": [{"like": {"entityId": "0000000000000001"}}]}};
			var rawSearch = ogapi.rawSearchBuilder().from("").filter(filter).build();
			var filterContainer = rawSearch._filter();
			assert.strictEqual(filterContainer.filter, filter);
		});

		/** @test {InternalOpenGateAPI#rawSearchBuilder} */
		it('Set custom url and check', function(){
			var rawSearch = ogapi.rawSearchBuilder().from("/test/resource").build();
			var resource = rawSearch._resource;
			assert.strictEqual(resource, "search/test/resource");
		});

		/** @test {InternalOpenGateAPI#rawSearchBuilder} */
		it('Url is mandatory field', function(){
			assert.throws(function(){ogapi.rawSearchBuilder().from();},"Url parameter is mandatory and must be a string");
			
		});

		/** @test {InternalOpenGateAPI#rawSearchBuilder} */
		it('Url is mandatory field on build', function(){
			assert.throws(function(){ogapi.rawSearchBuilder().build();},"Url parameter is mandatory and must be a string");
			
		});
        /** @test {InternalOpenGateAPI#rawSearchBuilder} */
        it('Set string parameter, check filter and limit', function(){
            var filter = {};
            var limit = {"start":1, "size":1000};
            var rawSearch = ogapi.rawSearchBuilder().from("/catalog/hardwares").filter(filter).limit(limit).build();
            var filterContainer = rawSearch._filter();
			assert.strictEqual(filterContainer.filter, filter);
			assert.strictEqual(filterContainer.limit, limit);
        });

	});
});