File tree Expand file tree Collapse file tree 2 files changed +35
-2
lines changed Expand file tree Collapse file tree 2 files changed +35
-2
lines changed Original file line number Diff line number Diff line change @@ -28,11 +28,11 @@ shaka.util.Lazy = class {
28
28
29
29
/** @return {T } */
30
30
value ( ) {
31
- if ( this . value_ == undefined ) {
31
+ if ( this . value_ === undefined ) {
32
32
// Compiler complains about unknown fields without this cast.
33
33
this . value_ = /** @type {* } */ ( this . gen_ ( ) ) ;
34
34
goog . asserts . assert (
35
- this . value_ != undefined , 'Unable to create lazy value' ) ;
35
+ this . value_ !== undefined , 'Unable to create lazy value' ) ;
36
36
}
37
37
return this . value_ ;
38
38
}
Original file line number Diff line number Diff line change
1
+ /*! @license
2
+ * Shaka Player
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+
7
+ describe ( 'Lazy' , ( ) => {
8
+ it ( 'returns the same object each time' , ( ) => {
9
+ const generator = jasmine . createSpy ( 'generator' ) . and . returnValue ( { } ) ;
10
+ const lazy = new shaka . util . Lazy ( shaka . test . Util . spyFunc ( generator ) ) ;
11
+ const value = lazy . value ( ) ;
12
+ const value2 = lazy . value ( ) ;
13
+ expect ( value ) . toBe ( value2 ) ;
14
+ expect ( generator ) . toHaveBeenCalledTimes ( 1 ) ;
15
+ } ) ;
16
+
17
+ it ( 'works correctly for primitive value' , ( ) => {
18
+ const generator = jasmine . createSpy ( 'generator' ) . and . returnValue ( 7 ) ;
19
+ const lazy = new shaka . util . Lazy ( shaka . test . Util . spyFunc ( generator ) ) ;
20
+ const value = lazy . value ( ) ;
21
+ const value2 = lazy . value ( ) ;
22
+ expect ( value ) . toBe ( value2 ) ;
23
+ expect ( generator ) . toHaveBeenCalledTimes ( 1 ) ;
24
+ } ) ;
25
+
26
+ it ( 'works correctly for null' , ( ) => {
27
+ const generator = jasmine . createSpy ( 'generator' ) . and . returnValue ( null ) ;
28
+ const lazy = new shaka . util . Lazy ( shaka . test . Util . spyFunc ( generator ) ) ;
29
+ const value = lazy . value ( ) ;
30
+ expect ( value ) . toBe ( null ) ;
31
+ expect ( generator ) . toHaveBeenCalledTimes ( 1 ) ;
32
+ } ) ;
33
+ } ) ;
You can’t perform that action at this time.
0 commit comments