The Trunk: VersionNumberTests-fbs.4.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: VersionNumberTests-fbs.4.mcz

commits-2
Frank Shearar uploaded a new version of VersionNumberTests to project The Trunk:
http://source.squeak.org/trunk/VersionNumberTests-fbs.4.mcz

==================== Summary ====================

Name: VersionNumberTests-fbs.4
Author: fbs
Time: 6 November 2013, 6:43:26.326 pm
UUID: 953a944c-9648-dd4b-898e-9e10e0507b91
Ancestors: VersionNumberTests-nice.3

More #shouldnt:raise: Error fixes.

=============== Diff against VersionNumberTests-nice.3 ===============

Item was changed:
  ----- Method: VersionNumberTest>>testAsVersion (in category 'Tests') -----
  testAsVersion
  "note: a version number string '3 2 1' will only consider the first number as a version, ignoring the trailing '2 1'. Whether it is a desired feature or not should be determined."
 
  | numbers |
  numbers := {
  '' -> #(). '1 '-> #(1). '1.2' -> #(1 2). '3.4.5' -> #(3 4 5).
  '6.7.890' -> #(6 7 890). '9 8' -> #(9). '98 7 6' -> #(98). '54.3 2 1' -> #(54 3)
  }.
 
  numbers do: [:item | | version |
  version := (item key) asVersion.
 
  self assert: (VersionNumber = version class).
  self assert: ((item value) = version numbers).
  ].
 
+ self assert: 9999999999999999999 equals: '9999999999999999999' asVersion numbers first.
- self shouldnt: ['9999999999999999999' asVersion] raise: TestResult error.
 
  self should: ['-1' asVersion] raise: TestResult error.
  self should: [' 1' asVersion] raise: TestResult error. "notice leading space!!"
  self should: ['version' asVersion] raise: TestResult error.
  self should: ['1.2.10.20.-1.4' asVersion] raise: TestResult error.
+ self should: ['1.2.10.20.R4' asVersion] raise: TestResult error.!
- self should: ['1.2.10.20.R4' asVersion] raise: TestResult error.
- !

Item was changed:
  ----- Method: VersionNumberTest>>testFromCollection (in category 'Tests') -----
  testFromCollection
  | numbers |
  numbers := #(#(1) #(1 2) #(3 4 5) #(6 7 890)).
 
  numbers do: [:item | | version |
  version := VersionNumber fromCollection: item.
 
  self assert: (VersionNumber = version class).
  self assert: (item = version numbers).
  ].
 
+ self assert: #() equals: (VersionNumber fromCollection: #()) numbers.
+ self assert: #(9999999999999999999) equals: (VersionNumber fromCollection: #(9999999999999999999)) numbers.
- self shouldnt: [VersionNumber fromCollection: #()] raise: TestResult error.
- self shouldnt: [VersionNumber fromCollection: #(9999999999999999999)] raise: TestResult error.
 
  self should: [VersionNumber fromCollection: #(0)] raise: TestResult error.
  self should: [VersionNumber fromCollection: #(-1)] raise: TestResult error.
  self should: [VersionNumber fromCollection: #(1 2 10 20 -1 4)] raise: TestResult error.
  self should: [VersionNumber fromCollection: #(1 2 10 20 '1' 4)] raise: TestResult error.
  self should: [VersionNumber fromCollection: #('version')] raise: TestResult error.
  !

Item was changed:
  ----- Method: VersionNumberTest>>testFromString (in category 'Tests') -----
  testFromString
  "note: a version number string '3 2 1' will only consider the first number as a version, ignoring the trailing '2 1'. Whether it is a desired feature or not should be determined."
 
  | numbers |
  numbers := {
  '' -> #(). '1 '-> #(1). '1.2' -> #(1 2). '3.4.5' -> #(3 4 5).
  '6.7.890' -> #(6 7 890). '9 8' -> #(9). '98 7 6' -> #(98). '54.3 2 1' -> #(54 3)
  }.
 
  numbers do: [:item | | version |
  version := VersionNumber fromString: (item key).
 
  self assert: (VersionNumber = version class).
  self assert: ((item value) = version numbers).
  ].
 
+ self assert: #(9999999999999999999) equals: (VersionNumber fromString: '9999999999999999999') numbers.
- self shouldnt: [VersionNumber fromString: '9999999999999999999'] raise: TestResult error.
 
  self should: [VersionNumber fromString: '-1'] raise: TestResult error.
  self should: [VersionNumber fromString: ' 1'] raise: TestResult error. "notice leading space!!"
  self should: [VersionNumber fromString: 'version'] raise: TestResult error.
  self should: [VersionNumber fromString: '1.2.10.20.-1.4'] raise: TestResult error.
  self should: [VersionNumber fromString: '1.2.10.20.R4'] raise: TestResult error.
  !

Item was changed:
  ----- Method: VersionNumberTest>>testInitializeNumbers (in category 'Tests') -----
  testInitializeNumbers
  | numbers |
  numbers := #(#(1) #(1 2) #(3 4 5) #(6 7 890)).
 
  numbers do: [:item | | version |
  version := VersionNumber new initializeNumbers: item.
 
  self assert: (VersionNumber = version class).
  self assert: (item = version numbers).
  ].
 
+ self assert: #() equals: (VersionNumber new initializeNumbers: #()) numbers.
+ self assert: #(9999999999999999999) equals: (VersionNumber new initializeNumbers: #(9999999999999999999)) numbers.
- self shouldnt: [VersionNumber new initializeNumbers: #()] raise: TestResult error.
- self shouldnt: [VersionNumber new initializeNumbers: #(9999999999999999999)] raise: TestResult error.
 
  self should: [VersionNumber new initializeNumbers: #(0)] raise: TestResult error.
  self should: [VersionNumber new initializeNumbers: #(-1)] raise: TestResult error.
  self should: [VersionNumber new initializeNumbers: #(1 2 10 20 -1 4)] raise: TestResult error.
  self should: [VersionNumber new initializeNumbers: #(1 2 10 20 '1' 4)] raise: TestResult error.
  self should: [VersionNumber new initializeNumbers: #('version')] raise: TestResult error.
  !