Comparing version 1.2.9 to 1.2.10
@@ -81,3 +81,4 @@ var path = require('path'); | ||
Mime.prototype.extension = function(mimeType) { | ||
return this.extensions[mimeType]; | ||
var type = mimeType.match(/^\s*([^;\s]*)(?:;|\s|$)/)[1].toLowerCase(); | ||
return this.extensions[type]; | ||
}; | ||
@@ -84,0 +85,0 @@ |
@@ -21,3 +21,3 @@ { | ||
"repository": {"url": "https://github.com/broofa/node-mime", "type": "git"}, | ||
"version": "1.2.9" | ||
"version": "1.2.10" | ||
} |
@@ -14,3 +14,3 @@ # mime | ||
### mime.lookup(path) | ||
Get the mime type associated with a file. Performs a case-insensitive lookup using the extension in `path` (the substring after the last '/' or '.'). E.g. | ||
Get the mime type associated with a file, if no mime type is found `application/octet-stream` is returned. Performs a case-insensitive lookup using the extension in `path` (the substring after the last '/' or '.'). E.g. | ||
@@ -24,2 +24,5 @@ var mime = require('mime'); | ||
### mime.default_type | ||
Sets the mime type returned when `mime.lookup` fails to find the extension searched for. (Default is `application/octet-stream`.) | ||
### mime.extension(type) | ||
@@ -26,0 +29,0 @@ Get the default extension for `type` |
29
test.js
@@ -7,2 +7,3 @@ /** | ||
var assert = require('assert'); | ||
var path = require('path'); | ||
@@ -39,2 +40,9 @@ function eq(a, b) { | ||
eq('bin', mime.extension('application/octet-stream')); | ||
eq('bin', mime.extension('application/octet-stream ')); | ||
eq('html', mime.extension(' text/html; charset=UTF-8')); | ||
eq('html', mime.extension('text/html; charset=UTF-8 ')); | ||
eq('html', mime.extension('text/html; charset=UTF-8')); | ||
eq('html', mime.extension('text/html ; charset=UTF-8')); | ||
eq('html', mime.extension('text/html;charset=UTF-8')); | ||
eq('html', mime.extension('text/Html;charset=UTF-8')); | ||
eq(undefined, mime.extension('constructor')); | ||
@@ -46,4 +54,6 @@ | ||
eq('application/font-woff', mime.lookup('file.woff')); | ||
eq('application/octet-stream', mime.lookup('file.buffer')); | ||
eq('audio/mp4', mime.lookup('file.m4a')); | ||
eq('font/opentype', mime.lookup('file.otf')); | ||
@@ -58,2 +68,21 @@ // | ||
// | ||
// Test for overlaps between mime.types and node.types | ||
// | ||
var apacheTypes = new mime.Mime(), nodeTypes = new mime.Mime(); | ||
apacheTypes.load(path.join(__dirname, 'types/mime.types')); | ||
nodeTypes.load(path.join(__dirname, 'types/node.types')); | ||
var keys = [].concat(Object.keys(apacheTypes.types)) | ||
.concat(Object.keys(nodeTypes.types)); | ||
keys.sort(); | ||
for (var i = 1; i < keys.length; i++) { | ||
if (keys[i] == keys[i-1]) { | ||
console.warn('Warning: ' + | ||
'node.types defines ' + keys[i] + '->' + nodeTypes.types[keys[i]] + | ||
', mime.types defines ' + keys[i] + '->' + apacheTypes.types[keys[i]]); | ||
} | ||
} | ||
console.log('\nOK'); |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
64906
161
67