Newer
Older
dub_jkp / test / version-spec.sh
  1. #!/usr/bin/env bash
  2.  
  3. . $(dirname "${BASH_SOURCE[0]}")/common.sh
  4.  
  5. $DUB add-local "$CURR_DIR/version-spec/newfoo"
  6. $DUB add-local "$CURR_DIR/version-spec/oldfoo"
  7.  
  8. [[ $($DUB describe foo | grep path | head -n 1) == *"/newfoo/"* ]]
  9. [[ $($DUB describe foo@1.0.0 | grep path | head -n 1) == *"/newfoo/"* ]]
  10. [[ $($DUB describe foo@0.1.0 | grep path | head -n 1) == *"/oldfoo/"* ]]
  11.  
  12. [[ $($DUB describe foo@'<1.0.0' | grep path | head -n 1) == *"/oldfoo/"* ]]
  13. [[ $($DUB describe foo@'>0.1.0' | grep path | head -n 1) == *"/newfoo/"* ]]
  14. [[ $($DUB describe foo@'>0.2.0' | grep path | head -n 1) == *"/newfoo/"* ]]
  15. [[ $($DUB describe foo@'<=0.2.0' | grep path | head -n 1) == *"/oldfoo/"* ]]
  16. [[ $($DUB describe foo@'*' | grep path | head -n 1) == *"/newfoo/"* ]]
  17. [[ $($DUB describe foo@'>0.0.1 <2.0.0' | grep path | head -n 1) == *"/newfoo/"* ]]
  18.  
  19. [[ $($DUB test foo | head -n 1) == *"/newfoo/" ]]
  20. [[ $($DUB test foo@1.0.0 | head -n 1) == *"/newfoo/" ]]
  21. [[ $($DUB test foo@0.1.0 | head -n 1) == *"/oldfoo/" ]]
  22.  
  23. [[ $($DUB lint foo | tail -n 1) == *"/newfoo/" ]]
  24. [[ $($DUB lint foo@1.0.0 | tail -n 1) == *"/newfoo/" ]]
  25. [[ $($DUB lint foo@0.1.0 | tail -n 1) == *"/oldfoo/" ]]
  26.  
  27. [[ $($DUB generate cmake foo | head -n 1) == *"/newfoo/" ]]
  28. [[ $($DUB generate cmake foo@1.0.0 | head -n 1) == *"/newfoo/" ]]
  29. [[ $($DUB generate cmake foo@0.1.0 | head -n 1) == *"/oldfoo/" ]]
  30.  
  31. [[ $($DUB build -n foo | head -n 1) == *"/newfoo/" ]]
  32. [[ $($DUB build -n foo@1.0.0 | head -n 1) == *"/newfoo/" ]]
  33. [[ $($DUB build -n foo@0.1.0 | head -n 1) == *"/oldfoo/" ]]
  34.  
  35. [[ $($DUB run -n foo | tail -n 1) == 'new-foo' ]]
  36. [[ $($DUB run -n foo@1.0.0 | tail -n 1) == 'new-foo' ]]
  37. [[ $($DUB run -n foo@0.1.0 | tail -n 1) == 'old-foo' ]]
  38.  
  39. [[ $($DUB list foo | wc -l) == '4' ]]
  40. [[ $($DUB list foo@0.1.0 | wc -l) == '3' ]]
  41. [[ $($DUB list foo@'>0.1.0' | head -n 2 | tail -n 1) == *"/newfoo"* ]]
  42.  
  43. $DUB remove-local "$CURR_DIR/version-spec/newfoo"
  44. $DUB remove-local "$CURR_DIR/version-spec/oldfoo"
  45.  
  46. $DUB fetch dub@1.9.0 && [ -d $HOME/.dub/packages/dub-1.9.0/dub ]
  47. $DUB fetch dub=1.10.0 && [ -d $HOME/.dub/packages/dub-1.10.0/dub ]
  48. $DUB remove dub@1.9.0
  49. $DUB remove dub=1.10.0
  50. if [ -d $HOME/.dub/packages/dub-1.9.0/dub ] || [ -d $HOME/.dub/packages/dub-1.10.0/dub ]; then
  51. die $LINENO 'Failed to remove specified versions'
  52. fi