Skip to content

Commit

Permalink
v1.16.9. Improvement.
Browse files Browse the repository at this point in the history
- v1.16.9 February 16, 2013
	- `balUtilModules` changes:
		- Added `getLocaleCode`
		- Added `getCountryCode`
		- Added `getLanguageCode`
  • Loading branch information
balupton committed Mar 7, 2013
1 parent 39e6c44 commit 65b10d4
Show file tree
Hide file tree
Showing 6 changed files with 135 additions and 10 deletions.
6 changes: 6 additions & 0 deletions History.md
@@ -1,5 +1,11 @@
## History

- v1.16.9 February 16, 2013
- `balUtilModules` changes:
- Added `getLocaleCode`
- Added `getCountryCode`
- Added `getLanguageCode`

- v1.16.8 February 16, 2013
- `balUtilModules` changes:
- `spawnMultiple`, `execMultiple`: now accept a `tasksMode` option that can be `serial` (default) or `parallel`
Expand Down
35 changes: 30 additions & 5 deletions out/lib/modules.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

43 changes: 43 additions & 0 deletions out/test/modules.test.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
@@ -1,6 +1,6 @@
{
"name": "bal-util",
"version": "1.16.8",
"version": "1.16.9",
"description": "Common utility functions for Node.js used and maintained by Benjamin Lupton",
"homepage": "https://github.com/balupton/bal-util",
"keywords": [
Expand Down
26 changes: 22 additions & 4 deletions src/lib/modules.coffee
Expand Up @@ -26,10 +26,25 @@ balUtilModules =
# Require the file without adding it into the cache
requireFresh: (path) ->
path = require('path').resolve(path)
delete require.cache[path] # clear require cache for the config file
result = require(path)
delete require.cache[path] # clear require cache for the config file
return result
delete require

# Get Locale Code
getLocaleCode: (lang=null) ->
lang ?= (process.env.LANG or '')
localeCode = lang.replace(/\..+/,'').replace('-','_').toLowerCase() or null
return localeCode

# Get Language Code
getLanguageCode: (localeCode=null) ->
localeCode = balUtilModules.getLocaleCode(localeCode)
languageCode = localeCode.replace(/^([a-z]+)[_-]([a-z]+)$/i,'$1').toLowerCase() or null
return languageCode

# Get Country Code
getCountryCode: (localeCode=null) ->
localeCode = balUtilModules.getLocaleCode(localeCode)
countryCode = localeCode.replace(/^([a-z]+)[_-]([a-z]+)$/i,'$2').toLowerCase() or null
return countryCode


# =================================
Expand All @@ -40,6 +55,9 @@ balUtilModules =
isWindows: ->
return isWindows

# Get Locale Code



# =====================================
# Open and Close Process
Expand Down
33 changes: 33 additions & 0 deletions src/test/modules.test.coffee
Expand Up @@ -11,6 +11,39 @@ travis = process.env.TRAVIS_NODE_VERSION?

joe.describe 'modules', (describe,it) ->

describe 'locale', (describe,it) ->
describe 'getLocaleCode', (describe,it) ->
it 'should fetch something', ->
localeCode = balUtil.getLocaleCode()
console.log('localeCode:', localeCode)
assert.ok(localeCode)

it 'should fetch something when passed something', ->
localeCode = balUtil.getLocaleCode('fr-CH')
assert.equal(localeCode, 'fr_ch')
localeCode = balUtil.getLocaleCode('fr_CH')
assert.equal(localeCode, 'fr_ch')

describe 'getCountryCode', (describe,it) ->
it 'should fetch something', ->
countryCode = balUtil.getCountryCode()
console.log('countryCode:', countryCode)
assert.ok(countryCode)

it 'should fetch something when passed something', ->
countryCode = balUtil.getCountryCode('fr-CH')
assert.equal(countryCode, 'ch')

describe 'getLanguageCode', (describe,it) ->
it 'should fetch something', ->
languageCode = balUtil.getLanguageCode()
console.log('languageCode:', languageCode)
assert.ok(languageCode)

it 'should fetch something when passed something', ->
languageCode = balUtil.getLanguageCode('fr-CH')
assert.equal(languageCode, 'fr')

describe 'getHomePath', (describe,it) ->
it 'should fetch something', (done) ->
balUtil.getHomePath (err,path) ->
Expand Down

0 comments on commit 65b10d4

Please sign in to comment.