trackler 2.0.8.33 → 2.0.8.34

Sign up to get free protection for your applications and to get access to all the features.
Files changed (35) hide show
  1. checksums.yaml +4 -4
  2. data/lib/trackler/version.rb +1 -1
  3. data/tracks/csharp/exercises/food-chain/Example.cs +2 -2
  4. data/tracks/csharp/exercises/food-chain/FoodChain.cs +2 -2
  5. data/tracks/csharp/exercises/food-chain/FoodChainTest.cs +150 -73
  6. data/tracks/csharp/exercises/luhn/LuhnTest.cs +5 -8
  7. data/tracks/csharp/generators/Data/CanonicalDataValue.cs +10 -0
  8. data/tracks/csharp/generators/Exercises/FoodChainExercise.cs +27 -0
  9. data/tracks/csharp/generators/Exercises/NthPrimeExercise.cs +1 -3
  10. data/tracks/csharp/generators/Methods/EqualityTestMethodGenerator.cs +25 -1
  11. data/tracks/csharp/generators/Methods/TestMethodGenerator.cs +16 -4
  12. data/tracks/csharp/generators/Methods/TestMethodOptions.cs +1 -0
  13. data/tracks/csharp/generators/Methods/TestMethodRenderer.cs +15 -7
  14. data/tracks/csharp/generators/Program.cs +2 -0
  15. data/tracks/java/exercises/difference-of-squares/src/example/java/{Difference.java → DifferenceOfSquaresCalculator.java} +4 -4
  16. data/tracks/java/exercises/difference-of-squares/src/main/java/DifferenceOfSquaresCalculator.java +5 -0
  17. data/tracks/java/exercises/difference-of-squares/src/test/java/{DifferenceTest.java → DifferenceOfSquaresCalculatorTest.java} +18 -11
  18. data/tracks/java/exercises/sum-of-multiples/src/example/java/SumOfMultiples.java +17 -9
  19. data/tracks/java/exercises/sum-of-multiples/src/test/java/SumOfMultiplesTest.java +73 -88
  20. data/tracks/perl6/.travis.yml +3 -0
  21. data/tracks/python/exercises/bob/bob_test.py +47 -71
  22. data/tracks/python/exercises/leap/leap_test.py +10 -11
  23. data/tracks/python/exercises/pangram/pangram_test.py +16 -16
  24. data/tracks/python/exercises/prime-factors/prime_factors_test.py +11 -21
  25. data/tracks/python/exercises/sieve/sieve_test.py +32 -24
  26. data/tracks/swift/.gitignore +3 -0
  27. data/tracks/swift/.swiftlint.yml +4 -2
  28. data/tracks/swift/exercises/kindergarten-garden/Sources/KindergartenGardenExample.swift +4 -4
  29. data/tracks/swift/exercises/kindergarten-garden/Tests/KindergartenGardenTests/KindergartenGardenTests.swift +25 -25
  30. data/tracks/swift/exercises/meetup/Sources/MeetupExample.swift +6 -6
  31. data/tracks/swift/exercises/poker/Sources/PokerExample.swift +12 -14
  32. data/tracks/swift/exercises/robot-simulator/Sources/RobotSimulatorExample.swift +6 -6
  33. data/tracks/swift/exercises/robot-simulator/Tests/RobotSimulatorTests/RobotSimulatorTests.swift +4 -4
  34. metadata +7 -5
  35. data/tracks/java/exercises/difference-of-squares/src/main/java/Difference.java +0 -5
@@ -10,11 +10,11 @@ func == (lhs: Date, rhs: Date) -> Bool {
10
10
  struct Date {
11
11
 
12
12
  enum DateFormatingOption {
13
- case yyyy_MM_dd
14
- case yyyy_MM_dd_T_HH_mm_ss
13
+ case yyyyMMdd
14
+ case yyyyMMddTHHmmss
15
15
  }
16
16
 
17
- var descriptionStyle: DateFormatingOption = .yyyy_MM_dd
17
+ var descriptionStyle: DateFormatingOption = .yyyyMMdd
18
18
 
19
19
  fileprivate var tmDateBacking: tm = tm()
20
20
 
@@ -73,8 +73,8 @@ extension Date:CustomStringConvertible {
73
73
  let dateTime = dateOnly + "T" + date[3] + ":" + date[4] + ":" + date[5]
74
74
 
75
75
  switch descriptionStyle {
76
- case .yyyy_MM_dd : return dateOnly
77
- case .yyyy_MM_dd_T_HH_mm_ss : return dateTime
76
+ case .yyyyMMdd : return dateOnly
77
+ case .yyyyMMddTHHmmss : return dateTime
78
78
  }
79
79
  }
80
80
  }
@@ -85,7 +85,7 @@ extension Date {
85
85
  guard let date = Date.dateFromString(from) else { return nil }
86
86
  tmDateBacking = date.tmDateBacking
87
87
  if from.characters.count > 10 {
88
- self.descriptionStyle = .yyyy_MM_dd_T_HH_mm_ss
88
+ self.descriptionStyle = .yyyyMMddTHHmmss
89
89
  }
90
90
  }
91
91
 
@@ -68,8 +68,7 @@ enum HandRank {
68
68
  toReturn[each] = (toReturn[each] ?? 0) + 1
69
69
  }
70
70
  }
71
- let result = toReturn.map({ key, value in return (rank:key, count:value) }).sorted(by: {
72
- (one, two) in
71
+ let result = toReturn.map({ key, value in return (rank:key, count:value) }).sorted(by: { (one, two) in
73
72
  return one.count == two.count ? one.rank > two.rank : one.count > two.count
74
73
  })
75
74
  return result
@@ -79,7 +78,7 @@ enum HandRank {
79
78
  let suits = inputHand.hand.map({ $0.suit })
80
79
  let first = suits[0]
81
80
  for each in suits {
82
- guard first == each else { return (false, .None) }
81
+ guard first == each else { return (false, .none) }
83
82
  }
84
83
  return (true, first)
85
84
  }
@@ -88,7 +87,7 @@ enum HandRank {
88
87
  let sorted = inputHand.hand.sorted(by: { $0.rank < $1.rank })
89
88
  let first = sorted[0].rank.rawValue
90
89
  for (index, each) in sorted.enumerated() {
91
- if each.rank.rawValue != index + first {
90
+ guard each.rank.rawValue != index + first else { continue }
92
91
  // checks for Ace as the lowest card
93
92
  guard let aceIndex = inputHand.hand.index(where: { $0.rank.rawValue == 14 })else { return (false, .ace) }
94
93
  var replacedAced = inputHand.hand.map({ $0.rank.rawValue })
@@ -98,7 +97,6 @@ enum HandRank {
98
97
  for (idx, eachVal) in replacedAced.enumerated() {
99
98
  guard eachVal == firstVal + idx else { return (false, .ace) }
100
99
  }
101
- }
102
100
  }
103
101
  let last = sorted[sorted.count - 1].rank
104
102
  return (true, last)
@@ -318,16 +316,16 @@ enum Rank: Int {
318
316
  }
319
317
 
320
318
  enum Suit: String {
321
- case Spades, Hearts, Diamonds, Clubs
322
- case None
319
+ case spades, hearts, diamonds, clubs
320
+ case none
323
321
 
324
322
  init?(_ suit: String) {
325
323
 
326
324
  switch suit {
327
- case "♡": self = .Hearts
328
- case "♢": self = .Diamonds
329
- case "♧": self = .Clubs
330
- case "♤": self = .Spades
325
+ case "♡": self = .hearts
326
+ case "♢": self = .diamonds
327
+ case "♧": self = .clubs
328
+ case "♤": self = .spades
331
329
  case _ : return nil
332
330
  }
333
331
  }
@@ -350,9 +348,9 @@ func < (lhs: Suit, rhs: Suit) -> Bool {
350
348
  switch (lhs, rhs) {
351
349
  case (_, _) where lhs == rhs:
352
350
  return false
353
- case (.Spades, _),
354
- (.Hearts, .Diamonds), (.Hearts, .Clubs),
355
- (.Diamonds, .Clubs):
351
+ case (.spades, _),
352
+ (.hearts, .diamonds), (.hearts, .clubs),
353
+ (.diamonds, .clubs):
356
354
  return false
357
355
  default:
358
356
  return true
@@ -10,9 +10,9 @@ struct SimulatedRobot {
10
10
  }
11
11
 
12
12
  enum Instruction: String {
13
- case TurnLeft = "L"
14
- case TurnRight = "R"
15
- case Advance = "A"
13
+ case turnLeft = "L"
14
+ case turnRight = "R"
15
+ case advance = "A"
16
16
  }
17
17
 
18
18
  var bearing: Direction = .north
@@ -82,9 +82,9 @@ struct SimulatedRobot {
82
82
  mutating func evaluate(_ commands: String) {
83
83
  for instruction in instructions(commands) {
84
84
  switch instruction {
85
- case .TurnLeft: turnLeft()
86
- case .TurnRight: turnRight()
87
- case .Advance: advance()
85
+ case .turnLeft: turnLeft()
86
+ case .turnRight: turnRight()
87
+ case .advance: advance()
88
88
  }
89
89
  }
90
90
  }
@@ -111,19 +111,19 @@ class RobotSimulatorTests: XCTestCase {
111
111
  }
112
112
 
113
113
  func testInstructionForTurningLeft() {
114
- XCTAssertEqual([.TurnLeft], robot.instructions("L"))
114
+ XCTAssertEqual([.turnLeft], robot.instructions("L"))
115
115
  }
116
116
 
117
117
  func testInstructionForTurningRight() {
118
- XCTAssertEqual([.TurnRight], robot.instructions("R"))
118
+ XCTAssertEqual([.turnRight], robot.instructions("R"))
119
119
  }
120
120
 
121
121
  func testInstructionForAdvancing() {
122
- XCTAssertEqual([.Advance], robot.instructions("A"))
122
+ XCTAssertEqual([.advance], robot.instructions("A"))
123
123
  }
124
124
 
125
125
  func testSeriesOfInstructions() {
126
- XCTAssertEqual([.TurnRight, .Advance, .Advance, .TurnLeft], robot.instructions("RAAL"))
126
+ XCTAssertEqual([.turnRight, .advance, .advance, .turnLeft], robot.instructions("RAAL"))
127
127
  }
128
128
 
129
129
  func testInstructRobot() {
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: trackler
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.8.33
4
+ version: 2.0.8.34
5
5
  platform: ruby
6
6
  authors:
7
7
  - Katrina Owen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-03-27 00:00:00.000000000 Z
11
+ date: 2017-03-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rubyzip
@@ -1837,12 +1837,14 @@ files:
1837
1837
  - tracks/csharp/generators/Data/CanonicalDataCaseJsonConverter.cs
1838
1838
  - tracks/csharp/generators/Data/CanonicalDataCasesJsonConverter.cs
1839
1839
  - tracks/csharp/generators/Data/CanonicalDataParser.cs
1840
+ - tracks/csharp/generators/Data/CanonicalDataValue.cs
1840
1841
  - tracks/csharp/generators/Data/ExerciseCollection.cs
1841
1842
  - tracks/csharp/generators/Exercises/AcronymExercise.cs
1842
1843
  - tracks/csharp/generators/Exercises/AtbashCipherExercise.cs
1843
1844
  - tracks/csharp/generators/Exercises/BooleanExercise.cs
1844
1845
  - tracks/csharp/generators/Exercises/EqualityExercise.cs
1845
1846
  - tracks/csharp/generators/Exercises/Exercise.cs
1847
+ - tracks/csharp/generators/Exercises/FoodChainExercise.cs
1846
1848
  - tracks/csharp/generators/Exercises/IsogramExercise.cs
1847
1849
  - tracks/csharp/generators/Exercises/LeapExercise.cs
1848
1850
  - tracks/csharp/generators/Exercises/LuhnExercise.cs
@@ -4285,9 +4287,9 @@ files:
4285
4287
  - tracks/java/exercises/diamond/src/main/java/DiamondPrinter.java
4286
4288
  - tracks/java/exercises/diamond/src/test/java/DiamondPrinterTest.java
4287
4289
  - tracks/java/exercises/difference-of-squares/build.gradle
4288
- - tracks/java/exercises/difference-of-squares/src/example/java/Difference.java
4289
- - tracks/java/exercises/difference-of-squares/src/main/java/Difference.java
4290
- - tracks/java/exercises/difference-of-squares/src/test/java/DifferenceTest.java
4290
+ - tracks/java/exercises/difference-of-squares/src/example/java/DifferenceOfSquaresCalculator.java
4291
+ - tracks/java/exercises/difference-of-squares/src/main/java/DifferenceOfSquaresCalculator.java
4292
+ - tracks/java/exercises/difference-of-squares/src/test/java/DifferenceOfSquaresCalculatorTest.java
4291
4293
  - tracks/java/exercises/etl/build.gradle
4292
4294
  - tracks/java/exercises/etl/src/example/java/Etl.java
4293
4295
  - tracks/java/exercises/etl/src/main/java/Etl.java
@@ -1,5 +0,0 @@
1
- public final class Difference {
2
-
3
-
4
-
5
- }