1+ describe ( "Tests Kotlin companion objects support" , function ( ) {
2+ it ( "Test Kotlin companion object without a name should be supported" , function ( ) {
3+ var stringFromCompanion = com . tns . tests . kotlin . companions . KotlinClassWithCompanion . Companion . getStringFromCompanion ( ) ;
4+ expect ( stringFromCompanion ) . toBe ( "testCompanion" ) ;
5+
6+ var providedStringFromCompanion = com . tns . tests . kotlin . companions . KotlinClassWithCompanion . Companion . getProvidedStringFromCompanion ( "providedString" ) ;
7+ expect ( providedStringFromCompanion ) . toBe ( "providedString" ) ;
8+
9+ var simpleObjectFromCompanion = com . tns . tests . kotlin . companions . KotlinClassWithCompanion . Companion . getSimpleObjectFromCompanion ( ) ;
10+ expect ( simpleObjectFromCompanion . getSomeString ( ) ) . toBe ( "test" ) ;
11+
12+ var simpleKotlinObject = new com . tns . tests . kotlin . SimpleKotlinObject ( ) ;
13+ var providedSimpleObjectFromCompanion = com . tns . tests . kotlin . companions . KotlinClassWithCompanion . Companion . getProvidedSimpleObjectFromCompanion ( simpleKotlinObject ) ;
14+ expect ( simpleKotlinObject . equals ( providedSimpleObjectFromCompanion ) ) . toBe ( true ) ;
15+
16+ var stringJvmStaticFromCompanion = com . tns . tests . kotlin . companions . KotlinClassWithCompanion . getStringJvmStaticFromCompanion ( ) ;
17+ expect ( stringJvmStaticFromCompanion ) . toBe ( "testCompanion" ) ;
18+
19+ var providedStringJvmStaticFromCompanion = com . tns . tests . kotlin . companions . KotlinClassWithCompanion . getProvidedStringJvmStaticFromCompanion ( "providedString" ) ;
20+ expect ( providedStringJvmStaticFromCompanion ) . toBe ( "providedString" ) ;
21+ } ) ;
22+
23+ it ( "Test Kotlin named companion object without a name should be supported" , function ( ) {
24+ var stringFromCompanion = com . tns . tests . kotlin . companions . KotlinClassWithNamedCompanion . NamedCompanion . getStringFromNamedCompanion ( ) ;
25+ expect ( stringFromCompanion ) . toBe ( "testCompanion" ) ;
26+
27+ var providedStringFromCompanion = com . tns . tests . kotlin . companions . KotlinClassWithNamedCompanion . NamedCompanion . getProvidedStringFromNamedCompanion ( "providedString" ) ;
28+ expect ( providedStringFromCompanion ) . toBe ( "providedString" ) ;
29+
30+ var simpleObjectFromCompanion = com . tns . tests . kotlin . companions . KotlinClassWithNamedCompanion . NamedCompanion . getSimpleObjectFromNamedCompanion ( ) ;
31+ expect ( simpleObjectFromCompanion . getSomeString ( ) ) . toBe ( "test" ) ;
32+
33+ var simpleKotlinObject = new com . tns . tests . kotlin . SimpleKotlinObject ( ) ;
34+ var providedSimpleObjectFromCompanion = com . tns . tests . kotlin . companions . KotlinClassWithNamedCompanion . NamedCompanion . getProvidedSimpleObjectFromNamedCompanion ( simpleKotlinObject ) ;
35+ expect ( simpleKotlinObject . equals ( providedSimpleObjectFromCompanion ) ) . toBe ( true ) ;
36+
37+ var stringJvmStaticFromCompanion = com . tns . tests . kotlin . companions . KotlinClassWithNamedCompanion . getStringJvmStaticFromNamedCompanion ( ) ;
38+ expect ( stringJvmStaticFromCompanion ) . toBe ( "testCompanion" ) ;
39+
40+ var providedStringJvmStaticFromCompanion = com . tns . tests . kotlin . companions . KotlinClassWithNamedCompanion . getProvidedStringJvmStaticFromNamedCompanion ( "providedString" ) ;
41+ expect ( providedStringJvmStaticFromCompanion ) . toBe ( "providedString" ) ;
42+ } ) ;
43+
44+
45+ it ( "Test Kotlin interface companion object without a name should be supported" , function ( ) {
46+ var stringFromCompanion = com . tns . tests . kotlin . companions . KotlinInterfaceWithCompanion . Companion . getStringFromCompanion ( ) ;
47+ expect ( stringFromCompanion ) . toBe ( "testCompanion" ) ;
48+
49+ var providedStringFromCompanion = com . tns . tests . kotlin . companions . KotlinInterfaceWithCompanion . Companion . getProvidedStringFromCompanion ( "providedString" ) ;
50+ expect ( providedStringFromCompanion ) . toBe ( "providedString" ) ;
51+
52+ var simpleObjectFromCompanion = com . tns . tests . kotlin . companions . KotlinInterfaceWithCompanion . Companion . getSimpleObjectFromCompanion ( ) ;
53+ expect ( simpleObjectFromCompanion . getSomeString ( ) ) . toBe ( "test" ) ;
54+
55+ var simpleKotlinObject = new com . tns . tests . kotlin . SimpleKotlinObject ( ) ;
56+ var providedSimpleObjectFromCompanion = com . tns . tests . kotlin . companions . KotlinInterfaceWithCompanion . Companion . getProvidedSimpleObjectFromCompanion ( simpleKotlinObject ) ;
57+ expect ( simpleKotlinObject . equals ( providedSimpleObjectFromCompanion ) ) . toBe ( true ) ;
58+
59+ var stringJvmStaticFromCompanion = com . tns . tests . kotlin . companions . KotlinInterfaceWithCompanion . getStringJvmStaticFromCompanion ( ) ;
60+ expect ( stringJvmStaticFromCompanion ) . toBe ( "testCompanion" ) ;
61+
62+ var providedStringJvmStaticFromCompanion = com . tns . tests . kotlin . companions . KotlinInterfaceWithCompanion . getProvidedStringJvmStaticFromCompanion ( "providedString" ) ;
63+ expect ( providedStringJvmStaticFromCompanion ) . toBe ( "providedString" ) ;
64+ } ) ;
65+
66+ it ( "Test Kotlin interface named companion object without a name should be supported" , function ( ) {
67+ var stringFromCompanion = com . tns . tests . kotlin . companions . KotlinInterfaceWithNamedCompanion . NamedCompanion . getStringFromNamedCompanion ( ) ;
68+ expect ( stringFromCompanion ) . toBe ( "testCompanion" ) ;
69+
70+ var providedStringFromCompanion = com . tns . tests . kotlin . companions . KotlinInterfaceWithNamedCompanion . NamedCompanion . getProvidedStringFromNamedCompanion ( "providedString" ) ;
71+ expect ( providedStringFromCompanion ) . toBe ( "providedString" ) ;
72+
73+ var simpleObjectFromCompanion = com . tns . tests . kotlin . companions . KotlinInterfaceWithNamedCompanion . NamedCompanion . getSimpleObjectFromNamedCompanion ( ) ;
74+ expect ( simpleObjectFromCompanion . getSomeString ( ) ) . toBe ( "test" ) ;
75+
76+ var simpleKotlinObject = new com . tns . tests . kotlin . SimpleKotlinObject ( ) ;
77+ var providedSimpleObjectFromCompanion = com . tns . tests . kotlin . companions . KotlinInterfaceWithNamedCompanion . NamedCompanion . getProvidedSimpleObjectFromNamedCompanion ( simpleKotlinObject ) ;
78+ expect ( simpleKotlinObject . equals ( providedSimpleObjectFromCompanion ) ) . toBe ( true ) ;
79+
80+ var stringJvmStaticFromCompanion = com . tns . tests . kotlin . companions . KotlinInterfaceWithNamedCompanion . getStringJvmStaticFromNamedCompanion ( ) ;
81+ expect ( stringJvmStaticFromCompanion ) . toBe ( "testCompanion" ) ;
82+
83+ var providedStringJvmStaticFromCompanion = com . tns . tests . kotlin . companions . KotlinInterfaceWithNamedCompanion . getProvidedStringJvmStaticFromNamedCompanion ( "providedString" ) ;
84+ expect ( providedStringJvmStaticFromCompanion ) . toBe ( "providedString" ) ;
85+ } ) ;
86+
87+ it ( "Test Kotlin class whose parent class contains a companion should work" , function ( ) {
88+ var child = new com . tns . tests . kotlin . companions . ChildKotlinClass ( ) ;
89+ var str = child . getStringFromCompanion ( ) ;
90+ expect ( str ) . toBe ( "someString" ) ;
91+ } ) ;
92+
93+ } ) ;
0 commit comments