Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Unicode testing

Unicode testing

Scheduled Pinned Locked Moved The Lounge
comtestingbeta-testinghelp
25 Posts 18 Posters 1 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • T Tad McClellan

    So I just got out of a meeting where the testers said it would take longer to test the product because they needed to test it once with English and once with Chinese characters to make sure it was unicode compliant. When I told them that if they just test it with Chinese they should be fine. They objected to that idea because then how would you know it works for English!!! Then someone had the bright idea that well maybe we need to test for more then one language to make sure its unicode so lets through Japanese and Korean in the mix. Seriously I feel like I'm stuck in a Dilbert cartoon.

    TadMcClellan.Com

    H Offline
    H Offline
    Henry Minute
    wrote on last edited by
    #14

    Every time this sort of topic comes up in The Lounge, one member (can't remember his name for the moment). pops up and avers that Turkish will trip it up. Where is he now that you need him? Anyway, I'd add it to the list of test languages, as well.

    Henry Minute Do not read medical books! You could die of a misprint. - Mark Twain Girl: (staring) "Why do you need an icy cucumber?" “I want to report a fraud. The government is lying to us all.”

    D 1 Reply Last reply
    0
    • M Member 96

      In my experience test with English, Thai, Chinese and that European language where two a's in a row are considered a different character (I forget, Norwegian or Swedish or something like that) if you want to be sure. Otherwise just test for each market you're after.


      "Creating your own blog is about as easy as creating your own urine, and you're about as likely to find someone else interested in it." -- Lore Sjöberg

      J Offline
      J Offline
      Johann Gerell
      wrote on last edited by
      #15

      Ä: http://en.wikipedia.org/wiki/Ä[^] Ö: http://en.wikipedia.org/wiki/Ö[^]

      -- Time you enjoy wasting is not wasted time - Bertrand Russel

      M 1 Reply Last reply
      0
      • H Henry Minute

        Every time this sort of topic comes up in The Lounge, one member (can't remember his name for the moment). pops up and avers that Turkish will trip it up. Where is he now that you need him? Anyway, I'd add it to the list of test languages, as well.

        Henry Minute Do not read medical books! You could die of a misprint. - Mark Twain Girl: (staring) "Why do you need an icy cucumber?" “I want to report a fraud. The government is lying to us all.”

        D Offline
        D Offline
        Dan Neely
        wrote on last edited by
        #16

        Maunder posted it to subtle bugs recently... http://www.moserware.com/2008/02/does-your-code-pass-turkey-test.html[^]

        Today's lesson is brought to you by the word "niggardly". Remember kids, don't attribute to racism what can be explained by Scandinavian language roots. -- Robert Royall

        1 Reply Last reply
        0
        • T Tad McClellan

          So I just got out of a meeting where the testers said it would take longer to test the product because they needed to test it once with English and once with Chinese characters to make sure it was unicode compliant. When I told them that if they just test it with Chinese they should be fine. They objected to that idea because then how would you know it works for English!!! Then someone had the bright idea that well maybe we need to test for more then one language to make sure its unicode so lets through Japanese and Korean in the mix. Seriously I feel like I'm stuck in a Dilbert cartoon.

          TadMcClellan.Com

          A Offline
          A Offline
          Alan Balkany
          wrote on last edited by
          #17

          Another reason to test for multiple languages is that in some languages, some phrases get much longer than you'd expect, and this can throw off the layout of your GUI. If you're using the UTF-16 encoding (so all characters are a constant two bytes), you'll be limited to characters in the Basic Multilingual Plane, which has most modern languages and the more common Asian characters. If so, make sure it has all the Chinese characters you'll need.

          1 Reply Last reply
          0
          • T Tad McClellan

            So I just got out of a meeting where the testers said it would take longer to test the product because they needed to test it once with English and once with Chinese characters to make sure it was unicode compliant. When I told them that if they just test it with Chinese they should be fine. They objected to that idea because then how would you know it works for English!!! Then someone had the bright idea that well maybe we need to test for more then one language to make sure its unicode so lets through Japanese and Korean in the mix. Seriously I feel like I'm stuck in a Dilbert cartoon.

            TadMcClellan.Com

            P Offline
            P Offline
            pg az
            wrote on last edited by
            #18

            With e.g. a hex editor you can create say a UNICODE file without the BOM, which Notepad at least is smart enough to recognize as UNICODE-little-endian, since the odd-bytes are uniformly zero. Doing a "Save As" into UNICODE from Notepad, it likes to insert the BOM, which seems inelegant to me since "it's not really a character", if you roll-your-own parsing routines they need to know to skip over the BOM. I wonder out-there in the wide world, do real Foreign-Language-Files normally have BOM's or not, offhand I would tend to guess they DO but that could of course be completely wrong.

            pg--az

            B 1 Reply Last reply
            0
            • J Johann Gerell

              Ä: http://en.wikipedia.org/wiki/Ä[^] Ö: http://en.wikipedia.org/wiki/Ö[^]

              -- Time you enjoy wasting is not wasted time - Bertrand Russel

              M Offline
              M Offline
              Member 96
              wrote on last edited by
              #19

              Yeah something like that. It bit me in the ass years ago because all our tables in our app are named starting with an A to be distinctive and the queries threw errors on some computers and we traced it down to tables that start with AA were interpreted as that A with the dots above it.


              "Creating your own blog is about as easy as creating your own urine, and you're about as likely to find someone else interested in it." -- Lore Sjöberg

              B 1 Reply Last reply
              0
              • T Tad McClellan

                Just unicode. The point is that If Chinese works then English will work. Thats what happens when non-techinical people start making decisions about the technology.

                TadMcClellan.Com

                F Offline
                F Offline
                Fabio Franco
                wrote on last edited by
                #20

                Tad McClellan wrote:

                Thats what happens when non-techinical people start making decisions

                Oh boy, I know the feeling. And I hate it. Recently when this special non-techy manager started making some sense-less decisions I strugled not to scream to him: "Why don't you build the f#@$@% system yourslef then?":mad:

                1 Reply Last reply
                0
                • T Tad McClellan

                  So I just got out of a meeting where the testers said it would take longer to test the product because they needed to test it once with English and once with Chinese characters to make sure it was unicode compliant. When I told them that if they just test it with Chinese they should be fine. They objected to that idea because then how would you know it works for English!!! Then someone had the bright idea that well maybe we need to test for more then one language to make sure its unicode so lets through Japanese and Korean in the mix. Seriously I feel like I'm stuck in a Dilbert cartoon.

                  TadMcClellan.Com

                  T Offline
                  T Offline
                  Trevortni
                  wrote on last edited by
                  #21

                  I guess my question would be whether it's supposed to support all these different languages, or just be Unicode-compliant. If it's supposed to support different languages, it should be tested under all the languages it's supposed to support (which would actually be a translation issue, not a programming issue); otherwise, well, you already made your point.

                  1 Reply Last reply
                  0
                  • M Member 96

                    Yeah something like that. It bit me in the ass years ago because all our tables in our app are named starting with an A to be distinctive and the queries threw errors on some computers and we traced it down to tables that start with AA were interpreted as that A with the dots above it.


                    "Creating your own blog is about as easy as creating your own urine, and you're about as likely to find someone else interested in it." -- Lore Sjöberg

                    B Offline
                    B Offline
                    bjarneds
                    wrote on last edited by
                    #22

                    You are probably thinking about A with a ring (not dots, aka. umlaut) above it: http://en.wikipedia.org/wiki/Å[^]. The A with a ring is a different character, one that is used in several danish words. The old spelling of these words used the double AA instead of an A with a ring, but many names still use the double AA. Note that this letter (no matter if it is written as an A with a ring or a double AA) is the last character in the danish alphabet. This means that the result of sorting the strings "AA" and "BB" depends on the current culture. Of course, you shouldn't be required to know details like this when you are coding. Instead, you should assume nothing when it comes to cultures, characters, spelling etc. I think the MSDN article Writing Culture-Safe Managed Code (http://msdn.microsoft.com/en-us/library/ms994325.aspx[^]) may have a few surprises for most developers. So in my opinion, testing with different characters (and cultures) do make sense. Not only to make sure an application is Unicode compliant, but more importantly to catch some of the incorrect assumptions developers make about cultures etc.

                    M 1 Reply Last reply
                    0
                    • P pg az

                      With e.g. a hex editor you can create say a UNICODE file without the BOM, which Notepad at least is smart enough to recognize as UNICODE-little-endian, since the odd-bytes are uniformly zero. Doing a "Save As" into UNICODE from Notepad, it likes to insert the BOM, which seems inelegant to me since "it's not really a character", if you roll-your-own parsing routines they need to know to skip over the BOM. I wonder out-there in the wide world, do real Foreign-Language-Files normally have BOM's or not, offhand I would tend to guess they DO but that could of course be completely wrong.

                      pg--az

                      B Offline
                      B Offline
                      bjarneds
                      wrote on last edited by
                      #23

                      pg--az wrote:

                      "it's not really a character"

                      Actually, the BOM (byte-order mark) is a real character, known as "zero-width no-break space". This is a good choice, because it makes no harm to programs that just need to display the content, even if they don't skip over it (zero-width = invisible, no-break = no undesired wrapping behaviour).

                      1 Reply Last reply
                      0
                      • B bjarneds

                        You are probably thinking about A with a ring (not dots, aka. umlaut) above it: http://en.wikipedia.org/wiki/Å[^]. The A with a ring is a different character, one that is used in several danish words. The old spelling of these words used the double AA instead of an A with a ring, but many names still use the double AA. Note that this letter (no matter if it is written as an A with a ring or a double AA) is the last character in the danish alphabet. This means that the result of sorting the strings "AA" and "BB" depends on the current culture. Of course, you shouldn't be required to know details like this when you are coding. Instead, you should assume nothing when it comes to cultures, characters, spelling etc. I think the MSDN article Writing Culture-Safe Managed Code (http://msdn.microsoft.com/en-us/library/ms994325.aspx[^]) may have a few surprises for most developers. So in my opinion, testing with different characters (and cultures) do make sense. Not only to make sure an application is Unicode compliant, but more importantly to catch some of the incorrect assumptions developers make about cultures etc.

                        M Offline
                        M Offline
                        Member 96
                        wrote on last edited by
                        #24

                        I agree, my code is fine, I've always adhered to Unicode standards however this problem was in the FireBird SQL drivers, I worked around it by ensuring that all my dynamic SQL had double CAPITAL a's.


                        "Creating your own blog is about as easy as creating your own urine, and you're about as likely to find someone else interested in it." -- Lore Sjöberg

                        1 Reply Last reply
                        0
                        • T Tad McClellan

                          So I just got out of a meeting where the testers said it would take longer to test the product because they needed to test it once with English and once with Chinese characters to make sure it was unicode compliant. When I told them that if they just test it with Chinese they should be fine. They objected to that idea because then how would you know it works for English!!! Then someone had the bright idea that well maybe we need to test for more then one language to make sure its unicode so lets through Japanese and Korean in the mix. Seriously I feel like I'm stuck in a Dilbert cartoon.

                          TadMcClellan.Com

                          P Offline
                          P Offline
                          petersgyoung
                          wrote on last edited by
                          #25

                          There is case that Chinese characters work but English characters not work correctly. Chinese name can be safely represented in 4 unicode characters but it is not possible to represent English name in 4 characters. Sometimes, you need to force user to input ASCII in certain field, e.g. Product Code. Please see my blog for testing whether user is inputting ASCII or Unicode.

                          petersgyoung

                          1 Reply Last reply
                          0
                          Reply
                          • Reply as topic
                          Log in to reply
                          • Oldest to Newest
                          • Newest to Oldest
                          • Most Votes


                          • Login

                          • Don't have an account? Register

                          • Login or register to search.
                          • First post
                            Last post
                          0
                          • Categories
                          • Recent
                          • Tags
                          • Popular
                          • World
                          • Users
                          • Groups