Skip to content

Commit 2741214

Browse files
committed
test: real-world calc() corpus (8 frameworks + GitHub harvest, 21k+ expressions)
1 parent 646d3ae commit 2741214

12 files changed

Lines changed: 47318 additions & 0 deletions
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
calc(-.5rem + -1px)
2+
calc(-2.25rem + 2px)
3+
calc(.25rem + 1px)
4+
calc(.25rem + 2px)
5+
calc(.25rem - 1px)
6+
calc(.375rem + 1px)
7+
calc(.3rem - 1px)
8+
calc(.5rem + 1px)
9+
calc(1.8125rem + 2px)
10+
calc(100% - 1rem)
11+
calc(100% - 3.5rem)
12+
calc(100vh - 1rem)
13+
calc(100vh - 3.5rem)
14+
calc(1rem - 4px)
15+
calc(2.25rem + 2px)
16+
calc(2.875rem + 2px)
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
calc(-.375em - 1px)
2+
calc(.375em - 1px)
3+
calc(.5rem - 1px)
4+
calc(.5rem - 3px)
5+
calc(.625em - 1px)
6+
calc(100% - 4px)
7+
calc(100vh - 160px)
8+
calc(100vh - 3.25rem)
9+
calc(100vh - 40px)
10+
calc(50% + 4px)
11+
calc(50% - .5em)
12+
calc(50% - 1px)
13+
calc(50% - 6px)
14+
calc(50% - 8px)
15+
calc(var(--columnGap)*-1)
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
calc(100% + .6495rem)
2+
calc(100% - 1.25rem)
3+
calc(100% - 1.875rem)
4+
calc(100vh + 1.25rem)
5+
calc(100vh + 1.875rem)
6+
calc(12.5% - 1.25rem)
7+
calc(12.5% - 1.875rem)
8+
calc(14.28571% - 1.25rem)
9+
calc(14.28571% - 1.875rem)
10+
calc(16.66667% + .625rem)
11+
calc(16.66667% + .9375rem)
12+
calc(16.66667% - 1.25rem)
13+
calc(16.66667% - 1.875rem)
14+
calc(20% - 1.25rem)
15+
calc(20% - 1.875rem)
16+
calc(25% + .625rem)
17+
calc(25% + .9375rem)
18+
calc(25% - 1.25rem)
19+
calc(25% - 1.875rem)
20+
calc(33.33333% + .625rem)
21+
calc(33.33333% + .9375rem)
22+
calc(33.33333% - 1.25rem)
23+
calc(33.33333% - 1.875rem)
24+
calc(41.66667% + .625rem)
25+
calc(41.66667% + .9375rem)
26+
calc(41.66667% - 1.25rem)
27+
calc(41.66667% - 1.875rem)
28+
calc(50% + .625rem)
29+
calc(50% + .9375rem)
30+
calc(50% - 1.25rem)
31+
calc(50% - 1.875rem)
32+
calc(58.33333% + .625rem)
33+
calc(58.33333% + .9375rem)
34+
calc(58.33333% - 1.25rem)
35+
calc(58.33333% - 1.875rem)
36+
calc(66.66667% + .625rem)
37+
calc(66.66667% + .9375rem)
38+
calc(66.66667% - 1.25rem)
39+
calc(66.66667% - 1.875rem)
40+
calc(75% + .625rem)
41+
calc(75% + .9375rem)
42+
calc(75% - 1.25rem)
43+
calc(75% - 1.875rem)
44+
calc(8.33333% + .625rem)
45+
calc(8.33333% + .9375rem)
46+
calc(8.33333% - 1.25rem)
47+
calc(8.33333% - 1.875rem)
48+
calc(83.33333% + .625rem)
49+
calc(83.33333% + .9375rem)
50+
calc(83.33333% - 1.25rem)
51+
calc(83.33333% - 1.875rem)
52+
calc(91.66667% + .625rem)
53+
calc(91.66667% + .9375rem)
54+
calc(91.66667% - 1.25rem)
55+
calc(91.66667% - 1.875rem)

src/pratt/test/corpus/github-pure.txt

Lines changed: 21260 additions & 0 deletions
Large diffs are not rendered by default.

src/pratt/test/corpus/github/expressions.txt

Lines changed: 23581 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
CALC()
2+
Calc()
3+
calc( * 4px)
4+
calc( // (100% - (var(--gap) * (var(--flex-count) - 1))) / var(--flex-count) // )
5+
calc( // (50% + 20px + 20px) - (6px) - (1.5rem + 50px + 1.5rem + 0px) // )
6+
calc( // (var(--menu-handle-size) - var(--svg-size)) / -2 // )
7+
calc( 100vw - 2 * var(--theme-spacing-mobileHorizontalSpacing), calc(100vw - 1rem) )
8+
calc( var(--f) or 1 *(1 - 2*max(max(0, -1*var(--k)) - .5, .5 - max(0, -1*var(--k)))))
9+
calc("84% - 13px")
10+
calc(((var(--columns)- 1) * var(--gap)) / var(--columns))
11+
calc(((var(--i)-0)*0.01turn))
12+
calc(((var(--i)-50)*0.01turn))
13+
calc((1 + math.sqrt(5)) / 2)
14+
calc((1-clamp((max(0,var(--gp,0))-.78)*5,0,1))*10px)
15+
calc((1-clamp((max(0,var(--gp,0))-.82)*6,0,1))*10px)
16+
calc((var(--line-height) / 2) - (var(border-thic})))
17+
calc()
18+
calc(--value(--percentage-*,--percentage-translate-*)*-100%)
19+
calc(--value(--percentage-*,--percentage-translate-*)*100%)
20+
calc(--value(--translate-*,[percentage],[length])*-1)
21+
calc(--value([percentage]) / 100%)
22+
calc(--value(integer, [integer]) / 100)
23+
calc(-50% * var(--sin-$(i)-$(n)))
24+
calc(...)
25+
calc(0.2em +1vw)
26+
calc(0.5em +1vw)
27+
calc(0.5rem,1vw,1.5rem)
28+
calc(1.5rem+5.5px)
29+
calc(100% - var(--sheldWidth) /2 + var(--sheldWidth) +1px)
30+
calc(100% - {padding}px * 2)
31+
calc(100% -(var(--grid-m)* 8))
32+
calc(100% / 2 -20px)
33+
calc(100% 80px)
34+
calc(100%+4px)
35+
calc(100%-100px)
36+
calc(100%-10px)
37+
calc(100%-28rem)
38+
calc(100%-2rem)
39+
calc(100%-45px)
40+
calc(100%/3+1cm)
41+
calc(100%/3-12px)
42+
calc(100cqw - --value([length], [*]))
43+
calc(100dvh - --value([length], [*]))
44+
calc(100lvw - --value([length], [*]))
45+
calc(100vh - (49px + 49px + 42px +14px))
46+
calc(100vh -94px)
47+
calc(100vw -240px)
48+
calc(100vw -40px)
49+
calc(168px+50px)
50+
calc(1ch+16px)
51+
calc(1ch+24px)
52+
calc(1ch+8px)
53+
calc(1em+2px)
54+
calc(1fr 130px)
55+
calc(1fr+30px)
56+
calc(1fr,3)
57+
calc(1px * pow(2 3))
58+
calc(1px+2px)
59+
calc(1px+2vw)
60+
calc(1rem 0.5rem)
61+
calc(1turn * ($(n) - $(i) + 1) / $(n))
62+
calc(220px - 2rem; )
63+
calc(25%, 14vw)
64+
calc(50% * var(--cos-$(i)-$(n)))
65+
calc(50% - 0.5 em)
66+
calc(50% - 50vw +30px)
67+
calc(50% -50px)
68+
calc(50px+5vw)
69+
calc(512-50)
70+
calc(clamp((max(0,var(--gp,0))-.86)*7,0,1)*100%)
71+
calc(clamp(0, var(--i) + (1-2 * var(--k)) * (var(--n) - 1), 1) * 33cqw)
72+
calc(round(1cap, attr(top rem, 0)) - 1cap)
73+
calc(round(up, 1cap, attr(top rem, 0)) - 1cap)
74+
calc(var($--animate-duration) * 0.8)
75+
calc(var(--article-load-delay)+ 600ms)
76+
calc(var(--article-load-delay)+ 800ms)
77+
calc(var(--breakpoint-2xl) - --value([length], [*]))
78+
calc(var(--breakpoint-2xl)+2rem)
79+
calc(var(--breakpoint-lg) - --value([length], [*]))
80+
calc(var(--breakpoint-md) - --value([length], [*]))
81+
calc(var(--breakpoint-sm) - --value([length], [*]))
82+
calc(var(--breakpoint-xl) - --value([length], [*]))
83+
calc(var(--di-large)*var(--sq-mul)+2px)
84+
calc(var(--dynamicWidth) * {dynamicModifier})
85+
calc(var(--gap)*1px+4px)
86+
calc(var(--gap)*1px+6px)
87+
calc(var(--header-height)+ 2rem)
88+
calc(var(--spinner-radius) * var(--cos-$(i)-$(n)) * -1)
89+
calc(var(--spinner-radius) * var(--sin-$(i)-$(n)))
90+
calc({bgOpacity} * .01)
91+
calc({lifetime}s - .5s)
92+
calc({padding}px - var(--borderSize))
93+
calc({separatorOpacity} * .01)

0 commit comments

Comments
 (0)