Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The unit tests that are there to test comparison only check for a few cases with snapshots. When all tests
(version A < version B) are expanded to also test for SNAPSHOTs (version A-SNAPSHOT < version B-SNAPSHOT) a
lot of the tests fail. (error)     (tick) < =

With SNAPSHOT

Left

Op

Right

 

Left

Op

Right

Without SNAPSHOT

 

1

=

1

(tick)

1-SNAPSHOT

=

1-SNAPSHOT

(tick)

1

<

2

(tick)

1-SNAPSHOT

<

2-SNAPSHOT

(tick)

1.5

<

2

(tick)

1.5-SNAPSHOT

<

2-SNAPSHOT

(tick)

1

<

2.5

(tick)

1-SNAPSHOT

<

2.5-SNAPSHOT

(tick)

1

=

1.0

(tick)

1-SNAPSHOT

=

1.0-SNAPSHOT

(tick)

(tick)

1-SNAPSHOT

=

1.0.0-SNAPSHOT

(tick)

(tick)

1.0-SNAPSHOT

< =

1.0.10-SNAPSHOT (tick)

(tick)

1.1-SNAPSHOT 0

<

1.2-SNAPSHOT (tick) 1

(tick)

1.0.0-SNAPSHOT

<

1.1-SNAPSHOT

(tick)

1.1

<

1.2

(tick)

1.1-SNAPSHOT

<

1.2.0-SNAPSHOT (tick)

(tick)

1.0.0-alpha-1-SNAPSHOT

<

1.0-SNAPSHOT 1

(tick)

(error)

1.0.0-alpha-1-SNAPSHOT

<

1.0-alpha1-2-SNAPSHOT

(tick)

(tick)

1.0-alpha-1-SNAPSHOT 1.1

<

1.2.0-beta-1-SNAPSHOT (tick)

(tick)

1.0-SNAPSHOT1-SNAPSHOT

<

1.2.0-beta-1-SNAPSHOT (tick)

(tick)

1.0-SNAPSHOTalpha-SNAPSHOT 1

<

1.0-SNAPSHOT (tick)

(tick)

1.0-alpha-1-SNAPSHOT-SNAPSHOT

<

1.0-alpha-1-SNAPSHOT

(tick) (error)

(tick)

1.0-alpha-SNAPSHOT 1

<

1.0-1alpha-SNAPSHOT 2

(tick) (error)

1.0-alpha-1-SNAPSHOT

<

1.0-alpha-2-SNAPSHOT

(tick)

1.0-alpha-1

<

1.0-beta-1

(tick)

1.0-alpha-1-SNAPSHOT

<

1.0-beta-1-SNAPSHOT

(tick)

1.0

<

1.0-1

(tick)

1.0-SNAPSHOT

<

1.0-1-SNAPSHOT

(error)

1.0-1

<

1.0-2

(tick)

1.0-1-SNAPSHOT

<

1.0-2-SNAPSHOT

(error)

2.0-0

=

2.0

(tick)

2.0-0-SNAPSHOT

=

2.0-SNAPSHOT

(error)

2.0

<

2.0-1

(tick)

2.0-SNAPSHOT

<

2.0-1-SNAPSHOT

(error)

2.0.0

<

2.0-1

(tick)

2.0.0-SNAPSHOT

<

2.0-1-SNAPSHOT

(error)

2.0-0-SNAPSHOT 1

<

2.0.1

(tick)

2.0-1-SNAPSHOT

<

2.0.1-SNAPSHOT

(tick)

2.0.1-klm

< =

2.0.1-SNAPSHOT lmn

(tick) (error)

2.0.1-klm-SNAPSHOT

<

2.0.1-1lmn-SNAPSHOT

(tick) (error)

2.0.01-SNAPSHOT xyz

<

2.0-.1-SNAPSHOT

(tick) (error)

2.0.1-1xyz-SNAPSHOT

<

2.0.1-SNAPSHOT

(tick)

(tick) (error)

2.0.1-klm-SNAPSHOT

<

2.0.1-lmn-SNAPSHOT 123

(tick)

(tick)

2.0.1-xyz-SNAPSHOT

<

2.0.1-123-SNAPSHOT

(tick) (error)

2.0.1-SNAPSHOT xyz

<

2.0.1-123-SNAPSHOT

(tick)

(tick)

2.0.1-xyz-SNAPSHOT

<

2.0.1-123-SNAPSHOT (tick)

(error)

Proposal

I'm proposing the following implementation: GenericArtifactVersion.java (unit test: GenericArtifactVersionTest.java)

...