Skip to content

Commit 8b89e42

Browse files
committed
upnumber
1 parent dc28bb0 commit 8b89e42

File tree

1 file changed

+9
-11
lines changed

1 file changed

+9
-11
lines changed

core-kotlin-modules/core-kotlin-10/src/test/kotlin/com/baeldung/variableshadowing/VariableShadowingUnitTest.kt

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,12 @@ class VariableShadowingUnitTest{
1111
fun `test variable shadowing`(){
1212
val number = 10 // Top-level variable
1313

14-
fun getNumber() : Int { // top level function
14+
fun upNumber() : Int { // top level function
1515
val number = 20 // shadowing top level variable
1616
return number
1717
}
1818

19-
assertEquals(20, getNumber())
19+
assertEquals(20, upNumber())
2020
assertEquals(10, number)
2121

2222
// shadowing class member
@@ -54,10 +54,7 @@ class VariableShadowingUnitTest{
5454

5555
// shadowing in loop
5656
for (number in numbers) {
57-
val doubledNumber = number * 2
5857
val number = number * 2 // Shadowing the loop variable 'number'
59-
60-
assertEquals(doubledNumber, number)
6158
}
6259

6360

@@ -87,22 +84,26 @@ class VariableShadowingUnitTest{
8784
fun `solution to avoid shadowing`(){
8885
val topLevelNumber = 10 // Top-level variable
8986

90-
fun getNumber() : Int {
87+
fun upNumber() : Int {
9188
val localNumber = 20 // Local variable without shadowing
9289
return localNumber
9390
}
9491

95-
assertEquals(20, getNumber())
92+
assertEquals(20, upNumber())
9693
assertEquals(10, topLevelNumber)
9794

9895
// in class member
9996
class Car {
10097
val speed: Int = 100
10198

102-
fun upSpeed() : Int {
99+
fun newSpeed() : Int {
103100
val newSpeed = speed * 2 // Using a new variable name to avoid shadowing
104101
return newSpeed
105102
}
103+
104+
fun upSpeed() : Int {
105+
return this.speed * 2
106+
}
106107
}
107108

108109
assertEquals(100, Car().speed)
@@ -129,10 +130,7 @@ class VariableShadowingUnitTest{
129130

130131
// in loop
131132
for (number in numbers) {
132-
val doubledNumber = number * 2
133133
val newNumber = number * 2 // Using a new variable name to avoid shadowing
134-
135-
assertEquals(doubledNumber, newNumber)
136134
}
137135

138136
// in extension

0 commit comments

Comments
 (0)