This app provides monitoring and information features for the common freifunk user and the technical stuff of a freifunk community.
Code base is taken from a TUM Practical Course project and added here to see if Freifunk Altdorf can use it.
https://www.freifunk-altdorf.de
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
981 B
31 lines
981 B
import path from 'path'; |
|
import fs from 'fs'; |
|
import assert from 'assert'; |
|
import { transformFileSync } from 'babel-core'; |
|
import plugin from '../src'; |
|
|
|
function trim(str) { |
|
return str.replace(/^\s+|\s+$/, ''); |
|
} |
|
|
|
describe('finds React components', () => { |
|
const fixturesDir = path.join(__dirname, 'fixtures'); |
|
fs.readdirSync(fixturesDir).map((caseName) => { |
|
it(`should ${caseName.split('-').join(' ')}`, () => { |
|
const fixtureDir = path.join(fixturesDir, caseName); |
|
let actualPath = path.join(fixtureDir, 'actual.js'); |
|
const actual = transformFileSync(actualPath).code; |
|
|
|
if (path.sep === '\\') { |
|
// Specific case of windows, transformFileSync return code with '/' |
|
actualPath = actualPath.replace(/\\/g, '/'); |
|
} |
|
|
|
const expected = fs.readFileSync( |
|
path.join(fixtureDir, 'expected.js') |
|
).toString().replace(/%FIXTURE_PATH%/g, actualPath); |
|
|
|
assert.equal(trim(actual), trim(expected)); |
|
}); |
|
}); |
|
});
|
|
|