@@ -5,7 +5,7 @@ const { expect } = require('./harness')
5
5
const versionTree = require ( '../src/helpers/versionTree.js' )
6
6
7
7
describe ( 'versionTree' , ( ) => {
8
- it ( 'should return stable, preview and snapshot versions' , ( ) => {
8
+ it ( 'should return stable, preview and snapshot versions' , ( ) => {
9
9
const result = versionTree ( {
10
10
test : {
11
11
versions : [
@@ -45,6 +45,93 @@ describe('versionTree', () => {
45
45
expect ( tree . snapshot [ 1 ] . displayVersion ) . is . eql ( '3.0.0-SNAPSHOT' )
46
46
} )
47
47
48
+ it ( 'page version overrides urls when component names are the same' , ( ) => {
49
+ const result = versionTree ( {
50
+ test : {
51
+ name : 'test' ,
52
+ versions : [
53
+ {
54
+ displayVersion : '2.0.0' ,
55
+ url : './version.html' ,
56
+ } ,
57
+ ] ,
58
+ } ,
59
+ } , {
60
+ component : {
61
+ name : 'test' ,
62
+ } ,
63
+ versions : [
64
+ {
65
+ displayVersion : '2.0.0' ,
66
+ url : './page.html' ,
67
+ } ,
68
+ ] ,
69
+ } )
70
+
71
+ const tree = result . test . versionTree
72
+ expect ( tree . stable . length ) . is . eql ( 1 )
73
+ expect ( tree . stable [ 0 ] . displayVersion ) . is . eql ( '2.0.0' )
74
+ expect ( tree . stable [ 0 ] . url ) . is . eql ( './page.html' )
75
+ } )
76
+
77
+ it ( 'does not override if page does not define same version' , ( ) => {
78
+ const result = versionTree ( {
79
+ test : {
80
+ name : 'test' ,
81
+ versions : [
82
+ {
83
+ displayVersion : '2.0.0' ,
84
+ url : './version.html' ,
85
+ } ,
86
+ ] ,
87
+ } ,
88
+ } , {
89
+ component : {
90
+ name : 'test' ,
91
+ } ,
92
+ versions : [
93
+ {
94
+ displayVersion : '1.0.0' ,
95
+ url : './page.html' ,
96
+ } ,
97
+ ] ,
98
+ } )
99
+
100
+ const tree = result . test . versionTree
101
+ expect ( tree . stable . length ) . is . eql ( 1 )
102
+ expect ( tree . stable [ 0 ] . displayVersion ) . is . eql ( '2.0.0' )
103
+ expect ( tree . stable [ 0 ] . url ) . is . eql ( './version.html' )
104
+ } )
105
+
106
+ it ( 'page versions do not override if different component name' , ( ) => {
107
+ const result = versionTree ( {
108
+ test : {
109
+ name : 'test' ,
110
+ versions : [
111
+ {
112
+ displayVersion : '2.0.0' ,
113
+ url : './version.html' ,
114
+ } ,
115
+ ] ,
116
+ } ,
117
+ } , {
118
+ component : {
119
+ name : 'baz' ,
120
+ } ,
121
+ versions : [
122
+ {
123
+ displayVersion : '2.0.0' ,
124
+ url : './page.html' ,
125
+ } ,
126
+ ] ,
127
+ } )
128
+
129
+ const tree = result . test . versionTree
130
+ expect ( tree . stable . length ) . is . eql ( 1 )
131
+ expect ( tree . stable [ 0 ] . displayVersion ) . is . eql ( '2.0.0' )
132
+ expect ( tree . stable [ 0 ] . url ) . is . eql ( './version.html' )
133
+ } )
134
+
48
135
it ( 'should return an empty structure' , ( ) => {
49
136
const result = versionTree ( {
50
137
test : {
0 commit comments