From ae8ec843fc48ccffab88b629b106df2d9ac95a62 Mon Sep 17 00:00:00 2001
From: Bart Veneman <1536852+bartveneman@users.noreply.github.com>
Date: Fri, 12 Jul 2024 21:17:40 +0200
Subject: [PATCH] rm Median metric (#410)
closes #390
---
readme.md | 94 +++++--------------
src/__fixtures__/bol-com-20231008.json | 13 ---
src/__fixtures__/bootstrap-5.3.2.json | 13 ---
src/__fixtures__/cnn-20231008.json | 13 ---
src/__fixtures__/css-tricks-20231008.json | 13 ---
src/__fixtures__/gazelle-20231008.json | 13 ---
src/__fixtures__/github-20231008.json | 13 ---
src/__fixtures__/indiatimes-20231008.json | 13 ---
.../smashing-magazine-20231008.json | 13 ---
src/__fixtures__/trello-20231008.json | 13 ---
src/aggregate-collection.js | 20 ----
src/aggregate-collection.test.js | 2 -
src/atrules/atrules.test.js | 1 -
src/declarations/declarations.test.js | 1 -
src/index.js | 1 -
src/index.test.js | 9 --
src/properties/properties.test.js | 1 -
src/rules/rules.test.js | 29 ------
src/selectors/complexity.test.js | 11 ---
src/selectors/selectors.test.js | 4 -
src/selectors/specificity.test.js | 11 ---
src/values/complexity.test.js | 1 -
22 files changed, 24 insertions(+), 278 deletions(-)
diff --git a/readme.md b/readme.md
index e0dd2e51..00729b79 100644
--- a/readme.md
+++ b/readme.md
@@ -22,9 +22,9 @@ A CSS analyzer that goes through your CSS to find all kinds of relevant s
## Features
-* Extremely **detailed** (150+ metrics)
-* Super **[fast](/benchmark)**
-* Supports both NodeJS and browsers
+- Extremely **detailed** (150+ metrics)
+- Super **[fast](/benchmark)**
+- Supports both NodeJS and browsers
## Install
@@ -37,7 +37,7 @@ npm install @projectwallace/css-analyzer
### Analyzing CSS
```js
-import { analyze } from '@projectwallace/css-analyzer'
+import { analyze } from "@projectwallace/css-analyzer";
const result = analyze(`
p {
@@ -48,8 +48,9 @@ const result = analyze(`
.component[data-state="loading"] {
background-color: whitesmoke;
}
-`)
+`);
```
+
More examples output can be found in the fixtures folder and looks roughly like this:
@@ -126,26 +127,18 @@ const result = analyze(`
"max": 1,
"mean": 1,
"mode": 1,
- "median": 1,
"range": 0,
"sum": 2,
- "items": [
- 1,
- 1
- ]
+ "items": [1, 1]
},
"declarations": {
"min": 1,
"max": 2,
"mean": 1.5,
"mode": 1.5,
- "median": 1.5,
"range": 1,
"sum": 3,
- "items": [
- 2,
- 1
- ]
+ "items": [2, 1]
}
},
"selectors": {
@@ -153,47 +146,14 @@ const result = analyze(`
"totalUnique": 2,
"uniquenessRatio": 1,
"specificity": {
- "sum": [
- 0,
- 2,
- 1
- ],
- "min": [
- 0,
- 0,
- 1
- ],
- "max": [
- 0,
- 2,
- 0
- ],
- "mean": [
- 0,
- 1,
- 0.5
- ],
- "mode": [
- 0,
- 1,
- 0.5
- ],
- "median": [
- 0,
- 1,
- 0.5
- ],
+ "sum": [0, 2, 1],
+ "min": [0, 0, 1],
+ "max": [0, 2, 0],
+ "mean": [0, 1, 0.5],
+ "mode": [0, 1, 0.5],
"items": [
- [
- 0,
- 0,
- 1
- ],
- [
- 0,
- 2,
- 0
- ]
+ [0, 0, 1],
+ [0, 2, 0]
]
},
"complexity": {
@@ -201,7 +161,6 @@ const result = analyze(`
"max": 3,
"mean": 2,
"mode": 2,
- "median": 2,
"range": 2,
"sum": 4,
"total": 2,
@@ -211,10 +170,7 @@ const result = analyze(`
"3": 1
},
"uniquenessRatio": 1,
- "items": [
- 1,
- 3
- ]
+ "items": [1, 3]
},
"id": {
"total": 0,
@@ -379,18 +335,19 @@ const result = analyze(`
}
}
```
+
### Comparing specificity
```js
-import { compareSpecificity } from '@projectwallace/css-analyzer'
+import { compareSpecificity } from "@projectwallace/css-analyzer";
const result = [
- [0,1,1],
- [2,0,0],
- [0,0,1],
-].sort((a, b) => compareSpecificity(a, b))
+ [0, 1, 1],
+ [2, 0, 0],
+ [0, 0, 1],
+].sort((a, b) => compareSpecificity(a, b));
// => result:
// [
@@ -399,16 +356,13 @@ const result = [
// [0,0,1],
// ]
-const isSpecificityEqual = compareSpecificity(
- [0,1,0],
- [0,1,0]
-) === 0
+const isSpecificityEqual = compareSpecificity([0, 1, 0], [0, 1, 0]) === 0;
// => isSpecificityEqual: true
```
## Related projects
-- [CSS Code Quality Analyzer](https://github.com/projectwallace/css-code-quality) -
+- [CSS Code Quality Analyzer](https://github.com/projectwallace/css-code-quality) -
A Code Quality analyzer that tells you how maintainable, complex and performant your CSS is
- [Wallace CLI](https://github.com/projectwallace/wallace-cli) - CLI tool for
@projectwallace/css-analyzer
diff --git a/src/__fixtures__/bol-com-20231008.json b/src/__fixtures__/bol-com-20231008.json
index 72d08f51..a5a2efa3 100644
--- a/src/__fixtures__/bol-com-20231008.json
+++ b/src/__fixtures__/bol-com-20231008.json
@@ -270,7 +270,6 @@
"max": 1,
"mean": 1,
"mode": 1,
- "median": 1,
"range": 0,
"sum": 1061
}
@@ -286,7 +285,6 @@
"max": 73,
"mean": 3.4047571457125723,
"mode": 2,
- "median": 2,
"range": 71,
"sum": 17034,
"items": [
@@ -5332,7 +5330,6 @@
"max": 70,
"mean": 1.3260043973615832,
"mode": 1,
- "median": 1,
"range": 69,
"sum": 6634,
"items": [
@@ -10368,7 +10365,6 @@
"max": 26,
"mean": 2.0787527483509893,
"mode": 1,
- "median": 1,
"range": 25,
"sum": 10400,
"items": [
@@ -15433,11 +15429,6 @@
1,
0
],
- "median": [
- 0,
- 1,
- 0
- ],
"items": [
[
0,
@@ -48365,7 +48356,6 @@
"max": 13,
"mean": 2.2189115232593495,
"mode": 1,
- "median": 1,
"range": 12,
"sum": 14596,
"total": 6578,
@@ -55093,7 +55083,6 @@
"max": 1,
"mean": 1,
"mode": 1,
- "median": 1,
"range": 0,
"sum": 10441
}
@@ -55333,7 +55322,6 @@
"max": 2,
"mean": 1.0103438367972417,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 10549
}
@@ -56689,7 +56677,6 @@
"max": 2,
"mean": 1.0010535389330524,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 10452
},
diff --git a/src/__fixtures__/bootstrap-5.3.2.json b/src/__fixtures__/bootstrap-5.3.2.json
index 140ff4b1..05806f54 100644
--- a/src/__fixtures__/bootstrap-5.3.2.json
+++ b/src/__fixtures__/bootstrap-5.3.2.json
@@ -157,7 +157,6 @@
"max": 1,
"mean": 1,
"mode": 1,
- "median": 1,
"range": 0,
"sum": 115
}
@@ -173,7 +172,6 @@
"max": 119,
"mean": 3.328777821163608,
"mode": 2,
- "median": 2,
"range": 117,
"sum": 8525,
"items": [
@@ -2781,7 +2779,6 @@
"max": 12,
"mean": 1.162827020695041,
"mode": 1,
- "median": 1,
"range": 11,
"sum": 2978,
"items": [
@@ -5366,7 +5363,6 @@
"max": 117,
"mean": 2.165950800468567,
"mode": 1,
- "median": 1,
"range": 116,
"sum": 5547,
"items": [
@@ -8000,11 +7996,6 @@
1,
0
],
- "median": [
- 0,
- 1,
- 0
- ],
"items": [
[
0,
@@ -22895,7 +22886,6 @@
"max": 18,
"mean": 1.788021534320323,
"mode": 1,
- "median": 1,
"range": 17,
"sum": 5314,
"total": 2972,
@@ -26003,7 +25993,6 @@
"max": 1,
"mean": 1,
"mode": 1,
- "median": 1,
"range": 0,
"sum": 5547
}
@@ -27118,7 +27107,6 @@
"max": 2,
"mean": 1.2383270236163693,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 6869
}
@@ -30826,7 +30814,6 @@
"max": 2,
"mean": 1.0030216850337719,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 5643
},
diff --git a/src/__fixtures__/cnn-20231008.json b/src/__fixtures__/cnn-20231008.json
index 6672ffe5..21969fc8 100644
--- a/src/__fixtures__/cnn-20231008.json
+++ b/src/__fixtures__/cnn-20231008.json
@@ -168,7 +168,6 @@
"max": 1,
"mean": 1,
"mode": 1,
- "median": 1,
"range": 0,
"sum": 120
}
@@ -184,7 +183,6 @@
"max": 152,
"mean": 4.5031531531531535,
"mode": 2,
- "median": 3,
"range": 150,
"sum": 9997,
"items": [
@@ -2447,7 +2445,6 @@
"max": 132,
"mean": 1.8234234234234235,
"mode": 1,
- "median": 1,
"range": 131,
"sum": 4048,
"items": [
@@ -4702,7 +4699,6 @@
"max": 151,
"mean": 2.6797297297297296,
"mode": 1,
- "median": 2,
"range": 150,
"sum": 5949,
"items": [
@@ -6982,11 +6978,6 @@
2,
0
],
- "median": [
- 0,
- 3,
- 0
- ],
"items": [
[
0,
@@ -27207,7 +27198,6 @@
"max": 18,
"mean": 5.616947472745292,
"mode": 3,
- "median": 5,
"range": 17,
"sum": 22670,
"total": 4036,
@@ -31350,7 +31340,6 @@
"max": 1,
"mean": 1,
"mode": 1,
- "median": 1,
"range": 0,
"sum": 5959
}
@@ -31857,7 +31846,6 @@
"max": 2,
"mean": 1.0585668736365161,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 6308
}
@@ -33745,7 +33733,6 @@
"max": 2,
"mean": 1.0008390669575433,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 5964
},
diff --git a/src/__fixtures__/css-tricks-20231008.json b/src/__fixtures__/css-tricks-20231008.json
index 2c47eeaa..178d2734 100644
--- a/src/__fixtures__/css-tricks-20231008.json
+++ b/src/__fixtures__/css-tricks-20231008.json
@@ -166,7 +166,6 @@
"max": 2,
"mean": 1.025974025974026,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 79
}
@@ -182,7 +181,6 @@
"max": 41,
"mean": 4.2785714285714285,
"mode": 2,
- "median": 3,
"range": 39,
"sum": 4193,
"items": [
@@ -1201,7 +1199,6 @@
"max": 32,
"mean": 1.563265306122449,
"mode": 1,
- "median": 1,
"range": 31,
"sum": 1532,
"items": [
@@ -2213,7 +2210,6 @@
"max": 40,
"mean": 2.7153061224489794,
"mode": 1,
- "median": 2,
"range": 39,
"sum": 2661,
"items": [
@@ -3255,11 +3251,6 @@
1,
0
],
- "median": [
- 0,
- 1,
- 1
- ],
"items": [
[
0,
@@ -10924,7 +10915,6 @@
"max": 17,
"mean": 3.314717477003942,
"mode": 1,
- "median": 3,
"range": 16,
"sum": 5045,
"total": 1522,
@@ -12613,7 +12603,6 @@
"max": 1,
"mean": 1,
"mode": 1,
- "median": 1,
"range": 0,
"sum": 2683
}
@@ -12978,7 +12967,6 @@
"max": 2,
"mean": 1.055162131941856,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 2831
}
@@ -14955,7 +14943,6 @@
"max": 2,
"mean": 1.0067089079388745,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 2701
},
diff --git a/src/__fixtures__/gazelle-20231008.json b/src/__fixtures__/gazelle-20231008.json
index 84c23d04..08511bd9 100644
--- a/src/__fixtures__/gazelle-20231008.json
+++ b/src/__fixtures__/gazelle-20231008.json
@@ -277,7 +277,6 @@
"max": 2,
"mean": 1.0139634801288937,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 944
}
@@ -293,7 +292,6 @@
"max": 66,
"mean": 3.78051391862955,
"mode": 2,
- "median": 3,
"range": 65,
"sum": 28248,
"items": [
@@ -7813,7 +7811,6 @@
"max": 55,
"mean": 1.4329496788008564,
"mode": 1,
- "median": 1,
"range": 54,
"sum": 10707,
"items": [
@@ -15322,7 +15319,6 @@
"max": 33,
"mean": 2.347564239828694,
"mode": 1,
- "median": 1,
"range": 33,
"sum": 17541,
"items": [
@@ -22862,11 +22858,6 @@
1,
0
],
- "median": [
- 0,
- 2,
- 0
- ],
"items": [
[
0,
@@ -76222,7 +76213,6 @@
"max": 19,
"mean": 3.972777621327326,
"mode": 1,
- "median": 3,
"range": 18,
"sum": 42322,
"total": 10653,
@@ -87517,7 +87507,6 @@
"max": 1,
"mean": 1,
"mode": 1,
- "median": 1,
"range": 0,
"sum": 17586
}
@@ -87913,7 +87902,6 @@
"max": 2,
"mean": 1.0664164676447174,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 18754
}
@@ -90498,7 +90486,6 @@
"max": 2,
"mean": 1.0304617662130615,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 18098
},
diff --git a/src/__fixtures__/github-20231008.json b/src/__fixtures__/github-20231008.json
index d98438e0..a7241b28 100644
--- a/src/__fixtures__/github-20231008.json
+++ b/src/__fixtures__/github-20231008.json
@@ -304,7 +304,6 @@
"max": 2,
"mean": 1.0014771048744462,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 678
}
@@ -320,7 +319,6 @@
"max": 452,
"mean": 3.6455186304128904,
"mode": 2,
- "median": 2,
"range": 450,
"sum": 32580,
"items": [
@@ -9306,7 +9304,6 @@
"max": 38,
"mean": 1.2223341165939354,
"mode": 1,
- "median": 1,
"range": 37,
"sum": 10924,
"items": [
@@ -18278,7 +18275,6 @@
"max": 446,
"mean": 2.423184513818955,
"mode": 1,
- "median": 1,
"range": 446,
"sum": 21656,
"items": [
@@ -27283,11 +27279,6 @@
1,
0
],
- "median": [
- 0,
- 2,
- 0
- ],
"items": [
[
0,
@@ -81016,7 +81007,6 @@
"max": 17,
"mean": 2.779433681073025,
"mode": 1,
- "median": 2,
"range": 16,
"sum": 29840,
"total": 10736,
@@ -92224,7 +92214,6 @@
"max": 1,
"mean": 1,
"mode": 1,
- "median": 1,
"range": 0,
"sum": 21677
}
@@ -93919,7 +93908,6 @@
"max": 2,
"mean": 1.2116529039996309,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 26265
}
@@ -102306,7 +102294,6 @@
"max": 2,
"mean": 1.00175118014314,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 26314
},
diff --git a/src/__fixtures__/indiatimes-20231008.json b/src/__fixtures__/indiatimes-20231008.json
index 2d35cb2a..fba72df5 100644
--- a/src/__fixtures__/indiatimes-20231008.json
+++ b/src/__fixtures__/indiatimes-20231008.json
@@ -115,7 +115,6 @@
"max": 1,
"mean": 1,
"mode": 1,
- "median": 1,
"range": 0,
"sum": 8
}
@@ -131,7 +130,6 @@
"max": 1406,
"mean": 6.028198653198653,
"mode": 2,
- "median": 3,
"range": 1404,
"sum": 14323,
"items": [
@@ -2575,7 +2573,6 @@
"max": 1405,
"mean": 3.4423400673400675,
"mode": 1,
- "median": 1,
"range": 1404,
"sum": 8179,
"items": [
@@ -5010,7 +5007,6 @@
"max": 17,
"mean": 2.585858585858586,
"mode": 1,
- "median": 2,
"range": 16,
"sum": 6144,
"items": [
@@ -7445,11 +7441,6 @@
2,
0
],
- "median": [
- 0,
- 3,
- 0
- ],
"items": [
[
0,
@@ -48332,7 +48323,6 @@
"max": 16,
"mean": 4.353985551610139,
"mode": 4,
- "median": 4,
"range": 15,
"sum": 35559,
"total": 8167,
@@ -56627,7 +56617,6 @@
"max": 1,
"mean": 1,
"mode": 1,
- "median": 1,
"range": 0,
"sum": 6144
}
@@ -56830,7 +56819,6 @@
"max": 2,
"mean": 1.0065104166666667,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 6184
}
@@ -58369,7 +58357,6 @@
"max": 2,
"mean": 1.002277533756304,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 6161
},
diff --git a/src/__fixtures__/smashing-magazine-20231008.json b/src/__fixtures__/smashing-magazine-20231008.json
index b16640fa..97af5145 100644
--- a/src/__fixtures__/smashing-magazine-20231008.json
+++ b/src/__fixtures__/smashing-magazine-20231008.json
@@ -431,7 +431,6 @@
"max": 2,
"mean": 1.035450516986706,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 701
}
@@ -447,7 +446,6 @@
"max": 34,
"mean": 3.9592750055940926,
"mode": 2,
- "median": 3,
"range": 32,
"sum": 17694,
"items": [
@@ -4958,7 +4956,6 @@
"max": 30,
"mean": 1.3334079212351757,
"mode": 1,
- "median": 1,
"range": 29,
"sum": 5959,
"items": [
@@ -9461,7 +9458,6 @@
"max": 24,
"mean": 2.625867084358917,
"mode": 1,
- "median": 1,
"range": 23,
"sum": 11735,
"items": [
@@ -13992,11 +13988,6 @@
1,
0
],
- "median": [
- 0,
- 1,
- 0
- ],
"items": [
[
0,
@@ -43040,7 +43031,6 @@
"max": 13,
"mean": 2.9806863252284876,
"mode": 1,
- "median": 3,
"range": 12,
"sum": 17285,
"total": 5799,
@@ -49093,7 +49083,6 @@
"max": 1,
"mean": 1,
"mode": 1,
- "median": 1,
"range": 0,
"sum": 11757
}
@@ -49424,7 +49413,6 @@
"max": 2,
"mean": 1.0261121034277452,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 12064
}
@@ -51652,7 +51640,6 @@
"max": 2,
"mean": 1.013728813559322,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 11962
},
diff --git a/src/__fixtures__/trello-20231008.json b/src/__fixtures__/trello-20231008.json
index 41ef83cb..18648d60 100644
--- a/src/__fixtures__/trello-20231008.json
+++ b/src/__fixtures__/trello-20231008.json
@@ -302,7 +302,6 @@
"max": 2,
"mean": 1.0051546391752577,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 195
}
@@ -318,7 +317,6 @@
"max": 26,
"mean": 4.650049850448654,
"mode": 2,
- "median": 2,
"range": 24,
"sum": 4664,
"items": [
@@ -1361,7 +1359,6 @@
"max": 5,
"mean": 1.151545363908275,
"mode": 1,
- "median": 1,
"range": 4,
"sum": 1155,
"items": [
@@ -2385,7 +2382,6 @@
"max": 24,
"mean": 3.4985044865403787,
"mode": 1,
- "median": 1,
"range": 23,
"sum": 3509,
"items": [
@@ -3454,11 +3450,6 @@
1,
0
],
- "median": [
- 0,
- 1,
- 0
- ],
"items": [
[
0,
@@ -9253,7 +9244,6 @@
"max": 10,
"mean": 3.0685169124024285,
"mode": 1,
- "median": 3,
"range": 9,
"sum": 3538,
"total": 1153,
@@ -10515,7 +10505,6 @@
"max": 1,
"mean": 1,
"mode": 1,
- "median": 1,
"range": 0,
"sum": 3629
}
@@ -10754,7 +10743,6 @@
"max": 2,
"mean": 1.180214935243869,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 4283
}
@@ -11689,7 +11677,6 @@
"max": 2,
"mean": 1.0511129431162407,
"mode": 1,
- "median": 1,
"range": 1,
"sum": 3825
},
diff --git a/src/aggregate-collection.js b/src/aggregate-collection.js
index 3fbbcbf4..190cae8a 100644
--- a/src/aggregate-collection.js
+++ b/src/aggregate-collection.js
@@ -33,23 +33,6 @@ function Mode(arr) {
return sum / maxOccurenceCount
}
-/**
- * Find the middle number in an Array of Numbers
- * Returns the average of 2 numbers if the Array length is an even number
- * @see https://github.com/angus-c/just/blob/684af9ca0c7808bc78543ec89379b1fdfce502b1/packages/array-median/index.js
- * @param {Array} arr - A sorted Array
- * @returns {Number} - The array's Median
- */
-function Median(arr) {
- let middle = arr.length / 2
- let lowerMiddleRank = Math.floor(middle)
-
- if (middle !== lowerMiddleRank) {
- return arr[lowerMiddleRank]
- }
- return (arr[lowerMiddleRank] + arr[lowerMiddleRank - 1]) / 2
-}
-
class AggregateCollection {
constructor() {
/** @type number[] */
@@ -79,7 +62,6 @@ class AggregateCollection {
max: 0,
mean: 0,
mode: 0,
- median: 0,
range: 0,
sum: 0,
}
@@ -92,7 +74,6 @@ class AggregateCollection {
let max = sorted[len - 1]
let mode = Mode(sorted)
- let median = Median(sorted)
let sum = this._sum
return {
@@ -100,7 +81,6 @@ class AggregateCollection {
max,
mean: sum / len,
mode,
- median,
range: max - min,
sum: sum,
}
diff --git a/src/aggregate-collection.test.js b/src/aggregate-collection.test.js
index 07d87f65..3cfdce8e 100644
--- a/src/aggregate-collection.test.js
+++ b/src/aggregate-collection.test.js
@@ -18,7 +18,6 @@ CollectionSuite('aggregates correctly', () => {
min: 1,
range: 24,
mean: 39 / 6,
- median: 3.5,
mode: 4,
sum: 39,
}
@@ -37,7 +36,6 @@ CollectionSuite('handles collections without values', () => {
min: 0,
range: 0,
mean: 0,
- median: 0,
mode: 0,
sum: 0,
})
diff --git a/src/atrules/atrules.test.js b/src/atrules/atrules.test.js
index b09f9514..f946d872 100644
--- a/src/atrules/atrules.test.js
+++ b/src/atrules/atrules.test.js
@@ -58,7 +58,6 @@ AtRules('calculates complexity', () => {
max: 2,
mean: 14 / 10,
mode: 1,
- median: 1,
range: 1,
sum: 14,
})
diff --git a/src/declarations/declarations.test.js b/src/declarations/declarations.test.js
index b966d911..7fe62f7b 100644
--- a/src/declarations/declarations.test.js
+++ b/src/declarations/declarations.test.js
@@ -140,7 +140,6 @@ Declarations('should count complexity', () => {
max: 3,
mean: 2,
mode: 2,
- median: 2,
range: 2,
sum: 6,
}
diff --git a/src/index.js b/src/index.js
index 2e53ceb0..08d79580 100644
--- a/src/index.js
+++ b/src/index.js
@@ -805,7 +805,6 @@ export function analyze(css, options = {}) {
/** @type Specificity */
mode: [specificitiesA.mode, specificitiesB.mode, specificitiesC.mode],
/** @type Specificity */
- median: [specificitiesA.median, specificitiesB.median, specificitiesC.median],
items: specificities,
},
uniqueSpecificities.c(),
diff --git a/src/index.test.js b/src/index.test.js
index 30d4d445..ee7cab93 100644
--- a/src/index.test.js
+++ b/src/index.test.js
@@ -175,7 +175,6 @@ Api("handles empty input gracefully", () => {
max: 0,
mean: 0,
mode: 0,
- median: 0,
range: 0,
sum: 0,
}
@@ -191,7 +190,6 @@ Api("handles empty input gracefully", () => {
max: 0,
mean: 0,
mode: 0,
- median: 0,
range: 0,
sum: 0,
items: [],
@@ -205,7 +203,6 @@ Api("handles empty input gracefully", () => {
max: 0,
mean: 0,
mode: 0,
- median: 0,
range: 0,
sum: 0,
items: [],
@@ -219,7 +216,6 @@ Api("handles empty input gracefully", () => {
max: 0,
mean: 0,
mode: 0,
- median: 0,
range: 0,
sum: 0,
items: [],
@@ -239,7 +235,6 @@ Api("handles empty input gracefully", () => {
sum: [0, 0, 0],
mean: [0, 0, 0],
mode: [0, 0, 0],
- median: [0, 0, 0],
items: [],
unique: {},
total: 0,
@@ -251,7 +246,6 @@ Api("handles empty input gracefully", () => {
max: 0,
mean: 0,
mode: 0,
- median: 0,
range: 0,
sum: 0,
total: 0,
@@ -315,7 +309,6 @@ Api("handles empty input gracefully", () => {
max: 0,
mean: 0,
mode: 0,
- median: 0,
range: 0,
sum: 0,
}
@@ -358,7 +351,6 @@ Api("handles empty input gracefully", () => {
max: 0,
mean: 0,
mode: 0,
- median: 0,
range: 0,
sum: 0,
},
@@ -464,7 +456,6 @@ Api("handles empty input gracefully", () => {
max: 0,
mean: 0,
mode: 0,
- median: 0,
range: 0,
sum: 0,
},
diff --git a/src/properties/properties.test.js b/src/properties/properties.test.js
index 03bd796a..21968946 100644
--- a/src/properties/properties.test.js
+++ b/src/properties/properties.test.js
@@ -148,7 +148,6 @@ Properties('calculates property complexity', () => {
assert.is(actual.max, 2)
assert.is(actual.mean, 1.75)
- assert.is(actual.median, 2)
assert.is(actual.min, 1)
assert.is(actual.mode, 2)
assert.is(actual.range, 1)
diff --git a/src/rules/rules.test.js b/src/rules/rules.test.js
index 70a1c386..d915affc 100644
--- a/src/rules/rules.test.js
+++ b/src/rules/rules.test.js
@@ -27,7 +27,6 @@ Rules('should handle CSS without rules', () => {
max: 0,
mean: 0,
mode: 0,
- median: 0,
range: 0,
sum: 0,
items: [],
@@ -41,7 +40,6 @@ Rules('should handle CSS without rules', () => {
max: 0,
mean: 0,
mode: 0,
- median: 0,
range: 0,
sum: 0,
items: [],
@@ -55,7 +53,6 @@ Rules('should handle CSS without rules', () => {
max: 0,
mean: 0,
mode: 0,
- median: 0,
range: 0,
sum: 0,
items: [],
@@ -102,7 +99,6 @@ Rules('counts sizes of rules', () => {
max: 6,
mean: 3.75,
mode: 3.75,
- median: 3.5,
range: 4,
sum: 15,
items: [2, 4, 6, 3],
@@ -162,14 +158,6 @@ Rules('calculate the mean of selectors', () => {
`).rules.selectors.mean, 1.5)
})
-Rules('calculate the median of selectors', () => {
- assert.is(analyze(`
- html {}
- a,
- b {}
- `).rules.selectors.median, 1.5)
-})
-
Rules('calculate the range of selectors', () => {
assert.is(analyze(`
html {}
@@ -255,23 +243,6 @@ Rules('calculate the mean of declarations', () => {
`).rules.declarations.mean, 2)
})
-Rules('calculate the median of declarations', () => {
- assert.is(analyze(`
- html {
- a: 1;
- }
- a {
- a: 1;
- b: 2;
- }
- b {
- a: 1;
- b: 2;
- c: 3;
- }
- `).rules.declarations.median, 2)
-})
-
Rules('calculate the range of declarations', () => {
assert.is(analyze(`
html {
diff --git a/src/selectors/complexity.test.js b/src/selectors/complexity.test.js
index f2696985..29660af7 100644
--- a/src/selectors/complexity.test.js
+++ b/src/selectors/complexity.test.js
@@ -133,17 +133,6 @@ Complexity('calculates the complexity mode', () => {
assert.equal(actual, 1)
})
-Complexity('calculates the complexity median', () => {
- const fixture = `
- #test,
- .me,
- now,
- [crazy] ~ .selector > check {}
- `
- const actual = analyze(fixture).selectors.complexity.median
- assert.equal(actual, 1)
-})
-
Complexity('calculates total complexity', () => {
const fixture = `
#test,
diff --git a/src/selectors/selectors.test.js b/src/selectors/selectors.test.js
index a845c597..f6c300d0 100644
--- a/src/selectors/selectors.test.js
+++ b/src/selectors/selectors.test.js
@@ -44,7 +44,6 @@ Selectors('handles CSS without selectors', () => {
max: [0, 0, 0],
mean: [0, 0, 0],
mode: [0, 0, 0],
- median: [0, 0, 0],
items: [],
unique: {},
total: 0,
@@ -56,7 +55,6 @@ Selectors('handles CSS without selectors', () => {
max: 0,
mean: 0,
mode: 0,
- median: 0,
range: 0,
sum: 0,
total: 0,
@@ -287,7 +285,6 @@ Selectors('handles emoji selectors', () => {
max: [0, 1, 0],
mean: [0, 1, 0],
mode: [0, 1, 0],
- median: [0, 1, 0],
items: [[0, 1, 0]],
unique: {
'0,1,0': 1,
@@ -301,7 +298,6 @@ Selectors('handles emoji selectors', () => {
max: 1,
mean: 1,
mode: 1,
- median: 1,
range: 0,
sum: 1,
total: 1,
diff --git a/src/selectors/specificity.test.js b/src/selectors/specificity.test.js
index 963d7db3..e51acb36 100644
--- a/src/selectors/specificity.test.js
+++ b/src/selectors/specificity.test.js
@@ -224,17 +224,6 @@ Specificity('calculates the mode value', () => {
assert.equal(actual, [0, 0, 0.5])
})
-Specificity('calculates the median value', () => {
- const fixture = `
- #test,
- .me,
- now,
- [crazy] ~ .selector > check {}
- `
- const actual = analyze(fixture).selectors.specificity.median
- assert.equal(actual, [0, 0.5, 0.5])
-})
-
Specificity('calculates total specificity', () => {
const fixture = `
#test,
diff --git a/src/values/complexity.test.js b/src/values/complexity.test.js
index 2816ed94..3cc48052 100644
--- a/src/values/complexity.test.js
+++ b/src/values/complexity.test.js
@@ -20,7 +20,6 @@ test('calculates value complexity', () => {
max: 3,
mean: 10 / 5,
mode: 2,
- median: 2,
range: 2,
sum: 10,
}