Opened 10 months ago

Last modified 6 weeks ago

#6337 new defect

CMS test server is case insensitive

Reported by: juliandoucette Assignee: atudor
Priority: P3 Milestone:
Module: Sitescripts Keywords:
Cc: kvas, jsonesen Blocked By: #7019
Blocking: Platform: Unknown / Cross platform
Ready: yes Confidential: no
Tester: Unknown Verified working: no
Review URL(s):

Description

Environment

OS X, brew python + dependencies installed by pip.

How to reproduce

  1. Add a page to any website containing an image with a path that includes (or doesn't include) a capital letter
  2. Place an image at the path specified on the page except change the case of any letter in the file name

Observed behaviour

The image will display (no matter the case).

Expected behaviour

The image should be case sensitive or configurable to be case sensitive or not (because our production systems are case sensitive and mercurial will not recognize a file name case change as a change on filesystems that are not case sensitive).

Change History (3)

comment:1 Changed 10 months ago by kvas

  • Priority changed from Unknown to P3
  • Ready set

Implementation notes:

  • Unfortunately (or maybe fortunately...) this bug is only visible on Mac OS X (the file system of Mac OS X is case-insensitive), so whoever works on this ticket would need a Mac.
  • We should add a couple of tests, using an image and a page with a name that contains one capital letter and an expected output (indicating that the page/image is missing) for the same name with all small letters. This should fit well in the test_page_outputs.py framework and will also allow us to test 404 errors in the server.
  • Here's a post with some ideas about how to do case detection in filenames.
  • Be careful to not break the correct handling of multiple files that only differ by letter case on case-sensitive filesystems. Perhaps we could add a test for it that would be skipped on Mac OS X (since it would fail there). Unfortunately this would require more serious extensions to test_page_outputs.py.

comment:2 Changed 6 weeks ago by atudor

  • Owner set to atudor

comment:3 Changed 6 weeks ago by atudor

  • Blocked By 7019 added
Note: See TracTickets for help on using tickets.