// include the latest version of the regex crate in your Cargo.toml
extern crate regex;
use regex::Regex;
fn main() {
let regex = Regex::new(r"(?s)(?<first><<<<<<< HEAD\n.*?)(?<========)|(?<second>(?=>>>>>>>).*?\n)").unwrap();
let string = "<<<<<<< HEAD
import { readdir } from \"fs\";
import { createServer } from \"../src/server.js\";
import Jasmine from 'jasmine';
import dotenv from 'dotenv';
const jasmine = new Jasmine();
=======
import { start } from \"../src/index.js\";
import dotenv from 'dotenv';
import { readdir } from \"fs\";
import Jasmine from 'jasmine';
import { resolve } from 'path';
>>>>>>> c80322f... Refactor codebase. Removed ml parts into separate project.
// jasmine.loadConfigFile(`tests/jasmine.json`);
const importTests = () => {
return new Promise((resolve, reject) => {
readdir(`./tests`, (err, files) => {
if (err) {
reject(err);
}
files = files.filter(file => {
return file.includes(`test.js`);
});
console.log(files);
files = files.map(file => {
const relativePath = `./${file}`;
return import(relativePath)
.catch(error => {
console.error(`** Error loading ` + relativePath + `: `);
console.error(error);
process.exit(1);
});
});
resolve(Promise.all(files));
});
});
};
const runTests = () => {
<<<<<<< HEAD
dotenv.config();
importTests().then(() => {
const server = createServer({
useAuth: false,
});
server.options.port = 4040;
process.env.GRAPHQL_ENDPOINT = `http://127.0.0.1:4040`;
server.start(() => {
console.log(`Test server is running on 127.0.0.1:${server.options.port}`);
jasmine.execute();
});
=======
const jasmine = new Jasmine();
const environment = process.env.NODE_ENV || `staging`;
dotenv.config({
path: resolve(`../src/config/${environment}/.env`),
});
importTests().then(async () => {
process.env.MONGODB_URIS = `mongodb+srv://f4a-shared-t95ry.gcp.mongodb.net/test`;
process.env.GRAPHQL_ENDPOINT = `http://127.0.0.1:4040`;
process.env.PORT = `4040`;
await start();
console.log(`Test server is running on 127.0.0.1:${server.port}`);
jasmine.execute();
>>>>>>> c80322f... Refactor codebase. Removed ml parts into separate project.
});
};
runTests();";
// result will be an iterator over tuples containing the start and end indices for each match in the string
let result = regex.captures_iter(string);
for mat in result {
println!("{:?}", mat);
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Rust, please visit: https://docs.rs/regex/latest/regex/