Skip to content
This repository was archived by the owner on Nov 15, 2022. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions bower.json
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
{
"name": "angular-word-cloud",
"version": "0.1.3",
"version": "0.1.4",
"main": "./build/angular-word-cloud.min.js",
"ignore": [
"**/.*",
"node_modules",
"components"
],
"dependencies": {
"angular": "~1.2.0"
"angular": "1.2.9"
},
"devDependencies": {
"angular-mocks": "*",
"angular-scenario": "*"
"angular-mocks": "1.2.9",
"angular-scenario": "1.2.9"
}
}
7 changes: 5 additions & 2 deletions build/angular-word-cloud.js
Original file line number Diff line number Diff line change
Expand Up @@ -68,11 +68,14 @@ angular.module('vr.directives.wordCloud',[])
words = [];
}

words = words.map(function(e) { return {word: e.word, size: e.size, rawSize: parseFloat(e.size) }; });
words = words.map(function(e) {
e.rawSize = parseFloat(e.size);
return e;
});

scope.mywords = words;
};

};
scope.fontSize = function(size) {
if((''+size).search("(px|em|in|cm|mm|ex|pt|pc|%)+") == -1) {
return size+'em';
Expand Down
4 changes: 2 additions & 2 deletions build/angular-word-cloud.min.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 6 additions & 2 deletions example.html
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
<div id='container' ng-controller="MainCtrl">
<h3>List</h3>
<word-cloud words='words' ng-click='clickMe1' type='list' sort='{{ sort1 }}'>
<button type="button" ng-click="clickFn(word.word)">{{ word.word }}</button>
<button type="button" ng-click="clickFn(word.word)">{{ word.word }}({{word.custom}})</button>
</word-cloud>
<br /><br />
<div>Clicked word: <span ng-bind='word1' ng-init="word1 = ''"></span></div>
Expand Down Expand Up @@ -63,7 +63,11 @@ <h3>Data</h3>
var doc = null;
angular.module('ExampleApp', ['vr.directives.wordCloud'])
.controller('MainCtrl', ['$scope', function($scope) {
$scope.words = [ {word:'one',size: '16px'}, {word:'two',size:'13px'}, {word:'three',size:'20px'} ];
$scope.words = [
{word:'one',size: '16px',custom:'I'},
{word:'two',size:'13px',custom:'II'},
{word:'three',size:'20px',custom:'III'}
];
$scope.clickMe1 = function(word) {
return $scope.word1 = word;
};
Expand Down
7 changes: 5 additions & 2 deletions src/angular-word-cloud.js
Original file line number Diff line number Diff line change
Expand Up @@ -68,11 +68,14 @@ angular.module('vr.directives.wordCloud',[])
words = [];
}

words = words.map(function(e) { return {word: e.word, size: e.size, rawSize: parseFloat(e.size) }; });
words = words.map(function(e) {
e.rawSize = parseFloat(e.size);
return e;
});

scope.mywords = words;
};

};
scope.fontSize = function(size) {
if((''+size).search("(px|em|in|cm|mm|ex|pt|pc|%)+") == -1) {
return size+'em';
Expand Down
56 changes: 42 additions & 14 deletions test/angularWordCloudTest.js
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,12 @@ describe("Word Cloud Directive", function() {
});

it('should add the elements to the dom', function() {
expect(element).toBeTag('DIV');
expect(element).toHaveClass('word-cloud-group');
// expect(element).toBeTag('DIV');
expect(element.hasClass('word-cloud-group')).toBeTruthy();

var words = element.find('span');
expect(words.length).toBe(3);
expect(words.eq(0)).toHaveClass('word-cloud-group-item');
expect(words.eq(0).hasClass('word-cloud-group-item')).toBeTruthy();
expect(words.eq(0).attr('style')).toBe(undefined);
expect(words.eq(0).find('a').text()).toBe('one');
expect(words.eq(1).find('a').text()).toBe('two');
Expand Down Expand Up @@ -93,6 +93,33 @@ describe("Word Cloud Directive", function() {

describe('with an array', function() {

describe('using custom properties', function() {
beforeEach(function() {
$rootScope.words = [
{word:'one',size:1, custom: 'value one'},
{word:'two',size:3, custom: 'value two'},
{word:'three',size:2, custom: 'value three'}
];

/*jshint quotmark: double */
element = $compile(
"<word-cloud words='words' type='list'>" +
"<p>" +
"{{ word.word }}-{{ word.custom }}" +
"</p>" +
"</word-cloud>")($rootScope);

$rootScope.$digest();
});

it('should use ', function() {
var buttons = element.find('span');
expect(buttons.eq(0).find('p').text()).toBe('one-value one');
expect(buttons.eq(1).find('p').text()).toBe('two-value two');
expect(buttons.eq(2).find('p').text()).toBe('three-value three');
});
});

describe('using integer sizes', function() {

beforeEach(function() {
Expand All @@ -115,8 +142,8 @@ describe("Word Cloud Directive", function() {

it('should not set the size of the buttons individually', function() {
//expect(element.find('span').eq(0).css('font-size')).not.toBeOneOf(['1em','16px']);
expect(element.find('span').eq(1).css('font-size')).not.toBeOneOf(['3em','48px']);
expect(element.find('span').eq(2).css('font-size')).not.toBeOneOf(['2em','32px']);
expect(['3em','48px'].indexOf(element.find('span').eq(1).css('font-size')) === -1);
expect(['2em','32px'].indexOf(element.find('span').eq(2).css('font-size')) === -1);
});

});
Expand Down Expand Up @@ -179,15 +206,16 @@ describe("Word Cloud Directive", function() {

it('should keep the words in the order they came in', function() {
var buttons = element.find('span');
expect(buttons.length).toBe(3);
expect(buttons.eq(0).find('p').text()).toBe('one');
expect(buttons.eq(1).find('p').text()).toBe('two');
expect(buttons.eq(2).find('p').text()).toBe('three');
});

it('should set the size of the buttons individually', function() {
expect(element.find('span').eq(0).css('font-size')).toBeOneOf(['1em','16px']);
expect(element.find('span').eq(1).css('font-size')).toBeOneOf(['3em','48px']);
expect(element.find('span').eq(2).css('font-size')).toBeOneOf(['2em','32px']);
expect(['1em','16px'].indexOf(element.find('span').eq(0).css('font-size')) !== -1);
expect(['3em','48px'].indexOf(element.find('span').eq(1).css('font-size')) !== -1);
expect(['2em','32px'].indexOf(element.find('span').eq(2).css('font-size')) !== -1);
});

});
Expand All @@ -207,9 +235,9 @@ describe("Word Cloud Directive", function() {
});

it('should set the size of the buttons individually', function() {
expect(element.find('span').eq(0).css('font-size')).toBeOneOf(['1em','16px']);
expect(element.find('span').eq(1).css('font-size')).toBeOneOf(['2em','32px']);
expect(element.find('span').eq(2).css('font-size')).toBeOneOf(['3em','48px']);
expect(['1em','16px'].indexOf(element.find('span').eq(0).css('font-size')) !== -1);
expect(['2em','32px'].indexOf(element.find('span').eq(1).css('font-size')) !== -1);
expect(['3em','48px'].indexOf(element.find('span').eq(2).css('font-size')) !== -1);
});

});
Expand All @@ -229,9 +257,9 @@ describe("Word Cloud Directive", function() {
});

it('should set the size of the buttons individually', function() {
expect(element.find('span').eq(0).css('font-size')).toBeOneOf(['3em','48px']);
expect(element.find('span').eq(1).css('font-size')).toBeOneOf(['2em','32px']);
expect(element.find('span').eq(2).css('font-size')).toBeOneOf(['1em','16px']);
expect(['3em','48px'].indexOf(element.find('span').eq(0).css('font-size')) !== -1);
expect(['2em','32px'].indexOf(element.find('span').eq(1).css('font-size')) !== -1);
expect(['1em','16px'].indexOf(element.find('span').eq(2).css('font-size')) !== -1);
});

});
Expand Down
29 changes: 0 additions & 29 deletions test/helpers.js

This file was deleted.