diff --git a/package.json b/package.json index d86dcba..56ec46e 100644 --- a/package.json +++ b/package.json @@ -15,7 +15,7 @@ "test": "tests" }, "scripts": { - "postinstall": "bower install", + "postinstall": "", "prestart": "npm install", "dev": "webpack-dev-server -d --progress", "start": "webpack-dev-server", @@ -36,6 +36,8 @@ "angular": "^1.4.9", "angular-animate": "^1.5.0", "angular-dragdrop": "^1.0.13", + "angulartics": "^1.0.3", + "angulartics-google-analytics": "^0.1.4", "bootstrap": "^3.3.6", "chai": "^3.5.0", "fastclick": "^1.0.6", @@ -47,6 +49,7 @@ "lodash": "^4.5.1" }, "devDependencies": { + "angular-mocks": "^1.5.0", "autoprefixer": "^6.3.3", "babel-core": "^6.5.2", "babel-loader": "^6.2.4", @@ -77,6 +80,9 @@ "karma-chrome-launcher": "^0.2.2", "karma-firefox-launcher": "^0.1.7", "karma-jasmine": "^0.3.7", + "karma-junit-reporter": "^0.3.8", + "karma-sourcemap-loader": "^0.3.7", + "karma-webpack": "^1.7.0", "ng-html2js": "^2.0.0", "path": "^0.12.7", "protractor": "^3.1.1", diff --git a/src/assets/browserconfig.xml b/src/assets/browserconfig.xml new file mode 100644 index 0000000..c554148 --- /dev/null +++ b/src/assets/browserconfig.xml @@ -0,0 +1,2 @@ + +#ffffff \ No newline at end of file diff --git a/src/assets/favicon.ico b/src/assets/favicon.ico index 79e405c..8d16734 100644 Binary files a/src/assets/favicon.ico and b/src/assets/favicon.ico differ diff --git a/src/assets/favicon.png b/src/assets/favicon.png index 7da6019..3a54690 100644 Binary files a/src/assets/favicon.png and b/src/assets/favicon.png differ diff --git a/src/assets/favicon.svg b/src/assets/favicon.svg new file mode 100644 index 0000000..5be0722 --- /dev/null +++ b/src/assets/favicon.svg @@ -0,0 +1,119 @@ + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/assets/favicon_color.png b/src/assets/favicon_color.png new file mode 100644 index 0000000..2d444ef Binary files /dev/null and b/src/assets/favicon_color.png differ diff --git a/src/assets/favicons/android-icon-144x144.png b/src/assets/favicons/android-icon-144x144.png new file mode 100644 index 0000000..ef93f2e Binary files /dev/null and b/src/assets/favicons/android-icon-144x144.png differ diff --git a/src/assets/favicons/android-icon-192x192.png b/src/assets/favicons/android-icon-192x192.png new file mode 100644 index 0000000..20ec182 Binary files /dev/null and b/src/assets/favicons/android-icon-192x192.png differ diff --git a/src/assets/favicons/android-icon-36x36.png b/src/assets/favicons/android-icon-36x36.png new file mode 100644 index 0000000..31c8401 Binary files /dev/null and b/src/assets/favicons/android-icon-36x36.png differ diff --git a/src/assets/favicons/android-icon-48x48.png b/src/assets/favicons/android-icon-48x48.png new file mode 100644 index 0000000..8455b68 Binary files /dev/null and b/src/assets/favicons/android-icon-48x48.png differ diff --git a/src/assets/favicons/android-icon-72x72.png b/src/assets/favicons/android-icon-72x72.png new file mode 100644 index 0000000..e5b3eae Binary files /dev/null and b/src/assets/favicons/android-icon-72x72.png differ diff --git a/src/assets/favicons/android-icon-96x96.png b/src/assets/favicons/android-icon-96x96.png new file mode 100644 index 0000000..6830b66 Binary files /dev/null and b/src/assets/favicons/android-icon-96x96.png differ diff --git a/src/assets/favicons/apple-icon-114x114.png b/src/assets/favicons/apple-icon-114x114.png new file mode 100644 index 0000000..492ecf6 Binary files /dev/null and b/src/assets/favicons/apple-icon-114x114.png differ diff --git a/src/assets/favicons/apple-icon-120x120.png b/src/assets/favicons/apple-icon-120x120.png new file mode 100644 index 0000000..52a93af Binary files /dev/null and b/src/assets/favicons/apple-icon-120x120.png differ diff --git a/src/assets/favicons/apple-icon-144x144.png b/src/assets/favicons/apple-icon-144x144.png new file mode 100644 index 0000000..ef93f2e Binary files /dev/null and b/src/assets/favicons/apple-icon-144x144.png differ diff --git a/src/assets/favicons/apple-icon-152x152.png b/src/assets/favicons/apple-icon-152x152.png new file mode 100644 index 0000000..fd32235 Binary files /dev/null and b/src/assets/favicons/apple-icon-152x152.png differ diff --git a/src/assets/favicons/apple-icon-180x180.png b/src/assets/favicons/apple-icon-180x180.png new file mode 100644 index 0000000..26d62fa Binary files /dev/null and b/src/assets/favicons/apple-icon-180x180.png differ diff --git a/src/assets/favicons/apple-icon-57x57.png b/src/assets/favicons/apple-icon-57x57.png new file mode 100644 index 0000000..2bab8de Binary files /dev/null and b/src/assets/favicons/apple-icon-57x57.png differ diff --git a/src/assets/favicons/apple-icon-60x60.png b/src/assets/favicons/apple-icon-60x60.png new file mode 100644 index 0000000..d90bf3b Binary files /dev/null and b/src/assets/favicons/apple-icon-60x60.png differ diff --git a/src/assets/favicons/apple-icon-72x72.png b/src/assets/favicons/apple-icon-72x72.png new file mode 100644 index 0000000..e5b3eae Binary files /dev/null and b/src/assets/favicons/apple-icon-72x72.png differ diff --git a/src/assets/favicons/apple-icon-76x76.png b/src/assets/favicons/apple-icon-76x76.png new file mode 100644 index 0000000..632d64e Binary files /dev/null and b/src/assets/favicons/apple-icon-76x76.png differ diff --git a/src/assets/favicons/apple-icon-precomposed.png b/src/assets/favicons/apple-icon-precomposed.png new file mode 100644 index 0000000..342cfb3 Binary files /dev/null and b/src/assets/favicons/apple-icon-precomposed.png differ diff --git a/src/assets/favicons/apple-icon.png b/src/assets/favicons/apple-icon.png new file mode 100644 index 0000000..342cfb3 Binary files /dev/null and b/src/assets/favicons/apple-icon.png differ diff --git a/src/assets/favicons/favicon-16x16.png b/src/assets/favicons/favicon-16x16.png new file mode 100644 index 0000000..be94000 Binary files /dev/null and b/src/assets/favicons/favicon-16x16.png differ diff --git a/src/assets/favicons/favicon-32x32.png b/src/assets/favicons/favicon-32x32.png new file mode 100644 index 0000000..f2e4344 Binary files /dev/null and b/src/assets/favicons/favicon-32x32.png differ diff --git a/src/assets/favicons/favicon-96x96.png b/src/assets/favicons/favicon-96x96.png new file mode 100644 index 0000000..6830b66 Binary files /dev/null and b/src/assets/favicons/favicon-96x96.png differ diff --git a/src/assets/favicons/ms-icon-144x144.png b/src/assets/favicons/ms-icon-144x144.png new file mode 100644 index 0000000..ef93f2e Binary files /dev/null and b/src/assets/favicons/ms-icon-144x144.png differ diff --git a/src/assets/favicons/ms-icon-150x150.png b/src/assets/favicons/ms-icon-150x150.png new file mode 100644 index 0000000..25b21ae Binary files /dev/null and b/src/assets/favicons/ms-icon-150x150.png differ diff --git a/src/assets/favicons/ms-icon-310x310.png b/src/assets/favicons/ms-icon-310x310.png new file mode 100644 index 0000000..e2a95a3 Binary files /dev/null and b/src/assets/favicons/ms-icon-310x310.png differ diff --git a/src/assets/favicons/ms-icon-70x70.png b/src/assets/favicons/ms-icon-70x70.png new file mode 100644 index 0000000..6ec32f9 Binary files /dev/null and b/src/assets/favicons/ms-icon-70x70.png differ diff --git a/src/assets/icons/png/BBbar.png b/src/assets/icons/png/BBbar.png deleted file mode 100644 index 95be602..0000000 Binary files a/src/assets/icons/png/BBbar.png and /dev/null differ diff --git a/src/assets/icons/png/BBbar@2x.png b/src/assets/icons/png/BBbar@2x.png deleted file mode 100644 index 272c964..0000000 Binary files a/src/assets/icons/png/BBbar@2x.png and /dev/null differ diff --git a/src/assets/icons/png/CPV.png b/src/assets/icons/png/CPV.png deleted file mode 100644 index f13aee1..0000000 Binary files a/src/assets/icons/png/CPV.png and /dev/null differ diff --git a/src/assets/icons/png/CPV@2x.png b/src/assets/icons/png/CPV@2x.png deleted file mode 100644 index 7addbed..0000000 Binary files a/src/assets/icons/png/CPV@2x.png and /dev/null differ diff --git a/src/assets/icons/png/Dstar_s.png b/src/assets/icons/png/Dstar_s.png deleted file mode 100644 index cc03f33..0000000 Binary files a/src/assets/icons/png/Dstar_s.png and /dev/null differ diff --git a/src/assets/icons/png/Dstar_s@2x.png b/src/assets/icons/png/Dstar_s@2x.png deleted file mode 100644 index 691f897..0000000 Binary files a/src/assets/icons/png/Dstar_s@2x.png and /dev/null differ diff --git a/src/assets/icons/png/H.png b/src/assets/icons/png/H.png deleted file mode 100644 index 7a59746..0000000 Binary files a/src/assets/icons/png/H.png and /dev/null differ diff --git a/src/assets/icons/png/H@2x.png b/src/assets/icons/png/H@2x.png deleted file mode 100644 index 9c2f027..0000000 Binary files a/src/assets/icons/png/H@2x.png and /dev/null differ diff --git a/src/assets/icons/png/Jpsi.png b/src/assets/icons/png/Jpsi.png deleted file mode 100644 index 785cc26..0000000 Binary files a/src/assets/icons/png/Jpsi.png and /dev/null differ diff --git a/src/assets/icons/png/Jpsi@2x.png b/src/assets/icons/png/Jpsi@2x.png deleted file mode 100644 index 3125c41..0000000 Binary files a/src/assets/icons/png/Jpsi@2x.png and /dev/null differ diff --git a/src/assets/icons/png/Xi_b.png b/src/assets/icons/png/Xi_b.png deleted file mode 100644 index 10c6e05..0000000 Binary files a/src/assets/icons/png/Xi_b.png and /dev/null differ diff --git a/src/assets/icons/png/Xi_b@2x.png b/src/assets/icons/png/Xi_b@2x.png deleted file mode 100644 index 0daa344..0000000 Binary files a/src/assets/icons/png/Xi_b@2x.png and /dev/null differ diff --git a/src/assets/icons/png/b.png b/src/assets/icons/png/b.png deleted file mode 100644 index ebeb63c..0000000 Binary files a/src/assets/icons/png/b.png and /dev/null differ diff --git a/src/assets/icons/png/b@2x.png b/src/assets/icons/png/b@2x.png deleted file mode 100644 index 8a0a199..0000000 Binary files a/src/assets/icons/png/b@2x.png and /dev/null differ diff --git a/src/assets/icons/png/gluons.png b/src/assets/icons/png/gluons.png deleted file mode 100644 index 82e08bc..0000000 Binary files a/src/assets/icons/png/gluons.png and /dev/null differ diff --git a/src/assets/icons/png/gluons@2x.png b/src/assets/icons/png/gluons@2x.png deleted file mode 100644 index 9810ef2..0000000 Binary files a/src/assets/icons/png/gluons@2x.png and /dev/null differ diff --git a/src/assets/icons/png/t.png b/src/assets/icons/png/t.png deleted file mode 100644 index 04a58a2..0000000 Binary files a/src/assets/icons/png/t.png and /dev/null differ diff --git a/src/assets/icons/png/t@2x.png b/src/assets/icons/png/t@2x.png deleted file mode 100644 index 8f26264..0000000 Binary files a/src/assets/icons/png/t@2x.png and /dev/null differ diff --git a/src/assets/icons/png/tau.png b/src/assets/icons/png/tau.png deleted file mode 100644 index b468a68..0000000 Binary files a/src/assets/icons/png/tau.png and /dev/null differ diff --git a/src/assets/icons/png/tau@2x.png b/src/assets/icons/png/tau@2x.png deleted file mode 100644 index 1ad34d5..0000000 Binary files a/src/assets/icons/png/tau@2x.png and /dev/null differ diff --git a/src/assets/icons/png/unknown.png b/src/assets/icons/png/unknown.png deleted file mode 100644 index 1ce5f8c..0000000 Binary files a/src/assets/icons/png/unknown.png and /dev/null differ diff --git a/src/assets/icons/png/unknown@2x.png b/src/assets/icons/png/unknown@2x.png deleted file mode 100644 index 0947e3f..0000000 Binary files a/src/assets/icons/png/unknown@2x.png and /dev/null differ diff --git a/src/assets/icons/png/weak.png b/src/assets/icons/png/weak.png deleted file mode 100644 index 5a5f429..0000000 Binary files a/src/assets/icons/png/weak.png and /dev/null differ diff --git a/src/assets/icons/png/weak@2x.png b/src/assets/icons/png/weak@2x.png deleted file mode 100644 index 82cadc3..0000000 Binary files a/src/assets/icons/png/weak@2x.png and /dev/null differ diff --git a/src/assets/icons/svg/BBbar.svg b/src/assets/icons/svg/BBbar.svg deleted file mode 100644 index 74bca0b..0000000 --- a/src/assets/icons/svg/BBbar.svg +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - B - diff --git a/src/assets/icons/svg/CPV.svg b/src/assets/icons/svg/CPV.svg deleted file mode 100644 index aeb2ba2..0000000 --- a/src/assets/icons/svg/CPV.svg +++ /dev/null @@ -1,121 +0,0 @@ - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - CP - - diff --git a/src/assets/icons/svg/Dstar_s.svg b/src/assets/icons/svg/Dstar_s.svg deleted file mode 100644 index 2a7b5d9..0000000 --- a/src/assets/icons/svg/Dstar_s.svg +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - Ds*- - diff --git a/src/assets/icons/svg/H.svg b/src/assets/icons/svg/H.svg deleted file mode 100644 index 821829f..0000000 --- a/src/assets/icons/svg/H.svg +++ /dev/null @@ -1,88 +0,0 @@ - - - - - - - - - - - - image/svg+xml - - - - - - - - H - diff --git a/src/assets/icons/svg/Jpsi.svg b/src/assets/icons/svg/Jpsi.svg deleted file mode 100644 index 19e0b85..0000000 --- a/src/assets/icons/svg/Jpsi.svg +++ /dev/null @@ -1,100 +0,0 @@ - - - - - - - - - - - - image/svg+xml - - - - - - - - cc _ - - diff --git a/src/assets/icons/svg/Xi_b.svg b/src/assets/icons/svg/Xi_b.svg deleted file mode 100644 index 183b284..0000000 --- a/src/assets/icons/svg/Xi_b.svg +++ /dev/null @@ -1,155 +0,0 @@ - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - Ξb - Ξb *- - ' - - diff --git a/src/assets/icons/svg/b.svg b/src/assets/icons/svg/b.svg deleted file mode 100644 index 7855ccb..0000000 --- a/src/assets/icons/svg/b.svg +++ /dev/null @@ -1,88 +0,0 @@ - - - - - - - - - - - - image/svg+xml - - - - - - - - b - diff --git a/src/assets/icons/svg/gluons.svg b/src/assets/icons/svg/gluons.svg deleted file mode 100644 index 0d01945..0000000 --- a/src/assets/icons/svg/gluons.svg +++ /dev/null @@ -1,273 +0,0 @@ - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - g1 g2 g3 g4 g5 g6 g7 g8 - diff --git a/src/assets/icons/svg/t.svg b/src/assets/icons/svg/t.svg deleted file mode 100644 index 0119855..0000000 --- a/src/assets/icons/svg/t.svg +++ /dev/null @@ -1,88 +0,0 @@ - - - - - - - - - - - - image/svg+xml - - - - - - - - t - diff --git a/src/assets/icons/svg/tau.svg b/src/assets/icons/svg/tau.svg deleted file mode 100644 index 661b307..0000000 --- a/src/assets/icons/svg/tau.svg +++ /dev/null @@ -1,88 +0,0 @@ - - - - - - - - - - - - image/svg+xml - - - - - - - - τ - diff --git a/src/assets/icons/svg/unknown.svg b/src/assets/icons/svg/unknown.svg deleted file mode 100644 index a3990b5..0000000 --- a/src/assets/icons/svg/unknown.svg +++ /dev/null @@ -1,88 +0,0 @@ - - - - - - - - - - - - image/svg+xml - - - - - - - - ? - diff --git a/src/assets/icons/svg/weak.svg b/src/assets/icons/svg/weak.svg deleted file mode 100644 index 70bdd3d..0000000 --- a/src/assets/icons/svg/weak.svg +++ /dev/null @@ -1,152 +0,0 @@ - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - Z0 - W± - diff --git a/src/assets/info/b.png b/src/assets/info/b.png deleted file mode 100644 index 8314d94..0000000 Binary files a/src/assets/info/b.png and /dev/null differ diff --git a/src/assets/info/cpv.png b/src/assets/info/cpv.png deleted file mode 100644 index a7cce3c..0000000 Binary files a/src/assets/info/cpv.png and /dev/null differ diff --git a/src/assets/info/jpsi.png b/src/assets/info/jpsi.png deleted file mode 100644 index ced44c3..0000000 Binary files a/src/assets/info/jpsi.png and /dev/null differ diff --git a/src/assets/info/t.png b/src/assets/info/t.png deleted file mode 100644 index 8c95d32..0000000 Binary files a/src/assets/info/t.png and /dev/null differ diff --git a/src/assets/info/tau.png b/src/assets/info/tau.png deleted file mode 100644 index 0a717fc..0000000 Binary files a/src/assets/info/tau.png and /dev/null differ diff --git a/src/assets/info/w.png b/src/assets/info/w.png deleted file mode 100644 index 624a6fc..0000000 Binary files a/src/assets/info/w.png and /dev/null differ diff --git a/src/assets/mobile/flame-icon.svg b/src/assets/mobile/flame-icon.svg deleted file mode 100644 index f13923c..0000000 --- a/src/assets/mobile/flame-icon.svg +++ /dev/null @@ -1,185 +0,0 @@ - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/assets/mobile/icon-72.png b/src/assets/mobile/icon-72.png deleted file mode 100644 index b5d6065..0000000 Binary files a/src/assets/mobile/icon-72.png and /dev/null differ diff --git a/src/assets/mobile/icon-72@2x.png b/src/assets/mobile/icon-72@2x.png deleted file mode 100644 index ba81708..0000000 Binary files a/src/assets/mobile/icon-72@2x.png and /dev/null differ diff --git a/src/assets/mobile/icon.png b/src/assets/mobile/icon.png deleted file mode 100644 index c5febd5..0000000 Binary files a/src/assets/mobile/icon.png and /dev/null differ diff --git a/src/assets/mobile/icon@2x.png b/src/assets/mobile/icon@2x.png deleted file mode 100644 index 646c515..0000000 Binary files a/src/assets/mobile/icon@2x.png and /dev/null differ diff --git a/src/assets/mobile/original.png b/src/assets/mobile/original.png deleted file mode 100644 index f08fb73..0000000 Binary files a/src/assets/mobile/original.png and /dev/null differ diff --git a/src/assets/pc32.png b/src/assets/pc32.png deleted file mode 100644 index 7da6019..0000000 Binary files a/src/assets/pc32.png and /dev/null differ diff --git a/src/assets/pc32@2x.png b/src/assets/pc32@2x.png deleted file mode 100644 index 97d81cf..0000000 Binary files a/src/assets/pc32@2x.png and /dev/null differ diff --git a/src/assets/pc32sw.png b/src/assets/pc32sw.png deleted file mode 100644 index dc39240..0000000 Binary files a/src/assets/pc32sw.png and /dev/null differ diff --git a/src/assets/pc32sw@2x.png b/src/assets/pc32sw@2x.png deleted file mode 100644 index 142eda3..0000000 Binary files a/src/assets/pc32sw@2x.png and /dev/null differ diff --git a/src/css/style.css b/src/css/style.css index bc66eae..8dae561 100644 --- a/src/css/style.css +++ b/src/css/style.css @@ -16,12 +16,12 @@ h1 br { } .pc-icon { - background: url('../assets/pc32sw.png') no-repeat 10px center; + background: url('../assets/favicon.png') no-repeat 10px center; padding-left: 50px; } .pc-icon:hover { - background-image: url('../assets/pc32.png'); + background-image: url('../assets/favicon_color.png'); } #detector { @@ -268,12 +268,12 @@ h1 br { only screen and (min-resolution: 144dpi) { .pc-icon { - background-image: url('../assets/pc32sw@2x.png'); + background-image: url('../assets/favicon.png'); background-size: 32px 32px; } .pc-icon:hover { - background-image: url('../assets/pc32@2x.png'); + background-image: url('../assets/favicon_color.png'); } } diff --git a/src/index.js b/src/index.js index d5de62b..305e874 100644 --- a/src/index.js +++ b/src/index.js @@ -10,9 +10,21 @@ require("css/style.css"); // img require("assets/favicon.png"); -require("assets/mobile/icon.png"); -require("assets/mobile/icon.png"); -require("assets/pc32sw.png"); +require("assets/favicon_color.png"); +require("assets/favicons/apple-icon-57x57.png"); +require("assets/favicons/apple-icon-60x60.png"); +require("assets/favicons/apple-icon-72x72.png"); +require("assets/favicons/apple-icon-76x76.png"); +require("assets/favicons/apple-icon-114x114.png"); +require("assets/favicons/apple-icon-120x120.png"); +require("assets/favicons/apple-icon-144x144.png"); +require("assets/favicons/apple-icon-152x152.png"); +require("assets/favicons/apple-icon-180x180.png"); +require("assets/favicons/android-icon-192x192.png"); +require("assets/favicons/favicon-32x32.png"); +require("assets/favicons/favicon-96x96.png"); +require("assets/favicons/favicon-16x16.png"); +require("assets/favicons/ms-icon-144x144.png"); // json // var cards = require("json/cards.json"); diff --git a/src/index.webpack b/src/index.webpack index 087689b..0bb910c 100644 --- a/src/index.webpack +++ b/src/index.webpack @@ -10,10 +10,23 @@ + + + + + + + + + + + + + + + + - - - @@ -127,9 +140,9 @@
Incorrect cards:
-
+
-
+
- - - - - diff --git a/src/js/analytics.js b/src/js/analytics.js index 976e7d1..dc6d3e3 100644 --- a/src/js/analytics.js +++ b/src/js/analytics.js @@ -1,6 +1,18 @@ /** Custom google analystics events **/ var Helpers = require("js/helpers"); +// google analystics async code +(function (i, s, o, g, r, a, m) { + i['GoogleAnalyticsObject'] = r; + i[r] = i[r] || function () { + (i[r].q = i[r].q || []).push(arguments); + }, i[r].l = 1 * new Date(); + a = s.createElement(o), + m = s.getElementsByTagName(o)[0]; + a.async = 1; + a.src = g; + m.parentNode.insertBefore(a, m); +})(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga'); var analytics = module.exports = { @@ -32,9 +44,13 @@ var analytics = module.exports = return; } - ga('create', Helpers.analytics,'auto'); - ga('set', { 'appName': 'Cards For Science', 'appId': '', 'appVersion': '0.6' }); - ga('set', 'anonymizeIp', true); + // TODO replace with angular analtcs + if(ga){ + ga('create', Helpers.analytics,'auto'); + ga('set', { 'appName': 'Cards For Science', 'appId': '', 'appVersion': '0.6' }); + ga('set', 'anonymizeIp', true); + ga('send','pageview'); + } $('#myModal').on('show.bs.modal', function (e) { @@ -64,8 +80,9 @@ var analytics = module.exports = if (!analytics.enabled || typeof type === 'undefined') { return; } - - ga('send', 'screenview', { 'screenName': type }); + if(ga){ + ga('send', 'screenview', { 'screenName': type }); + } }, sendEvent: function(category, action, label, value) @@ -73,7 +90,8 @@ var analytics = module.exports = if (!analytics.enabled || typeof category === 'undefined' || typeof action === 'undefined' || typeof label === 'undefined' || typeof value === 'undefined') { return; } - - //ga('send', 'event', category, action, label, value, {'screenName': analytics.screens.main }); + if(ga){ + ga('send', 'event', category, action, label, value, {'screenName': analytics.screens.main }); + } } }; diff --git a/src/js/app.js b/src/js/app.js index 0c1af19..211861e 100644 --- a/src/js/app.js +++ b/src/js/app.js @@ -12,6 +12,8 @@ var jqueryCookie = require("js-cookie"); var angular = require("angular"); var angularDragdrop = require("angular-dragdrop"); var angularAnimate = require("angular-animate"); +var angulartics = require('angulartics'); +var angularticsGoogleAnalytics = require('angulartics-google-analytics'); //app var ObjectStorage = require("js/storage"); @@ -24,7 +26,13 @@ var Rules = require("js/rules.js"); var app = (function (Helpers,analytics,Game,Rules) { Helpers.validateSaveVersion(); - var app = angular.module('cardsForScience', ['ngDragDrop','ngAnimate']); + var app = angular.module('cardsForScience', ['ngDragDrop','ngAnimate','angulartics', angularticsGoogleAnalytics]); + + // config + app.config(function ($analyticsProvider) { + $analyticsProvider.firstPageview(true); /* Records pages that don't use $state or $route */ + $analyticsProvider.withAutoBase(true); /* Records full path */ + }); // directives diff --git a/src/js/game.js b/src/js/game.js index a26d53f..b21afb9 100644 --- a/src/js/game.js +++ b/src/js/game.js @@ -1,9 +1,9 @@ /** * Game object load/saves game resources and stores game objects */ -var ObjectStorage = require("js/storage"); -var Helpers = require("js/helpers"); -var GameObjects = require("js/gameobjects"); +var ObjectStorage = require("js/storage.js"); +var Helpers = require("js/helpers.js"); +var GameObjects = require("js/gameobjects.js"); var Rules = require("js/rules.js"); var cards = require("json/cards.json"); var achievements = require("json/achievements.json"); @@ -26,6 +26,8 @@ var Game = module.exports =(function (Helpers, GameObjects, ObjectStorage,Rules, this.lastCards= []; this.incorrectCards= []; + this.rules=Rules.rules; + this.Rule=Rules.Rule; }; Game.prototype.load = function ($http, $q) { diff --git a/src/js/rules.js b/src/js/rules.js index 98c4da0..44c61e6 100644 --- a/src/js/rules.js +++ b/src/js/rules.js @@ -1,9 +1,18 @@ + + + +// polyfill and conditional import so this will load in the browser too +if (!module) module=function(){}; +var chai; +if (!chai){ + chair = require("chai"); +} + /** * Rules objects for game * @param {[type]} function functionName( [description] * @return {[type]} [description] */ -var chai = require("chai"); var Rules = module.exports = (function functionName(_,chai) { @@ -64,12 +73,12 @@ var Rules = module.exports = (function functionName(_,chai) { var reason; try { result = this.ruleFunc(card, lastCards, allCards, this.options); - if (result instanceof chai.Assertion) { + if ((chai&&result instanceof chai.Assertion)||result.name==='Assertion'||result.constructor.name==='Assertion') { reason = result; result = true; } } catch (e) { - if (e instanceof chai.AssertionError) { + if ((chai&&e instanceof chai.AssertionError)||e.name=='AssertionError') { result = false; reason = e; } else { diff --git a/src/json/cards.json b/src/json/cards.json new file mode 100644 index 0000000..1603c53 --- /dev/null +++ b/src/json/cards.json @@ -0,0 +1,1063 @@ +[{ + "key": "🂡", + "name": "Ace", + "value": 1, + "suit": "Spades", + "color": "Black", + "royal": false, + "face": false, + "number": false, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂢", + "name": "Two", + "value": 2, + "suit": "Spades", + "color": "Black", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂣", + "name": "Three", + "value": 3, + "suit": "Spades", + "color": "Black", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂤", + "name": "Four", + "value": 4, + "suit": "Spades", + "color": "Black", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂥", + "name": "Five", + "value": 5, + "suit": "Spades", + "color": "Black", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂦", + "name": "Six", + "value": 6, + "suit": "Spades", + "color": "Black", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂧", + "name": "Seven", + "value": 7, + "suit": "Spades", + "color": "Black", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂨", + "name": "Eight", + "value": 8, + "suit": "Spades", + "color": "Black", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂩", + "name": "Nine", + "value": 9, + "suit": "Spades", + "color": "Black", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂪", + "name": "Ten", + "value": 10, + "suit": "Spades", + "color": "Black", + "royal": false, + "face": true, + "number": true, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂫", + "name": "Jack", + "value": 11, + "suit": "Spades", + "color": "Black", + "royal": true, + "face": true, + "number": false, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂬", + "name": "Knight", + "value": 12, + "suit": "Spades", + "color": "Black", + "royal": true, + "face": true, + "number": false, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂭", + "name": "Queen", + "value": 13, + "suit": "Spades", + "color": "Black", + "royal": true, + "face": true, + "number": false, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂮", + "name": "King", + "value": 14, + "suit": "Spades", + "color": "Black", + "royal": true, + "face": true, + "number": false, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂱", + "name": "Ace", + "value": 1, + "suit": "Hearts", + "color": "Red", + "royal": false, + "face": false, + "number": false, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂲", + "name": "Two", + "value": 2, + "suit": "Hearts", + "color": "Red", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂳", + "name": "Three", + "value": 3, + "suit": "Hearts", + "color": "Red", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂴", + "name": "Four", + "value": 4, + "suit": "Hearts", + "color": "Red", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂵", + "name": "Five", + "value": 5, + "suit": "Hearts", + "color": "Red", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂶", + "name": "Six", + "value": 6, + "suit": "Hearts", + "color": "Red", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂷", + "name": "Seven", + "value": 7, + "suit": "Hearts", + "color": "Red", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂸", + "name": "Eight", + "value": 8, + "suit": "Hearts", + "color": "Red", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂹", + "name": "Nine", + "value": 9, + "suit": "Hearts", + "color": "Red", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂺", + "name": "Ten", + "value": 10, + "suit": "Hearts", + "color": "Red", + "royal": false, + "face": true, + "number": true, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂻", + "name": "Jack", + "value": 11, + "suit": "Hearts", + "color": "Red", + "royal": true, + "face": true, + "number": false, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂼", + "name": "Knight", + "value": 12, + "suit": "Hearts", + "color": "Red", + "royal": true, + "face": true, + "number": false, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂽", + "name": "Queen", + "value": 13, + "suit": "Hearts", + "color": "Red", + "royal": true, + "face": true, + "number": false, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂾", + "name": "King", + "value": 14, + "suit": "Hearts", + "color": "Red", + "royal": true, + "face": true, + "number": false, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃁", + "name": "Ace", + "value": 1, + "suit": "Diamonds", + "color": "Red", + "royal": false, + "face": false, + "number": false, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃂", + "name": "Two", + "value": 2, + "suit": "Diamonds", + "color": "Red", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃃", + "name": "Three", + "value": 3, + "suit": "Diamonds", + "color": "Red", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃄", + "name": "Four", + "value": 4, + "suit": "Diamonds", + "color": "Red", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃅", + "name": "Five", + "value": 5, + "suit": "Diamonds", + "color": "Red", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃆", + "name": "Six", + "value": 6, + "suit": "Diamonds", + "color": "Red", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃇", + "name": "Seven", + "value": 7, + "suit": "Diamonds", + "color": "Red", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃈", + "name": "Eight", + "value": 8, + "suit": "Diamonds", + "color": "Red", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃉", + "name": "Nine", + "value": 9, + "suit": "Diamonds", + "color": "Red", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃊", + "name": "Ten", + "value": 10, + "suit": "Diamonds", + "color": "Red", + "royal": false, + "face": true, + "number": true, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃋", + "name": "Jack", + "value": 11, + "suit": "Diamonds", + "color": "Red", + "royal": true, + "face": true, + "number": false, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃌", + "name": "Knight", + "value": 12, + "suit": "Diamonds", + "color": "Red", + "royal": true, + "face": true, + "number": false, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃍", + "name": "Queen", + "value": 13, + "suit": "Diamonds", + "color": "Red", + "royal": true, + "face": true, + "number": false, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃎", + "name": "King", + "value": 14, + "suit": "Diamonds", + "color": "Red", + "royal": true, + "face": true, + "number": false, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃑", + "name": "Ace", + "value": 1, + "suit": "Clubs", + "color": "Black", + "royal": false, + "face": false, + "number": false, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃒", + "name": "Two", + "value": 2, + "suit": "Clubs", + "color": "Black", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃓", + "name": "Three", + "value": 3, + "suit": "Clubs", + "color": "Black", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃔", + "name": "Four", + "value": 4, + "suit": "Clubs", + "color": "Black", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃕", + "name": "Five", + "value": 5, + "suit": "Clubs", + "color": "Black", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃖", + "name": "Six", + "value": 6, + "suit": "Clubs", + "color": "Black", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃗", + "name": "Seven", + "value": 7, + "suit": "Clubs", + "color": "Black", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃘", + "name": "Eight", + "value": 8, + "suit": "Clubs", + "color": "Black", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃙", + "name": "Nine", + "value": 9, + "suit": "Clubs", + "color": "Black", + "royal": false, + "face": false, + "number": true, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃚", + "name": "Ten", + "value": 10, + "suit": "Clubs", + "color": "Black", + "royal": false, + "face": true, + "number": true, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃛", + "name": "Jack", + "value": 11, + "suit": "Clubs", + "color": "Black", + "royal": true, + "face": true, + "number": false, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃜", + "name": "Knight", + "value": 12, + "suit": "Clubs", + "color": "Black", + "royal": true, + "face": true, + "number": false, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃝", + "name": "Queen", + "value": 13, + "suit": "Clubs", + "color": "Black", + "royal": true, + "face": true, + "number": false, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": true, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃞", + "name": "King", + "value": 14, + "suit": "Clubs", + "color": "Black", + "royal": true, + "face": true, + "number": false, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🂠", + "name": "Playing Card", + "value": 15, + "suit": "Black", + "color": "Black", + "royal": false, + "face": false, + "number": false, + "red": false, + "black": false, + "even": false, + "odd": true, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃏", + "name": "Joker", + "value": 16, + "suit": "Black", + "color": "Black", + "royal": false, + "face": true, + "number": false, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}, { + "key": "🃟", + "name": "Joker", + "value": 16, + "suit": "Red", + "color": "Red", + "royal": false, + "face": true, + "number": false, + "red": false, + "black": false, + "even": true, + "odd": false, + "loop": false, + "heart": false, + "spade": false, + "club": false, + "diamond": false +}] diff --git a/test/karma.conf.js b/test/karma.conf.js index 15ecb47..1cd2bb8 100644 --- a/test/karma.conf.js +++ b/test/karma.conf.js @@ -1,24 +1,55 @@ module.exports = function (config) { + + // http://mike-ward.net/2015/09/07/tips-on-setting-up-karma-testing-with-webpack/ + var webpackConfig = require('../webpack.config.js'); + webpackConfig.entry = {}; + config.set({ + webpack: webpackConfig, + webpackMiddleware: { + // noInfo: true, + }, basePath: '../', + + // web server port port: 9876, // urlRoot: "/", + // level of logging + // possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG + logLevel: config.LOG_INFO, + // enable / disable watching file and executing tests whenever any file changes autoWatch: true, // enable / disable colors in the output (reporters and logs) colors: true, + // test results reporter to use + // possible values: 'dots', 'progress' + // available reporters: https://npmjs.org/browse/keyword/karma-reporter + reporters: ['progress','html','junit'], + frameworks: ['jasmine'], - browsers: ['Chrome', 'Firefox'], + browsers: [ + 'Chrome', + // 'Firefox' + ], + + + // Continuous Integration mode + // if true, Karma captures browsers, runs the tests and exits + singleRun: false, plugins: [ - 'karma-chrome-launcher', - 'karma-firefox-launcher', - 'karma-jasmine' + require('karma-sourcemap-loader'), + require("karma-webpack"), + require('karma-jasmine'), + require('karma-ng-html2js-preprocessor'), + require('karma-chrome-launcher'), + require('karma-firefox-launcher'), ], junitReporter: { @@ -27,6 +58,9 @@ module.exports = function (config) { }, preprocessors: { + // './build/clientapp.bundle.js': ['webpack','sourcemap'], + './src/index.js': ['webpack','sourcemap'], + // './src/js/rules.js': ['webpack','sourcemap'], "*.html": ["ng-html2js"] }, @@ -46,60 +80,30 @@ module.exports = function (config) { '/json/': '/base/json/' }, + // test results reporter to use + // possible values: 'dots', 'progress' + // available reporters: https://npmjs.org/browse/keyword/karma-reporter + reporters: ['progress'], // list of files / patterns to load in the browser files: [ // dependencies - 'bower_components/jquery/dist/jquery.js', - 'bower_components/jquery-ui/jquery-ui.js', + // these are for Module('') + 'node_modules/angular/angular.js', + 'node_modules/angular-mocks/angular-mocks.js', - 'bower_components/bootstrap/dist/js/bootstrap.js', - - 'bower_components/angular/angular.js', - 'bower_components/angular-route/angular-route.js', - 'bower_components/angular-resource/angular-resource.js', - 'bower_components/angular-animate/angular-animate.js', - 'bower_components/angular-mocks/angular-mocks.js', - 'bower_components/angular-dragdrop/src/angular-dragdrop.js', - 'bower_components/angular-ui-grid/ui-grid.js', - - 'bower_components/lodash/dist/lodash.js', - 'bower_components/chai/chai.js', - - 'js/external/*.js', - - // fixtures - { - pattern: 'index.html', - watched: true, - served: true, - included: false - }, { - pattern: 'json/*.json', - watched: true, - served: true, - included: false - }, - { - pattern: 'css/*.css', - watched: true, - served: true, - included: false - }, + // chai for rule tests + 'node_modules/chai/chai.js', // files to test - 'js/storage.js', - 'js/helpers.js', - 'js/analytics.js', - 'js/gameobjects.js', - 'js/rules.js', - 'js/detector/detector.js', - 'js/ui.js', - 'js/game.js', - 'js/app.js', + './src/index.js', // load in webpack entry point + 'src/js/rules.js', 'test/unit/**/*.js' ], + + // list of files to exclude + exclude: [], }); }; diff --git a/test/unit/controllersSpec.js b/test/unit/controllersSpec.js index 516f417..ed43928 100644 --- a/test/unit/controllersSpec.js +++ b/test/unit/controllersSpec.js @@ -33,17 +33,17 @@ describe('cardsForScience controllers', function () { controller = $controller('CardController',{$scope:$scope}); }); - it('should have elements', function () { - expect(controller.elements).toBeDefined(); + it('should have cards', function () { + expect(controller.cards).toBeDefined(); }); it('should be visible', function () { - var item = controller.elements[0]; + var item = controller.cards[0]; expect(controller.isVisible(item)).toBeDefined(); }); it('should be isAvailable', function () { - var item = controller.elements[0]; + var item = controller.cards[0]; expect(controller.isAvailable(item)).toBeDefined(); }); diff --git a/test/unit/directivesSpec.js b/test/unit/directivesSpec.js index 7cc9629..4ae04fe 100644 --- a/test/unit/directivesSpec.js +++ b/test/unit/directivesSpec.js @@ -7,7 +7,7 @@ describe('directives', function () { $rootScope; // Load the myApp module, which contains the directive - beforeEach(module('CardsForScience')); + beforeEach(module('cardsForScience')); // beforeEach(module('Rules')); // Store references to $rootScope and $compile @@ -18,21 +18,21 @@ describe('directives', function () { $rootScope = _$rootScope_; })); - it('Replaces the element with the appropriate content', function () { - // define a rule for testing - $rootScope.rule = Rules.rules[0]; - - // Compile a piece of HTML containing the directive - var element = $compile('
')($rootScope); - - // fire all the watches, so the scope expressions will be evaluated - // $rootScope.$digest(); - $rootScope.$apply(); - - // Check that the compiled element contains the templated content - var html = element.html(); - expect(html).toContain("
')($rootScope); + // + // // fire all the watches, so the scope expressions will be evaluated + // // $rootScope.$digest(); + // $rootScope.$apply(); + // + // // Check that the compiled element contains the templated content + // var html = element.html(); + // expect(html).toContain("
')($rootScope); - - // fire all the watches, so the scope expressions will be evaluated - // $rootScope.$digest(); - $rootScope.$apply(); - - // Check that the compiled element contains the templated content - var html = element.html(); - expect(html).toContain("