text:
import * as assert from 'assert';
import { IMock, Mock, It, Times } from "typemoq";
import { Alignment } from "../../../src/models/alignment";
import { TableFactory } from "../../../src/modelFactory/tableFactory";
import { AlignmentFactory } from "../../../src/modelFactory/alignmentFactory";
import { assertExt } from "../../assertExtensions";
import { Transformer } from '../../../src/modelFactory/transformers/transformer';
import { SelectionInterpreter } from '../../../src/modelFactory/selectionInterpreter';
import { TableIndentationDetector } from '../../../src/modelFactory/tableIndentationDetector';
import { Table } from '../../../src/models/table';
import { Cell } from '../../../src/models/cell';
import { Document } from '../../../src/models/doc/document';
import { Row } from '../../../src/models/row';
import { Range } from '../../../src/models/doc/range';

suite("TableFactory tests", () => {
    let _alignmentFactoryMock: IMock<AlignmentFactory>;
    let _transformer: IMock<Transformer>;
    let _tableIndentationDetector: IMock<TableIndentationDetector>;

    setup(() => {
        _alignmentFactoryMock = Mock.ofType<AlignmentFactory>();
        _transformer = Mock.ofType<Transformer>();
        _tableIndentationDetector = Mock.ofType<TableIndentationDetector>();
    });

    test("getModel() removes empty rows", () => {
        const tableText = `

          c1 | c2 | | c4
            -|-|-|-
           a | b || d

           `;
        const document = new Document(tableText);
        const sut = createFactory();
        _alignmentFactoryMock
            .setup(m => m.createAlignments(It.isAny()))
            .returns(() => [ Alignment. Left, Alignment.Left, Alignment.Left, Alignment.Left]);
        _transformer.setup(_ => _.process(It.isAny())).returns((input) => input);

        const rows: Row[] = sut.getModel(document, new Range(2, 4)).rows;

        assertExt.isNotNull(rows);
        assert.strictEqual(rows.length, 2);
        assert.strictEqual(rows.every(r => r.cells.length == 4), true);
    });

    test("getModel() removes separator row and returns expected cells", () => {
        const tableText =
        ` c1 | c2 | | c4
            -|-|-|-
           a | b || d`;
        const document = new Document(tableText);
        const sut = createFactory();
        _alignmentFactoryMock
            .setup(m => m.createAlignments(It.isAny()))
            .returns(() => [ Alignment. Left, Alignment.Left, Alignment.Left, Alignment.Left]);
        _transformer.setup(_ => _.process(It.isAny())).returns((input) => input);

        const rows: Row[] = sut.getModel(document, document.fullRange).rows;

        assertExt.isNotNull(rows);
        assert.strictEqual(rows.length, 2);
        assert.strictEqual(rows.every(r => r.cells.length == 4), true);
        assert.strictEqual(rows[0].cells[0].getValue(), " c1 ");
        assert.strictEqual(rows[0].cells[1].getValue(), " c2 ");
        assert.strictEqual(rows[0].cells[2].getValue(), " ");
        assert.strictEqual(rows[0].cells[3].getValue(), " c4");
        assert.strictEqual(rows[1].cells[0].getValue(), "           a ");
        assert.strictEqual(rows[1].cells[1].getValue(), " b ");
        assert.strictEqual(rows[1].cells[2].getValue(), "");
        assert.strictEqual(rows[1].cells[3].getValue(), " d");
    });

    test("getModel() calls alignmentFactory to create alignments for the table columns", () => {
        const tableText =
         `| c1 | c2 |   | c4
          |:---|--- |:-:|-:
          | a  | b  |   | d`;
        const document = new Document(tableText);
        const expectedAlignmets: Alignment[] = [ Alignment.Left, Alignment.Left, Alignment.Left, Alignment.Left, Alignment.Left ];
        _alignmentFactoryMock
            .setup(m => m.createAlignments(It.isAny()))
            .returns(() => expectedAlignmets)
            .verifiable(Times.once());
        _transformer.setup(_ => _.process(It.isAny())).returns((input) => input);
        const sut = createFactory();

        const actualAlignments: Alignment[] = sut.getModel(document, document.fullRange).alignments;
        assert.strictEqual(expectedAlignmets.length == actualAlignments.length && expectedAlignmets.every((l,i) => l === actualAlignments[i]), true);
        _alignmentFactoryMock.verifyAll();
    });

    test("getModel() calls transformer and returns its result", () => {
        const tableText =
         ` c1 | c2 |   | c4
          :---|--- |:-:|-:
           a  | b  |   | d`;
        const document = new Document(tableText);
        const expectedAlignmets: Alignment[] = [ Alignment.Left, Alignment.Left, Alignment.Left, Alignment.Left ];
        const transformedTable = tableFor([["c1", "c2", "", "c4"], ["a", "b", "", "d"]], expectedAlignmets);
        _alignmentFactoryMock.setup(m => m.createAlignments(It.isAny())).returns(() => expectedAlignmets);
        _transformer.setup(_ => _.process(It.isAny())).returns(() => transformedTable);
        const sut = createFactory();

        const result = sut.getModel(document, document.fullRange);

        _transformer.verify(_ => _.process(It.isAny()), Times.once());
        assert.strictEqual(result, transformedTable);
    });

    test("getModel() calls selection interpreter to split lines for each line (incl. separator)", () => {
        const tableText =
         ` c1 | c2 |   | c4
          :---|--- |:-:|-:
           a  | b  |   | d`;
        const expectedAlignmets: Alignment[] = [ Alignment.Left, Alignment.Left, Alignment.Left, Alignment.Left ];
        const tableData: string[][] = [["c1", "c2", "", "c4"], ["a", "b", "", "d"]];
        const transformedTable = tableFor(tableData, expectedAlignmets);
        _alignmentFactoryMock.setup(m => m.createAlignments(It.isAny())).returns(() => expectedAlignmets);
        _transformer.setup(_ => _.process(It.isAny())).returns(() => transformedTable);

        let selectionInterpreter: IMock<SelectionInterpreter> = Mock.ofType<SelectionInterpreter>();
        selectionInterpreter.setup(_ => _.splitLine(It.isAny())).returns(() => []);
        const sut = createFactory(selectionInterpreter.object);
        const document = new Document(tableText);

        sut.getModel(document, document.fullRange);

        selectionInterpreter.verify(_ => _.splitLine(It.isAny()), Times.exactly(3));
    });

    test("getModel() calls indentation detector and creates a table with its result", () => {
        const tableText =
            ` c1 | c2 |   | c4
          :---|--- |:-:|-:
           a  | b  |   | d`;
        const expectedAlignmets: Alignment[] = [Alignment.Left, Alignment.Left, Alignment.Left, Alignment.Left];
        const tableData: string[][] = [["c1", "c2", "", "c4"], ["a", "b", "", "d"]];
        const transformedTable = tableFor(tableData, expectedAlignmets, "  \t  ");
        _alignmentFactoryMock.setup(m => m.createAlignments(It.isAny())).returns(() => expectedAlignmets);
        _transformer.setup(_ => _.process(It.isAny())).returns(() => transformedTable);

        let selectionInterpreter: IMock<SelectionInterpreter> = Mock.ofType<SelectionInterpreter>();
        selectionInterpreter.setup(_ => _.splitLine(It.isAny())).returns(() => []);

        _tableIndentationDetector.setup(_ => _.getLeftPad(It.isAny())).returns(() => "test");

        const sut = createFactory(selectionInterpreter.object);
        const document = new Document(tableText);

        const table = sut.getModel(document, document.fullRange);

        _tableIndentationDetector.verify(_ => _.getLeftPad(It.isAny()), Times.exactly(1));
        assert.strictEqual(table.leftPad, "  \t  ");
    });

    function tableFor(rows: string[][], alignments: Alignment[], leftPad: string = "") {
        return new Table(rows.map(row => new Row(row.map(c  => new Cell(c)), "\r\n")), "\r\n", alignments, leftPad);
    }

    function createFactory(selectionInterpreter: SelectionInterpreter = null): TableFactory {
        return new TableFactory(_alignmentFactoryMock.object,
            selectionInterpreter == null ? new SelectionInterpreter(false) : selectionInterpreter,
            _transformer.object, _tableIndentationDetector.object);
    }
});


text:
import smbl
import snakemake
import os

from ._program import *

WGSIM      = get_bin_file_path("wgsim")
WGSIM_EVAL = get_bin_file_path("wgsim_eval.pl")

##########################################
##########################################

class WgSim(Program):
	@classmethod
	def get_installation_files(cls):
		return [
				WGSIM,
				WGSIM_EVAL,
			]

	@classmethod
	def install(cls):
		gitdir=cls.git_clone("http://github.com/lh3/wgsim","wgsim")
		smbl.utils.shell('cd "{dir}" && gcc -g -O2 -Wall -o wgsim wgsim.c -lz -lm'.format(dir=gitdir))
		cls.install_file("wgsim/wgsim",WGSIM)
		cls.install_file("wgsim/wgsim_eval.pl",WGSIM_EVAL)

	@classmethod
	def supported_platforms(cls):
		return ["cygwin","osx","linux"]

redpajama_set_name: RedPajamaGithub


text:
<!DOCTYPE html>

    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width,initial-scale=1">
    <title>Font Reference - Weather</title>
    <link href="http://fonts.googleapis.com/css?family=Dosis:400,500,700" rel="stylesheet" type="text/css">
    <link rel="stylesheet" href="styles.css">

Weather

This font was created withFontastic

CSS mapping

          <input type="text" readonly="readonly" value="001">

          <input type="text" readonly="readonly" value="014">

          <input type="text" readonly="readonly" value="027">

          <input type="text" readonly="readonly" value="040">

          <input type="text" readonly="readonly" value="053">

          <input type="text" readonly="readonly" value="054">

          <input type="text" readonly="readonly" value="041">

          <input type="text" readonly="readonly" value="028">

          <input type="text" readonly="readonly" value="015">

          <input type="text" readonly="readonly" value="002">

          <input type="text" readonly="readonly" value="003">

          <input type="text" readonly="readonly" value="016">

          <input type="text" readonly="readonly" value="029">

          <input type="text" readonly="readonly" value="042">

          <input type="text" readonly="readonly" value="055">

          <input type="text" readonly="readonly" value="056">

          <input type="text" readonly="readonly" value="043">

          <input type="text" readonly="readonly" value="030">

          <input type="text" readonly="readonly" value="017">

          <input type="text" readonly="readonly" value="004">

          <input type="text" readonly="readonly" value="005">

          <input type="text" readonly="readonly" value="018">

          <input type="text" readonly="readonly" value="031">

          <input type="text" readonly="readonly" value="044">

          <input type="text" readonly="readonly" value="057">

          <input type="text" readonly="readonly" value="058">

          <input type="text" readonly="readonly" value="045">

          <input type="text" readonly="readonly" value="032">

          <input type="text" readonly="readonly" value="019">

          <input type="text" readonly="readonly" value="006">

          <input type="text" readonly="readonly" value="007">

          <input type="text" readonly="readonly" value="020">

          <input type="text" readonly="readonly" value="033">

          <input type="text" readonly="readonly" value="046">

          <input type="text" readonly="readonly" value="059">

          <input type="text" readonly="readonly" value="060">

          <input type="text" readonly="readonly" value="047">

          <input type="text" readonly="readonly" value="034">

          <input type="text" readonly="readonly" value="021">

          <input type="text" readonly="readonly" value="008">

          <input type="text" readonly="readonly" value="009">

          <input type="text" readonly="readonly" value="022">

          <input type="text" readonly="readonly" value="035">

          <input type="text" readonly="readonly" value="048">

          <input type="text" readonly="readonly" value="049">

          <input type="text" readonly="readonly" value="036">

          <input type="text" readonly="readonly" value="023">

          <input type="text" readonly="readonly" value="010">

          <input type="text" readonly="readonly" value="011">

          <input type="text" readonly="readonly" value="024">

          <input type="text" readonly="readonly" value="037">

          <input type="text" readonly="readonly" value="050">

          <input type="text" readonly="readonly" value="051">

          <input type="text" readonly="readonly" value="038">

          <input type="text" readonly="readonly" value="025">

          <input type="text" readonly="readonly" value="012">

          <input type="text" readonly="readonly" value="013">

          <input type="text" readonly="readonly" value="026">

          <input type="text" readonly="readonly" value="039">

          <input type="text" readonly="readonly" value="052">

Character mapping

          <input type="text" readonly="readonly" value="a">

          <input type="text" readonly="readonly" value="b">

          <input type="text" readonly="readonly" value="c">

          <input type="text" readonly="readonly" value="d">

          <input type="text" readonly="readonly" value="e">

          <input type="text" readonly="readonly" value="f">

          <input type="text" readonly="readonly" value="g">

          <input type="text" readonly="readonly" value="h">

          <input type="text" readonly="readonly" value="i">

          <input type="text" readonly="readonly" value="j">

          <input type="text" readonly="readonly" value="k">

          <input type="text" readonly="readonly" value="l">

          <input type="text" readonly="readonly" value="m">

          <input type="text" readonly="readonly" value="n">

          <input type="text" readonly="readonly" value="o">

          <input type="text" readonly="readonly" value="p">

          <input type="text" readonly="readonly" value="q">

          <input type="text" readonly="readonly" value="r">

          <input type="text" readonly="readonly" value="s">

          <input type="text" readonly="readonly" value="t">

          <input type="text" readonly="readonly" value="u">

          <input type="text" readonly="readonly" value="v">

          <input type="text" readonly="readonly" value="w">

          <input type="text" readonly="readonly" value="x">

          <input type="text" readonly="readonly" value="y">

          <input type="text" readonly="readonly" value="z">

          <input type="text" readonly="readonly" value="A">

          <input type="text" readonly="readonly" value="B">

          <input type="text" readonly="readonly" value="C">

          <input type="text" readonly="readonly" value="D">

          <input type="text" readonly="readonly" value="E">

          <input type="text" readonly="readonly" value="F">

          <input type="text" readonly="readonly" value="G">

          <input type="text" readonly="readonly" value="H">

          <input type="text" readonly="readonly" value="I">

          <input type="text" readonly="readonly" value="J">

          <input type="text" readonly="readonly" value="K">

          <input type="text" readonly="readonly" value="L">

          <input type="text" readonly="readonly" value="M">

          <input type="text" readonly="readonly" value="N">

          <input type="text" readonly="readonly" value="O">

          <input type="text" readonly="readonly" value="P">

          <input type="text" readonly="readonly" value="Q">

          <input type="text" readonly="readonly" value="R">

          <input type="text" readonly="readonly" value="S">

          <input type="text" readonly="readonly" value="T">

          <input type="text" readonly="readonly" value="U">

          <input type="text" readonly="readonly" value="V">

          <input type="text" readonly="readonly" value="W">

          <input type="text" readonly="readonly" value="X">

          <input type="text" readonly="readonly" value="Y">

          <input type="text" readonly="readonly" value="Z">

          <input type="text" readonly="readonly" value="0">

          <input type="text" readonly="readonly" value="1">

          <input type="text" readonly="readonly" value="2">

          <input type="text" readonly="readonly" value="3">

          <input type="text" readonly="readonly" value="4">

          <input type="text" readonly="readonly" value="5">

          <input type="text" readonly="readonly" value="6">

          <input type="text" readonly="readonly" value="7">


text:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  <title>Write data to a buffered event</title>

event_buffer_watermark_set

event_del

Libevent Functions

PHP Manual

event_buffer_write

(PECL libevent >= 0.0.1)

event_buffer_write — Write data to a buffered event

Description

   bool event_buffer_write
    ( resource $bevent
   , string $data
   [, int $data_size = -1
  ] )

   Writes data to the specified buffered event. The data is appended to the
   output buffer and written to the descriptor when it becomes available for
   writing.

Parameters

bevent

       Valid buffered event resource.

data

       The data to be written.

data_size

       Optional size parameter. event_buffer_write() writes
       all the data by default.

Return Values

   event_buffer_write() returns TRUE on success or FALSE on error.

event_buffer_watermark_set

event_del

Libevent Functions

PHP Manual


text:
FROM bitnami/minideb

# Install dependencies
RUN apt-get update && apt-get install -yq --no-install-recommends \
	binutils-arm-none-eabi \
	ca-certificates \
	cmake \
	curl \
	gcc \
	gcc-arm-none-eabi \
	git \
	libffi-dev \
	libssl-dev \
	libnewlib-arm-none-eabi \
	libstdc++-arm-none-eabi-newlib \
	ninja-build \
	python-dev \
	python-setuptools \
	srecord && \
	apt-get clean && \
	rm -rf /var/lib/apt/lists/*

# Install tools
RUN mkdir -p /temp && cd /temp && \
	curl -k -O https://bootstrap.pypa.io/get-pip.py && python get-pip.py && \
	git clone https://github.com/NordicSemiconductor/pc-nrfutil.git && \
	cd pc-nrfutil && git checkout 0_5_2 && \
	pip install -r requirements.txt && python setup.py install && \
	pip install yotta && \
	cd / && rm -rf /temp

# Set the working directory
WORKDIR /usr/src/app

# Copy module.json to the working directory
COPY module.json ./

# Set up for building
RUN yt target bbc-microbit-classic-gcc && yt install && \
	mkdir -p /assets

# Entry point
CMD ["echo","'No CMD command was set in Dockerfile! Details about CMD command could be found in Dockerfile Guide section in our Docs. Here's the link: http://docs.resin.io/deployment/dockerfile"]


text:
package com.urbanairship.hbackup;

import java.io.IOException;
import java.net.URI;

public abstract class ChecksumService {
    public static ChecksumService forUri(URI uri, HBackupConfig conf) throws IOException {
        String scheme = uri.getScheme();

        if (scheme.equals("s3")) {
            return new Jets3tChecksumImpl(uri, conf);
        } else {
            throw new IllegalArgumentException("Invalid URI scheme \"" + scheme + "\" for checksum storage");
        }
    }

    public abstract void storeChecksum(String relativePath, String hexChecksum) throws IOException;

    public abstract String getChecksum(String relativePath) throws IOException;
}


text:
namespace BrightstarDB.Model
{
    internal class Triple : ITriple
    {
        public Triple()
        {
            Graph = Constants.DefaultGraphUri;
        }

        public string Graph { get; set; }
        public string Subject { get; set; }
        public string Predicate { get; set; }
        public string Object { get; set; }
        public bool IsLiteral { get; set; }
        public string DataType { get; set; }
        public string LangCode { get; set; }

        /// <summary>
        /// Returns true if this triple matches the specified triple allowing
        /// NULL in Graph, Subject, Predicate an Object to stand for a wildcard
        /// </summary>
        /// <param name="other">The other triple to match with</param>
        /// <returns>True if there is a match in the non-null parts of both triples, false otherwise</returns>
        public bool Matches(ITriple other)
        {
            return NullOrMatch(Graph, other.Graph) &&
                   NullOrMatch(Subject, other.Subject) &&
                   NullOrMatch(Predicate, other.Predicate) &&
                   (Object == null || other.Object == null ||
                    (
                        IsLiteral == other.IsLiteral &&
                        DataType == other.DataType &&
                        LangCode == other.LangCode &&
                        Object == other.Object
                    ));
        }

        private static bool NullOrMatch(string x, string y)
        {
            return x == null || y == null || x.Equals(y);
        }

        public override string ToString()
        {
            if (IsLiteral)
            {
                return string.Format("<{0}> <{1}> {2}^^{3}@{4}", Subject, Predicate, Object, DataType, LangCode);
            }
            return string.Format("<{0}> <{1}> <{2}>", Subject, Predicate, Object);
        }

        public override int GetHashCode()
        {
            return ToString().GetHashCode();
        }

        /// <summary>
        /// Equality comparison. Unlike the Match operation, the Equals operation requires direct value equality.
        /// </summary>
        /// <param name="obj"></param>
        /// <returns></returns>
        public override bool Equals(object obj)
        {
            var other = obj as Triple;
            if (other == null) return false;
            return (Subject == null && other.Subject == null || Subject != null && Subject.Equals(other.Subject)) &&
                   (Predicate == null && other.Predicate == null ||
                    Predicate != null && Predicate.Equals(other.Predicate)) &&
                   IsLiteral.Equals(other.IsLiteral) &&
                   (Object == null && other.Object == null || Object != null && Object.Equals(other.Object)) &&
                   (Graph == null && other.Graph == null || Graph != null && Graph.Equals(other.Graph)) &&
                   (DataType == null && other.DataType == null ||
                    DataType != null && DataType.Equals(other.DataType)) &&
                   (LangCode == null && other.LangCode == null ||
                    LangCode != null && LangCode.Equals(other.LangCode));
        }
    }
}


text:
<?php

use InMemoryList\Domain\Model\ListCollection;
use InMemoryList\Infrastructure\Domain\Model\ListCollectionFactory;
use PHPUnit\Framework\TestCase;

class ListFactoryTest extends TestCase
{
    /**
     * @test
     * @expectedException \InMemoryList\Infrastructure\Domain\Model\Exceptions\CreateListFromEmptyArrayException
     * @expectedExceptionMessage Try to create a collection from an empty array.
     */
    public function it_throws_CreateCollectionFromEmptyArrayException_if_empty_array_is_provided()
    {
        $emptyArray = [];

        $factory = new ListCollectionFactory();
        $factory->create($emptyArray, [], 'fake list');
    }

    /**
     * @test
     * @expectedException \InMemoryList\Infrastructure\Domain\Model\Exceptions\NotValidKeyElementInListException
     * @expectedExceptionMessage not-existing-id is not a valid key.
     */
    public function it_throws_NotValidKeyElementInListException_if_a_not_existing_unique_identifier_is_provided()
    {
        $simpleArray = [
            [
                'id' => 123,
                'title' => 'Lorem Ipsum',
                'category-id' => 27,
                'category' => 'holiday',
                'rate' => 4,
            ],
            [
                'id' => 124,
                'title' => 'Neque porro quisquam',
                'category-id' => 28,
                'category' => 'last minute',
                'rate' => 5,
            ],
            [
                'id' => 125,
                'title' => 'Ipso facto',
                'category-id' => 28,
                'category' => 'last minute',
                'rate' => 1,
            ],
            [
                'id' => 126,
                'title' => 'Ipse dixit',
                'category-id' => 27,
                'category' => 'holiday',
                'rate' => 3,
            ],
            [
                'id' => 127,
                'title' => 'Dolor facius',
                'category-id' => 27,
                'category' => 'holiday',
                'rate' => 5,
            ],
        ];

        $factory = new ListCollectionFactory();
        $factory->create($simpleArray, [], 'fake-list', 'not-existing-id');
    }

    /**
     * @test
     */
    public function it_creates_list_from_simple_array()
    {
        $simpleArray = [
            [
                'id' => 123,
                'title' => 'Lorem Ipsum',
                'category-id' => 27,
                'category' => 'holiday',
                'rate' => 4,
            ],
            [
                'id' => 124,
                'title' => 'Neque porro quisquam',
                'category-id' => 28,
                'category' => 'last minute',
                'rate' => 5,
            ],
            [
                'id' => 125,
                'title' => 'Ipso facto',
                'category-id' => 28,
                'category' => 'last minute',
                'rate' => 1,
            ],
            [
                'id' => 126,
                'title' => 'Ipse dixit',
                'category-id' => 27,
                'category' => 'holiday',
                'rate' => 3,
            ],
            [
                'id' => 127,
                'title' => 'Dolor facius',
                'category-id' => 27,
                'category' => 'holiday',
                'rate' => 5,
            ],
        ];
        $factory = new ListCollectionFactory();
        $imList = $factory->create($simpleArray, [], 'fake list');

        $this->assertInstanceOf(ListCollection::class, $imList);
        $this->assertEquals(5, $imList->count());
        $this->assertEquals('fake-list', $imList->getUuid());
        $this->assertNull($imList->getHeaders());
    }

    /**
     * @test
     */
    public function it_creates_list_from_a_parsed_json()
    {
        $headers = [
            'expires' => 'Sat, 26 Jul 1997 05:00:00 GMT',
            'hash' => 'ec457d0a974c48d5685a7efa03d137dc8bbde7e3',
        ];

        $parsedArrayFromJson = json_decode(file_get_contents(__DIR__.'/../../../../../examples/files/users.json'));
        $factory = new ListCollectionFactory();
        $imList = $factory->create($parsedArrayFromJson, $headers, 'fake list from json object');

        $this->assertInstanceOf(ListCollection::class, $imList);
        $this->assertEquals(10, $imList->count());
        $this->assertEquals('fake-list-from-json-object', $imList->getUuid());
        $this->assertCount(2, $imList->getHeaders());
    }
}


text:
ACCEPTED

#### According to
The Catalogue of Life, 3rd January 2011

#### Published in
Mycol. Res. 109(6): 693 (2005)

#### Original name
Dryadomyces Gebhardt

### Remarks
null


text:
package com.blstream.myhoard.biz.exception;

public enum ErrorCode {
    AUTH_BAD_CREDENTIALS(101, 401, "Bad credentials"),
    AUTH_TOKEN_NOT_PROVIDED(102, 401, "Token not provided"),
    AUTH_TOKEN_INVALID(103, 401, "Invalid token"),
    FORBIDDEN(104, 403, "Forbidden"),
    BAD_REQUEST(201, 400, "Validation error"),
    NOT_FOUND(202, 404, "Resource not found"),
    INTERNAL_SERVER_ERROR(301, 500, "Internal server error");

    private final int errorCode;
    private final int httpStatus;
    private final String errorMessage;

    private ErrorCode(int errorCode, int httpStatus, String errorMessage) {
        this.errorCode = errorCode;
        this.httpStatus = httpStatus;
        this.errorMessage = errorMessage;
    }

    public int getErrorCode() {
        return errorCode;
    }

    public int getHttpStatus() {
        return httpStatus;
    }

    public String getErrorMessage() {
        return errorMessage;
    }
}


text:
set -eu
: ${1:? Usage: $0 DESCRIPTION}
DESCRIPTION="$1"
set -x

# For some reason nexus-staging:release does not read the stagingRepositoryId
# from the properties file, so we must read it ourselves.
REPOSITORY_ID=`sed -n -r 's/stagingRepository\.id=(\w+)/\1/p' "staging/ff5044adfb72.properties"`

mvn nexus-staging:release \
    --errors \
    -DaltStagingDirectory=staging \
    -DstagingRepositoryId="$REPOSITORY_ID" \
    -DstagingDescription="$DESCRIPTION"

git push origin HEAD
git push origin --tags

rm -rf staging


text:
package org.wildfly.extension.camel;

import org.apache.camel.CamelContext;
import org.jboss.as.server.deployment.AttachmentKey;
import org.jboss.as.server.deployment.AttachmentList;
import org.jboss.msc.service.ServiceName;

/**
 * Camel subsystem constants.
 *
 * @author Thomas.Diesler@jboss.com
 * @since 22-Apr-2013
 */
public interface CamelConstants {

    /** The base name for all camel services */
    ServiceName CAMEL_BASE_NAME = ServiceName.JBOSS.append("wildfly", "camel");
    /** The base name for all camel context services */
    ServiceName CAMEL_COMPONENT_BASE_NAME = CAMEL_BASE_NAME.append("component");
    /** The name for the {@link CamelContextFactory} service */
    ServiceName CAMEL_CONTEXT_FACTORY_SERVICE_NAME = CAMEL_BASE_NAME.append("CamelContextFactory");
    /** The name for the {@link CamelContextRegistry} service */
    ServiceName CAMEL_CONTEXT_REGISTRY_SERVICE_NAME = CAMEL_BASE_NAME.append("CamelContextRegistry");
    /** The name for the {@link ContextCreateHandlerRegistry} service */
    ServiceName CONTEXT_CREATE_HANDLER_REGISTRY_SERVICE_NAME = CAMEL_BASE_NAME.append("ContextCreateHandlerRegistry");
    /** The name for the camel subsystem service */
    ServiceName CAMEL_SUBSYSTEM_SERVICE_NAME = CAMEL_BASE_NAME.append("Subsystem");

    /** The deployment names for spring camel context deployments */
    String CAMEL_CONTEXT_FILE_SUFFIX = "-camel-context.xml";
    String CAMEL_CONTEXT_FILE_NAME = "META-INF/jboss-camel-context.xml";

    /** This file hold the components to use. */
    String CAMEL_COMPONENTS_FILE_NAME = "META-INF/jboss-camel-components.properties";

    /** The Switchyard marker file */
    String SWITCHYARD_MARKER_FILE = "META-INF/switchyard.xml";

    /** The deployment names for repository content deployments */
    String REPOSITORY_CONTENT_FILE_SUFFIX = "-repository-content.xml";
    String REPOSITORY_CONTENT_FILE_NAME = "META-INF/jboss-repository-content.xml";

    /** The {@link CamelContext} attachment key */
    AttachmentKey<AttachmentList<CamelContext>> CAMEL_CONTEXT_KEY = AttachmentKey.createList(CamelContext.class);
    /** The {@link CamelContextRegistry} attachment key */
    AttachmentKey<CamelContextRegistry> CAMEL_CONTEXT_REGISTRY_KEY = AttachmentKey.create(CamelContextRegistry.class);
    /** The {@link CamelContextFactory} attachment key */
    AttachmentKey<CamelContextFactory> CAMEL_CONTEXT_FACTORY_KEY = AttachmentKey.create(CamelContextFactory.class);
    /** The {@link ContextCreateHandlerRegistry} attachment key */
    AttachmentKey<ContextCreateHandlerRegistry> CONTEXT_CREATE_HANDLER_REGISTRY_KEY = AttachmentKey.create(ContextCreateHandlerRegistry.class);

    /** The JNDI name for the {@link CamelContextFactory} binding */
    String CAMEL_CONTEXT_FACTORY_BINDING_NAME = "java:jboss/camel/CamelContextFactory";
    /** The JNDI name for the {@link CamelContextRegistry} binding */
    String CAMEL_CONTEXT_REGISTRY_BINDING_NAME = "java:jboss/camel/CamelContextRegistry";
    /** The name for the {@link CamelContext} service */
    String CAMEL_CONTEXT_BINDING_NAME = "java:jboss/camel/context";
}


text:
export function pluralize(count: number, noun: string, suffix = 's') {
  return `${count} ${noun}${count !== 1 ? suffix : ''}`;
}


text:
SciTE-mruby is a SciTE based text editor with mruby scripting extension.

[SciTE](http://www.scintilla.org/SciTE.html) is a cross-platform text editor written by Neil Hodgson.

![](https://raw.githubusercontent.com/sdottaka/mruby-bin-scite-mruby/master/tools/scite/doc/scite-gtk.png)

## Features

- All [SciTE](http://www.scintilla.org/SciTE.html) features :)
- Extendable by a mruby script code like a Lua script
- Embedded [ExtMan](http://lua-users.org/wiki/SciteExtMan) rewritten in mruby
- Support to run mruby script without saving as a file (Alt+Ctrl+R key)
- (**Not Yet**)Visual mruby script debugger

## Download

(**Not Yet**)

## Install by mrbgems

#### 1. Download mruby

```
git clone https://github.com/mruby/mruby.git
```

#### 2. Add `conf.gem` line to `mruby/build_config.rb`

```ruby
MRuby::Build.new do |conf|

  # ... (snip) ...

  conf.gem :core => 'mruby-eval'
  conf.gem :git => 'https://github.com/iij/mruby-io.git'
  conf.gem :git => 'https://github.com/iij/mruby-dir.git'
  conf.gem :git => 'https://github.com/iij/mruby-regexp-pcre.git' # or conf.gem :git => 'https://github.com/mattn/mruby-onig-regexp.git'
  conf.gem :git => 'https://github.com/sdottaka/mruby-bin-scite-mruby.git'
  conf.gem :git => 'https://github.com/mattn/mruby-require.git' # or conf.gem :git => 'https://github.com/iij/mruby-require.git'
end
```

#### 3. build

```
cd mruby
rake
```

## Differences with Lua API

|               | Lua      | mruby |
|---------------|----------|-------|
| `scite` object  | `scite`  | `SciTE` or `$scite` |
| `editor` object | `editor` | `Editor` or `$editor` |
| `output` object | `output` | `Output` or `$output` |
| scite/editor/output object method/property names | UpperCamelCase e.g.) `editor.GetText` | snake\_case or lowerCamelCase e.g.) `Editor.get_text` or `Editor.getText` |
| event handler | `OnOpen` ...  | `on_open` or `onOpen` |
| ExtMan event functions | `scite_OnOpen` | `SciTE.on_open(&block)` or `SciTE.onOpen(&block)` |
| ExtMan functions | `scite_Command` | `SciTE.command` or `SciTE.define_command(name, mode = nil, shortcut_key = nil, param = nil, &block)` |

## mruby script examples

### Add "Eval" menu item to [Tools] menu

1. Click [Options] -> [Open mruby startup script]
2. Add the code below and save it

![](https://raw.githubusercontent.com/sdottaka/mruby-bin-scite-mruby/master/tools/scite/doc/example_eval.png)

```ruby
SciTE.define_command "Eval selected text as mruby script", "*", "Ctrl+9" do
  if Editor.selectionStart == Editor.selectionEnd
    p eval(Editor.getText)
  else
    p eval(Editor.getSelText)
  end
end
```

### Calltips

![](https://raw.githubusercontent.com/sdottaka/mruby-bin-scite-mruby/master/tools/scite/doc/example_calltips.png)

```ruby
SciTE.on_open_switch do |file|
  Editor.mouseDwellTime = 300
end

SciTE.on_dwell_start do |pos, word|
  if word != ""
    Editor.callTipShow pos, word.upcase
  else
    Editor.callTipCancel
  end
end
```

### User list
![](https://raw.githubusercontent.com/sdottaka/mruby-bin-scite-mruby/master/tools/scite/doc/example_userlist.png)

```ruby
SciTE.define_command "Insert ABC", "*", "Ctrl+8" do
  SciTE.userListShow ["A", "B", "C"] do |str|
    Editor.insertText Editor.currentPos, str
  end
end
```

### Others

See `examples` directory

# License

See `*_License.txt`


text:
using System;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Net.Http.Headers;
using System.ServiceModel;
using System.ServiceModel.Activation;
using System.ServiceModel.Syndication;
using System.ServiceModel.Web;
using System.Text;
using Microsoft.ApplicationServer.Http;
using TellagoStudios.Hermes.Business.Data.Queries;
using TellagoStudios.Hermes.Business.Model;

namespace TellagoStudios.Hermes.RestService.Resources
{
    [ServiceContract]
    [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)]
    public class FeedResource
    {
        private readonly IGetWorkingFeedForTopic getWorkingFeedForTopic;
        private readonly IEntityById entityById;
        private readonly IMessageByMessageKey messageByMessageKey;

        public FeedResource(
            IGetWorkingFeedForTopic getWorkingFeedForTopic,
            IEntityById entityById,
            IMessageByMessageKey messageByMessageKey)
        {
            this.getWorkingFeedForTopic = getWorkingFeedForTopic;
            this.entityById = entityById;
            this.messageByMessageKey = messageByMessageKey;
        }

        [WebGet(UriTemplate = "{topicId}")]
        public HttpResponseMessage Current(Identity topicId)
        {
            var workingFeed = getWorkingFeedForTopic.Execute(topicId);
            var syndicationFeed = CreateSyndicationFromFeed(topicId, workingFeed);
            return new HttpResponseMessage<SyndicationFeed>(syndicationFeed, HttpStatusCode.OK)
                       {
                           Content = {Headers = {ContentType = new MediaTypeHeaderValue("application/atom+xml")}}
                       };
        }

        [WebGet(UriTemplate = "{topicId}/history/{feedId}")]
        public HttpResponseMessage History(Identity topicId, Identity feedId)
        {
            var workingFeed = entityById.Get<Feed>(feedId);
            var syndicationFeed = CreateSyndicationFromFeed(topicId, workingFeed);
            return new HttpResponseMessage<SyndicationFeed>(syndicationFeed, HttpStatusCode.OK)
            {
                Content = { Headers = { ContentType = new MediaTypeHeaderValue("application/atom+xml") } }
            };
        }

        private SyndicationFeed CreateSyndicationFromFeed(Identity topicId, Feed currentFeed)
        {
            var topic = entityById.Get<Topic>(topicId);
            var feed = new SyndicationFeed(topic.Name, topic.Description, null)
                           {
                               Items = currentFeed.Entries.Select(e => MapEntryToSyndicationItem(topicId, e)).ToList(),
                               LastUpdatedTime = currentFeed.Updated,
                               Id = currentFeed.Id.ToString()
                           };

            feed.Links.Add(new SyndicationLink(ResourceLocation.OfCurrentTopicFeed(topicId))
                                {
                                    RelationshipType = "current",
                                    MediaType = "application/atom+xml"
                                });

            feed.Links.Add(new SyndicationLink(ResourceLocation.OfTopicFeed(topicId, currentFeed.Id.Value))
                               {
                                   RelationshipType = "self",
                                   MediaType = "application/atom+xml"
                               });

            if (currentFeed.PreviousFeed.HasValue)
            {
                feed.Links.Add(new SyndicationLink(ResourceLocation.OfTopicFeed(topicId, currentFeed.PreviousFeed.Value))
                                   {
                                       RelationshipType = "prev-archive",
                                       MediaType = "application/atom+xml"
                                   });
            }

            if (currentFeed.NextFeed.HasValue)
            {
                feed.Links.Add(new SyndicationLink(ResourceLocation.OfTopicFeed(topicId, currentFeed.NextFeed.Value))
                                   {
                                       RelationshipType = "next-archive",
                                       MediaType = "application/atom+xml"
                                   });
            }
            return feed;
        }

        private SyndicationItem MapEntryToSyndicationItem(Identity topicId, FeedEntry e)
        {
            var messageLink = ResourceLocation.OfMessageByTopic(topicId, e.MessageId);
            var message = messageByMessageKey.Get(new MessageKey {TopicId = topicId, MessageId = e.MessageId});

            var contentType = message.Headers.FirstOrDefault(h => h.Key == "Content-Type");
            var content = new UrlSyndicationContent(messageLink, contentType.Value.Aggregate((a,b)=>a +","+b));

            return new SyndicationItem(string.Format("Message {0}", e.MessageId),
                                       content,
                                       null,
                                       e.MessageId.ToString(), e.TimeStamp)
                       {
                           Links = { new SyndicationLink(messageLink) },
                           LastUpdatedTime = e.TimeStamp
                       };
        }
    }

}


text:
<?xml version="1.0" encoding="utf-8"?>
<geo:GeodesyML gml:id="FUNC00PRT" xmlns:gco="http://www.isotc211.org/2005/gco" xmlns:geo="urn:xml-gov-au:icsm:egeodesy:0.4" xmlns:gmd="http://www.isotc211.org/2005/gmd" xmlns:gml="http://www.opengis.net/gml/3.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <geo:siteLog gml:id="func_20161229.log">
        <geo:formInformation>
            <geo:preparedBy>Manuela Vasconcelos</geo:preparedBy>
            <geo:datePrepared>2016-12-29</geo:datePrepared>
            <geo:reportType>UPDATE</geo:reportType>
        </geo:formInformation>
        <geo:siteIdentification>
            <geo:siteName>Funchal</geo:siteName>
            <geo:fourCharacterID>FUNC</geo:fourCharacterID>
            <geo:monumentInscription>None</geo:monumentInscription>
            <geo:iersDOMESNumber>13911S001</geo:iersDOMESNumber>
            <geo:cdpNumber></geo:cdpNumber>
            <geo:monumentDescription codeSpace="urn:ga-gov-au:monument-description-type">STEEL MAST</geo:monumentDescription>
            <geo:heightOfTheMonument>8.0</geo:heightOfTheMonument>
            <geo:monumentFoundation>ROOF</geo:monumentFoundation>
            <geo:markerDescription></geo:markerDescription>
            <geo:dateInstalled>2006-07-21T00:00:00Z</geo:dateInstalled>
            <geo:geologicCharacteristic codeSpace="urn:ga-gov-au:geologic-characteristic-type">BASALT LAVA</geo:geologicCharacteristic>
            <geo:bedrockType>IGNEOUS</geo:bedrockType>
            <geo:bedrockCondition></geo:bedrockCondition>
            <geo:fractureSpacing></geo:fractureSpacing>
            <geo:faultZonesNearby codeSpace="urn:ga-gov-au:fault-zones-type">NO</geo:faultZonesNearby>
            <geo:notes>Portuguese Permanent GNSS Network (ReNEP)
The GPS station is located on the terrace of
an old building, supported by a metal structure
The substract is composed by basalt lava flows
inclined to south.The flow belongs to the more
recent unit vulcano-stratigraphic from Madeira
Island
(between 1 to 1.5 million years until now)</geo:notes>
        </geo:siteIdentification>
        <geo:siteLocation>
            <geo:city>Funchal</geo:city>
            <geo:state>Madeira Island-Madeira</geo:state>
            <geo:countryCodeISO codeList="http://xml.gov.au/icsm/geodesyml/codelists/antenna-receiver-codelists.xml#GeodesyML_CountryTypeCode" codeListValue="Portugal" codeSpace="urn:xml-gov-au:icsm:egeodesy:0.4">Portugal</geo:countryCodeISO>
            <geo:tectonicPlate codeSpace="urn:ga-gov-au:plate-type">AFRICAN</geo:tectonicPlate>
            <geo:approximatePositionITRF>
                <geo:cartesianPosition>
                    <gml:Point gml:id="itrf_cartesian" srsName="EPSG:7789">
                        <gml:pos>5143339.43 -1563412.87 3421191.44</gml:pos>
                    </gml:Point>
                </geo:cartesianPosition>
                <geo:geodeticPosition>
                    <gml:Point gml:id="itrf_geodetic" srsName="EPSG:7912">
                        <gml:pos>32.6479444444 -16.9076166667 78.5</gml:pos>
                    </gml:Point>
                </geo:geodeticPosition>
            </geo:approximatePositionITRF>
            <geo:notes>ITRF93</geo:notes>
        </geo:siteLocation>
        <geo:gnssReceiver>
            <geo:GnssReceiver gml:id="gnss-receiver-1">
                <geo:manufacturerSerialNumber>80278</geo:manufacturerSerialNumber>
                <geo:igsModelCode codeList="http://xml.gov.au/icsm/geodesyml/codelists/antenna-receiver-codelists.xml#GeodesyML_GNSSReceiverTypeCode" codeListValue="LEICA RS500" codeSpace="urn:xml-gov-au:icsm:egeodesy:0.4">LEICA RS500</geo:igsModelCode>
                <geo:satelliteSystem>GPS</geo:satelliteSystem>
                <geo:firmwareVersion>4.20/1.39</geo:firmwareVersion>
                <geo:elevationCutoffSetting>5.0</geo:elevationCutoffSetting>
                <geo:dateInstalled>2006-07-21T00:00:00Z</geo:dateInstalled>
                <geo:dateRemoved>2007-10-12T14:00:00Z</geo:dateRemoved>
                <geo:temperatureStabilization>22.5</geo:temperatureStabilization>
            </geo:GnssReceiver>
            <geo:dateInserted>2006-07-21T00:00:00Z</geo:dateInserted>
        </geo:gnssReceiver>
        <geo:gnssReceiver>
            <geo:GnssReceiver gml:id="gnss-receiver-2">
                <geo:manufacturerSerialNumber>20329</geo:manufacturerSerialNumber>
                <geo:igsModelCode codeList="http://xml.gov.au/icsm/geodesyml/codelists/antenna-receiver-codelists.xml#GeodesyML_GNSSReceiverTypeCode" codeListValue="LEICA SR520" codeSpace="urn:xml-gov-au:icsm:egeodesy:0.4">LEICA SR520</geo:igsModelCode>
                <geo:satelliteSystem>GPS</geo:satelliteSystem>
                <geo:firmwareVersion>5.00/1.33</geo:firmwareVersion>
                <geo:elevationCutoffSetting>5.0</geo:elevationCutoffSetting>
                <geo:dateInstalled>2007-10-12T14:00:00Z</geo:dateInstalled>
                <geo:dateRemoved>2008-04-02T13:00:00Z</geo:dateRemoved>
                <geo:temperatureStabilization>22.5</geo:temperatureStabilization>
            </geo:GnssReceiver>
            <geo:dateInserted>2007-10-12T14:00:00Z</geo:dateInserted>
        </geo:gnssReceiver>
        <geo:gnssReceiver>
            <geo:GnssReceiver gml:id="gnss-receiver-3">
                <geo:manufacturerSerialNumber>355290</geo:manufacturerSerialNumber>
                <geo:igsModelCode codeList="http://xml.gov.au/icsm/geodesyml/codelists/antenna-receiver-codelists.xml#GeodesyML_GNSSReceiverTypeCode" codeListValue="LEICA GRX1200GGPRO" codeSpace="urn:xml-gov-au:icsm:egeodesy:0.4">LEICA GRX1200GGPRO</geo:igsModelCode>
                <geo:satelliteSystem>GPS+GLO</geo:satelliteSystem>
                <geo:firmwareVersion>5.62/3.014</geo:firmwareVersion>
                <geo:elevationCutoffSetting>5.0</geo:elevationCutoffSetting>
                <geo:dateInstalled>2008-04-04T12:00:00Z</geo:dateInstalled>
                <geo:dateRemoved>2008-08-18T11:30:00Z</geo:dateRemoved>
                <geo:temperatureStabilization>22.5</geo:temperatureStabilization>
            </geo:GnssReceiver>
            <geo:dateInserted>2008-04-04T12:00:00Z</geo:dateInserted>
        </geo:gnssReceiver>
        <geo:gnssReceiver>
            <geo:GnssReceiver gml:id="gnss-receiver-4">
                <geo:manufacturerSerialNumber>355290</geo:manufacturerSerialNumber>
                <geo:igsModelCode codeList="http://xml.gov.au/icsm/geodesyml/codelists/antenna-receiver-codelists.xml#GeodesyML_GNSSReceiverTypeCode" codeListValue="LEICA GRX1200GGPRO" codeSpace="urn:xml-gov-au:icsm:egeodesy:0.4">LEICA GRX1200GGPRO</geo:igsModelCode>
                <geo:satelliteSystem>GPS+GLO</geo:satelliteSystem>
                <geo:firmwareVersion>6.00/3.015</geo:firmwareVersion>
                <geo:elevationCutoffSetting>5.0</geo:elevationCutoffSetting>
                <geo:dateInstalled>2008-08-18T11:30:00Z</geo:dateInstalled>
                <geo:dateRemoved>2009-04-02T10:35:00Z</geo:dateRemoved>
                <geo:temperatureStabilization>22.5</geo:temperatureStabilization>
            </geo:GnssReceiver>
            <geo:dateInserted>2008-08-18T11:30:00Z</geo:dateInserted>
        </geo:gnssReceiver>
        <geo:gnssReceiver>
            <geo:GnssReceiver gml:id="gnss-receiver-5">
                <geo:manufacturerSerialNumber>355290</geo:manufacturerSerialNumber>
                <geo:igsModelCode codeList="http://xml.gov.au/icsm/geodesyml/codelists/antenna-receiver-codelists.xml#GeodesyML_GNSSReceiverTypeCode" codeListValue="LEICA GRX1200GGPRO" codeSpace="urn:xml-gov-au:icsm:egeodesy:0.4">LEICA GRX1200GGPRO</geo:igsModelCode>
                <geo:satelliteSystem>GPS+GLO</geo:satelliteSystem>
                <geo:firmwareVersion>7.02/3.016</geo:firmwareVersion>
                <geo:elevationCutoffSetting>5.0</geo:elevationCutoffSetting>
                <geo:dateInstalled>2009-04-02T10:35:00Z</geo:dateInstalled>
                <geo:dateRemoved>2009-04-22T15:45:00Z</geo:dateRemoved>
                <geo:temperatureStabilization>22.5</geo:temperatureStabilization>
            </geo:GnssReceiver>
            <geo:dateInserted>2009-04-02T10:35:00Z</geo:dateInserted>
        </geo:gnssReceiver>
        <geo:gnssReceiver>
            <geo:GnssReceiver gml:id="gnss-receiver-6">
                <geo:manufacturerSerialNumber>355290</geo:manufacturerSerialNumber>
                <geo:igsModelCode codeList="http://xml.gov.au/icsm/geodesyml/codelists/antenna-receiver-codelists.xml#GeodesyML_GNSSReceiverTypeCode" codeListValue="LEICA GRX1200GGPRO" codeSpace="urn:xml-gov-au:icsm:egeodesy:0.4">LEICA GRX1200GGPRO</geo:igsModelCode>
                <geo:satelliteSystem>GPS+GLO</geo:satelliteSystem>
                <geo:firmwareVersion>7.02/3.017</geo:firmwareVersion>
                <geo:elevationCutoffSetting>5.0</geo:elevationCutoffSetting>
                <geo:dateInstalled>2009-04-22T15:45:00Z</geo:dateInstalled>
                <geo:dateRemoved>2010-10-06T08:15:00Z</geo:dateRemoved>
                <geo:temperatureStabilization>22.5</geo:temperatureStabilization>
            </geo:GnssReceiver>
            <geo:dateInserted>2009-04-22T15:45:00Z</geo:dateInserted>
        </geo:gnssReceiver>
        <geo:gnssReceiver>
            <geo:GnssReceiver gml:id="gnss-receiver-7">
                <geo:manufacturerSerialNumber>355290</geo:manufacturerSerialNumber>
                <geo:igsModelCode codeList="http://xml.gov.au/icsm/geodesyml/codelists/antenna-receiver-codelists.xml#GeodesyML_GNSSReceiverTypeCode" codeListValue="LEICA GRX1200GGPRO" codeSpace="urn:xml-gov-au:icsm:egeodesy:0.4">LEICA GRX1200GGPRO</geo:igsModelCode>
                <geo:satelliteSystem>GPS+GLO</geo:satelliteSystem>
                <geo:firmwareVersion>7.02/3.019</geo:firmwareVersion>
                <geo:elevationCutoffSetting>5.0</geo:elevationCutoffSetting>
                <geo:dateInstalled>2010-10-06T17:30:00Z</geo:dateInstalled>
                <geo:dateRemoved>2013-01-24T11:42:00Z</geo:dateRemoved>
                <geo:temperatureStabilization>22.5</geo:temperatureStabilization>
            </geo:GnssReceiver>
            <geo:dateInserted>2010-10-06T17:30:00Z</geo:dateInserted>
        </geo:gnssReceiver>
        <geo:gnssReceiver>
            <geo:GnssReceiver gml:id="gnss-receiver-8">
                <geo:manufacturerSerialNumber>355290</geo:manufacturerSerialNumber>
                <geo:igsModelCode codeList="http://xml.gov.au/icsm/geodesyml/codelists/antenna-receiver-codelists.xml#GeodesyML_GNSSReceiverTypeCode" codeListValue="LEICA GRX1200GGPRO" codeSpace="urn:xml-gov-au:icsm:egeodesy:0.4">LEICA GRX1200GGPRO</geo:igsModelCode>
                <geo:satelliteSystem>GPS+GLO</geo:satelliteSystem>
                <geo:firmwareVersion>8.51/3.019</geo:firmwareVersion>
                <geo:elevationCutoffSetting>5.0</geo:elevationCutoffSetting>
                <geo:dateInstalled>2013-01-24T11:58:00Z</geo:dateInstalled>
                <geo:dateRemoved>2014-06-18T14:30:00Z</geo:dateRemoved>
                <geo:temperatureStabilization xsi:nil="true"></geo:temperatureStabilization>
            </geo:GnssReceiver>
            <geo:dateInserted>2013-01-24T11:58:00Z</geo:dateInserted>
        </geo:gnssReceiver>
        <geo:gnssReceiver>
            <geo:GnssReceiver gml:id="gnss-receiver-9">
                <geo:manufacturerSerialNumber>355290</geo:manufacturerSerialNumber>
                <geo:igsModelCode codeList="http://xml.gov.au/icsm/geodesyml/codelists/antenna-receiver-codelists.xml#GeodesyML_GNSSReceiverTypeCode" codeListValue="LEICA GRX1200GGPRO" codeSpace="urn:xml-gov-au:icsm:egeodesy:0.4">LEICA GRX1200GGPRO</geo:igsModelCode>
                <geo:satelliteSystem>GPS+GLO</geo:satelliteSystem>
                <geo:firmwareVersion>8.51/3.054</geo:firmwareVersion>
                <geo:elevationCutoffSetting>5.0</geo:elevationCutoffSetting>
                <geo:dateInstalled>2014-06-18T14:47:00Z</geo:dateInstalled>
                <geo:dateRemoved>2016-12-29T12:32:00Z</geo:dateRemoved>
                <geo:temperatureStabilization xsi:nil="true"></geo:temperatureStabilization>
            </geo:GnssReceiver>
            <geo:dateInserted>2014-06-18T14:47:00Z</geo:dateInserted>
        </geo:gnssReceiver>
        <geo:gnssReceiver>
            <geo:GnssReceiver gml:id="gnss-receiver-10">
                <geo:manufacturerSerialNumber>355290</geo:manufacturerSerialNumber>
                <geo:igsModelCode codeList="http://xml.gov.au/icsm/geodesyml/codelists/antenna-receiver-codelists.xml#GeodesyML_GNSSReceiverTypeCode" codeListValue="LEICA GRX1200GGPRO" codeSpace="urn:xml-gov-au:icsm:egeodesy:0.4">LEICA GRX1200GGPRO</geo:igsModelCode>
                <geo:satelliteSystem>GPS+GLO</geo:satelliteSystem>
                <geo:firmwareVersion>8.51/3.055</geo:firmwareVersion>
                <geo:elevationCutoffSetting>5.0</geo:elevationCutoffSetting>
                <geo:dateInstalled>2016-12-29T12:46:00Z</geo:dateInstalled>
                <geo:dateRemoved></geo:dateRemoved>
                <geo:temperatureStabilization xsi:nil="true"></geo:temperatureStabilization>
            </geo:GnssReceiver>
            <geo:dateInserted>2016-12-29T12:46:00Z</geo:dateInserted>
        </geo:gnssReceiver>
        <geo:gnssAntenna>
            <geo:GnssAntenna gml:id="gnss-antenna-1">
                <geo:manufacturerSerialNumber>0220223328</geo:manufacturerSerialNumber>
                <geo:igsModelCode codeList="http://xml.gov.au/icsm/geodesyml/codelists/antenna-receiver-codelists.xml#GeodesyML_GNSSAntennaTypeCode" codeListValue="TRM29659.00 NONE" codeSpace="urn:xml-gov-au:icsm:egeodesy:0.4">TRM29659.00     NONE</geo:igsModelCode>
                <geo:antennaReferencePoint codeSpace="urn:ga-gov-au:antenna-reference-point-type">BPA</geo:antennaReferencePoint>
                <geo:marker-arpUpEcc.>0.0</geo:marker-arpUpEcc.>
                <geo:marker-arpNorthEcc.>0.0</geo:marker-arpNorthEcc.>
                <geo:marker-arpEastEcc.>0.0</geo:marker-arpEastEcc.>
                <geo:alignmentFromTrueNorth>0.0</geo:alignmentFromTrueNorth>
                <geo:antennaRadomeType codeSpace="urn:igs-org:gnss-radome-model-code">NONE</geo:antennaRadomeType>
                <geo:radomeSerialNumber></geo:radomeSerialNumber>
                <geo:antennaCableType></geo:antennaCableType>
                <geo:antennaCableLength xsi:nil="true"></geo:antennaCableLength>
                <geo:dateInstalled>2006-07-21T00:00:00Z</geo:dateInstalled>
                <geo:dateRemoved>2008-04-02T13:00:00Z</geo:dateRemoved>
            </geo:GnssAntenna>
            <geo:dateInserted>2006-07-21T00:00:00Z</geo:dateInserted>
        </geo:gnssAntenna>
        <geo:gnssAntenna>
            <geo:GnssAntenna gml:id="gnss-antenna-2">
                <geo:manufacturerSerialNumber>200455</geo:manufacturerSerialNumber>
                <geo:igsModelCode codeList="http://xml.gov.au/icsm/geodesyml/codelists/antenna-receiver-codelists.xml#GeodesyML_GNSSAntennaTypeCode" codeListValue="LEIAT504GG NONE" codeSpace="urn:xml-gov-au:icsm:egeodesy:0.4">LEIAT504GG      NONE</geo:igsModelCode>
                <geo:antennaReferencePoint codeSpace="urn:ga-gov-au:antenna-reference-point-type">BPA</geo:antennaReferencePoint>
                <geo:marker-arpUpEcc.>0.0</geo:marker-arpUpEcc.>
                <geo:marker-arpNorthEcc.>0.0</geo:marker-arpNorthEcc.>
                <geo:marker-arpEastEcc.>0.0</geo:marker-arpEastEcc.>
                <geo:alignmentFromTrueNorth>0.0</geo:alignmentFromTrueNorth>
                <geo:antennaRadomeType codeSpace="urn:igs-org:gnss-radome-model-code">NONE</geo:antennaRadomeType>
                <geo:radomeSerialNumber></geo:radomeSerialNumber>
                <geo:antennaCableType></geo:antennaCableType>
                <geo:antennaCableLength>30.0</geo:antennaCableLength>
                <geo:dateInstalled>2008-04-04T12:00:00Z</geo:dateInstalled>
                <geo:dateRemoved></geo:dateRemoved>
            </geo:GnssAntenna>
            <geo:dateInserted>2008-04-04T12:00:00Z</geo:dateInserted>
        </geo:gnssAntenna>
        <geo:frequencyStandard>
            <geo:FrequencyStandard gml:id="frequency-standard-1">
                <geo:standardType codeSpace="urn:ga-gov-au:frequency-standard-type">INTERNAL</geo:standardType>
                <geo:inputFrequency>0.0</geo:inputFrequency>
                <gml:validTime>
                    <gml:TimePeriod gml:id="frequency-standard-1--time-period-1">
                        <gml:beginPosition>2006-07-21</gml:beginPosition>
                        <gml:endPosition></gml:endPosition>
                    </gml:TimePeriod>
                </gml:validTime>
                <geo:notes></geo:notes>
            </geo:FrequencyStandard>
            <geo:dateInserted>2006-07-21</geo:dateInserted>
        </geo:frequencyStandard>
        <geo:humiditySensor>
            <geo:HumiditySensor gml:id="humidity-sensor-1">
                <geo:type codeSpace="urn:ga-gov-au:humidity-sensor-type">Met3</geo:type>
                <geo:manufacturer>Paroscientific</geo:manufacturer>
                <geo:serialNumber>DQ80812</geo:serialNumber>
                <geo:heightDiffToAntenna>-0.2</geo:heightDiffToAntenna>
                <geo:calibrationDate></geo:calibrationDate>
                <gml:validTime>
                    <gml:TimePeriod gml:id="humidity-sensor-1--time-period-1">
                        <gml:beginPosition>2006-07-21</gml:beginPosition>
                        <gml:endPosition></gml:endPosition>
                    </gml:TimePeriod>
                </gml:validTime>
                <geo:dataSamplingInterval>900.0</geo:dataSamplingInterval>
                <geo:accuracy-percentRelativeHumidity>2.0</geo:accuracy-percentRelativeHumidity>
                <geo:aspiration></geo:aspiration>
            </geo:HumiditySensor>
            <geo:dateInserted>2006-07-21</geo:dateInserted>
        </geo:humiditySensor>
        <geo:pressureSensor>
            <geo:PressureSensor gml:id="pressure-sensor-1">
                <geo:type codeSpace="urn:ga-gov-au:pressure-sensor-type">Met3</geo:type>
                <geo:manufacturer>Paroscientific</geo:manufacturer>
                <geo:serialNumber>DQ80812</geo:serialNumber>
                <geo:heightDiffToAntenna>-0.2</geo:heightDiffToAntenna>
                <geo:calibrationDate></geo:calibrationDate>
                <gml:validTime>
                    <gml:TimePeriod gml:id="pressure-sensor-1--time-period-2">
                        <gml:beginPosition>2006-07-21</gml:beginPosition>
                        <gml:endPosition></gml:endPosition>
                    </gml:TimePeriod>
                </gml:validTime>
                <geo:dataSamplingInterval>900.0</geo:dataSamplingInterval>
                <geo:accuracy-hPa>1.0</geo:accuracy-hPa>
            </geo:PressureSensor>
            <geo:dateInserted>2006-07-21</geo:dateInserted>
        </geo:pressureSensor>
        <geo:temperatureSensor>
            <geo:TemperatureSensor gml:id="temperature-sensor-1">
                <geo:type codeSpace="urn:ga-gov-au:temperature-sensor-type">Met3</geo:type>
                <geo:manufacturer>Paroscientific</geo:manufacturer>
                <geo:serialNumber>DQ80812</geo:serialNumber>
                <geo:heightDiffToAntenna>-0.2</geo:heightDiffToAntenna>
                <geo:calibrationDate></geo:calibrationDate>
                <gml:validTime>
                    <gml:TimePeriod gml:id="temperature-sensor-1--time-period-3">
                        <gml:beginPosition>2006-07-21</gml:beginPosition>
                        <gml:endPosition></gml:endPosition>
                    </gml:TimePeriod>
                </gml:validTime>
                <geo:dataSamplingInterval>900.0</geo:dataSamplingInterval>
                <geo:accuracy-degreesCelcius>0.5</geo:accuracy-degreesCelcius>
                <geo:aspiration></geo:aspiration>
            </geo:TemperatureSensor>
            <geo:dateInserted>2006-07-21</geo:dateInserted>
        </geo:temperatureSensor>
        <geo:siteContact gml:id="agency-1">
            <gmd:MD_SecurityConstraints>
                <gmd:classification gco:nilReason="missing"/>
            </gmd:MD_SecurityConstraints>
            <gmd:CI_ResponsibleParty>
                <gmd:individualName>
                    <gco:CharacterString>Ana Carla Bernardes</gco:CharacterString>
                </gmd:individualName>
                <gmd:organisationName>
                    <gco:CharacterString>Direcao-Geral do Territorio</gco:CharacterString>
                </gmd:organisationName>
                <gmd:contactInfo>
                    <gmd:CI_Contact>
                        <gmd:phone>
                            <gmd:CI_Telephone>
                                <gmd:voice>
                                    <gco:CharacterString>351213819600 Ext.239</gco:CharacterString>
                                </gmd:voice>
                                <gmd:facsimile>
                                    <gco:CharacterString>351213819694</gco:CharacterString>
                                </gmd:facsimile>
                            </gmd:CI_Telephone>
                        </gmd:phone>
                        <gmd:address>
                            <gmd:CI_Address>
                                <gmd:deliveryPoint>
                                    <gco:CharacterString>Rua Artilharia Um, 107
1099-052 Lisboa - Portugal</gco:CharacterString>
                                </gmd:deliveryPoint>
                                <gmd:city>
                                    <gco:CharacterString></gco:CharacterString>
                                </gmd:city>
                                <gmd:postalCode>
                                    <gco:CharacterString></gco:CharacterString>
                                </gmd:postalCode>
                                <gmd:country>
                                    <gco:CharacterString></gco:CharacterString>
                                </gmd:country>
                                <gmd:electronicMailAddress>
                                    <gco:CharacterString>abernardes@dgterritorio.pt</gco:CharacterString>
                                </gmd:electronicMailAddress>
                            </gmd:CI_Address>
                        </gmd:address>
                    </gmd:CI_Contact>
                </gmd:contactInfo>
                <gmd:role>
                    <gmd:CI_RoleCode codeList="http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#CI_RoleCode" codeListValue="pointOfContact"></gmd:CI_RoleCode>
                </gmd:role>
            </gmd:CI_ResponsibleParty>
        </geo:siteContact>
        <geo:siteMetadataCustodian gml:id="agency-2">
            <gmd:MD_SecurityConstraints>
                <gmd:classification gco:nilReason="missing"/>
            </gmd:MD_SecurityConstraints>
            <gmd:CI_ResponsibleParty>
                <gmd:individualName>
                    <gco:CharacterString>Manuela Vasconcelos</gco:CharacterString>
                </gmd:individualName>
                <gmd:organisationName>
                    <gco:CharacterString>Direcao-Geral do Territorio</gco:CharacterString>
                </gmd:organisationName>
                <gmd:contactInfo>
                    <gmd:CI_Contact>
                        <gmd:phone>
                            <gmd:CI_Telephone>
                                <gmd:voice>
                                    <gco:CharacterString>351213819600 Ext.235</gco:CharacterString>
                                </gmd:voice>
                                <gmd:facsimile>
                                    <gco:CharacterString>351213819694</gco:CharacterString>
                                </gmd:facsimile>
                            </gmd:CI_Telephone>
                        </gmd:phone>
                        <gmd:address>
                            <gmd:CI_Address>
                                <gmd:deliveryPoint>
                                    <gco:CharacterString>Rua Artilharia Um, 107
1099-052 Lisboa - Portugal</gco:CharacterString>
                                </gmd:deliveryPoint>
                                <gmd:city>
                                    <gco:CharacterString></gco:CharacterString>
                                </gmd:city>
                                <gmd:postalCode>
                                    <gco:CharacterString></gco:CharacterString>
                                </gmd:postalCode>
                                <gmd:country>
                                    <gco:CharacterString></gco:CharacterString>
                                </gmd:country>
                                <gmd:electronicMailAddress>
                                    <gco:CharacterString>mvasconcelos@dgterritorio.pt</gco:CharacterString>
                                </gmd:electronicMailAddress>
                            </gmd:CI_Address>
                        </gmd:address>
                    </gmd:CI_Contact>
                </gmd:contactInfo>
                <gmd:role>
                    <gmd:CI_RoleCode codeList="http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#CI_RoleCode" codeListValue="pointOfContact"></gmd:CI_RoleCode>
                </gmd:role>
            </gmd:CI_ResponsibleParty>
        </geo:siteMetadataCustodian>
        <geo:moreInformation>
            <geo:dataCenter>BKG</geo:dataCenter>
            <geo:dataCenter>OLG</geo:dataCenter>
            <geo:urlForMoreInformation></geo:urlForMoreInformation>
            <geo:siteMap></geo:siteMap>
            <geo:siteDiagram></geo:siteDiagram>
            <geo:horizonMask></geo:horizonMask>
            <geo:monumentDescription></geo:monumentDescription>
            <geo:sitePictures>Y</geo:sitePictures>
            <geo:notes></geo:notes>
            <geo:antennaGraphicsWithDimensions></geo:antennaGraphicsWithDimensions>
            <geo:insertTextGraphicFromAntenna></geo:insertTextGraphicFromAntenna>
            <geo:DOI codeSpace="urn:ga-gov-au:self.moreInformation-type">TODO</geo:DOI>
        </geo:moreInformation>
    </geo:siteLog>
</geo:GeodesyML>


text:
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>

#define PACKET_BUFFER_SIZE    32768

enum {
   SUCCESS = 0,
   SHOWED_USAGE,
   FAILED_TO_OPEN_PKTFILE,
   FAILED_TO_OPEN_OUTPUT_FILE,
   BYTE_ORDER_MARK_MISSING,
   INVALID_BYTE_ORDER_MARK,
   MEMORY_ALLOCATION_FAILURE,
   PACKET_TOO_BIG,
};

/** Native byte order word */
#define NATIVE_BYTE_ORDER  0x50415753U
/** Reverse of native byte order - need to swap bytes around */
#define SWAP_BYTE_ORDER    0x53574150U

static unsigned long reverse_byte_order( unsigned long value )
{
   /* Reverse the order of the bytes in the word */
   return ((value << 24) | ((value & 0xFF00) << 8) | ((value >> 8) & 0xFF00) | (value >> 24));
}

int main(int argc, char **argv)
{
   int status = SUCCESS;
   FILE *pktfile = NULL, *output_file = NULL;
   uint32_t byte_order, packet_size, packet_read;
   char *buffer = NULL;

   if (argc < 2)
   {
      printf("\
Usage:\n\
  %s <pkt file> [<output file>]\n\
<pkt file> is the file to read.\n\
<output file>, if given, will receive the unpacketized data.\n", argv[0]);
      status = SHOWED_USAGE;
      goto end_program;
   }

   pktfile = fopen(argv[1], "rb");
   if (!pktfile)
   {
      printf("Failed to open pkt file <%s> for reading.\n", argv[1]);
      status = FAILED_TO_OPEN_PKTFILE;
      goto end_program;
   }

   if (fread(&byte_order, 1, sizeof(byte_order), pktfile) != sizeof(byte_order))
   {
      printf("Failed to read byte order header from pkt file.\n");
      status = BYTE_ORDER_MARK_MISSING;
      goto end_program;
   }

   if (byte_order != NATIVE_BYTE_ORDER && byte_order != SWAP_BYTE_ORDER)
   {
      printf("Invalid byte order header: 0x%08x (%u)\n", byte_order, byte_order);
      status = INVALID_BYTE_ORDER_MARK;
      goto end_program;
   }

   buffer = (char *)malloc(PACKET_BUFFER_SIZE);
   if (!buffer)
   {
      printf("Memory allocation failed\n");
      status = MEMORY_ALLOCATION_FAILURE;
      goto end_program;
   }

   if (argc > 2)
   {
      output_file = fopen(argv[2], "wb");
      if (!output_file)
      {
         printf("Failed to open <%s> for output.\n", argv[2]);
         status = FAILED_TO_OPEN_OUTPUT_FILE;
         goto end_program;
      }
   }

   while (fread(&packet_size, 1, sizeof(packet_size), pktfile) == sizeof(packet_size))
   {
      if (byte_order == SWAP_BYTE_ORDER)
         packet_size = reverse_byte_order(packet_size);

      if (packet_size >= PACKET_BUFFER_SIZE)
      {
         printf("*** Packet size is bigger than buffer (%u > %u)\n", packet_size, PACKET_BUFFER_SIZE - 1);
         status = PACKET_TOO_BIG;
         goto end_program;
      }

      packet_read = fread(buffer, 1, packet_size, pktfile);

      if (output_file)
      {
         fwrite(buffer, 1, packet_size, output_file);
      } else {
         buffer[packet_size] = '\0';
         printf("%s", buffer);
         getchar();
      }

      if (packet_read != packet_size)
         printf("*** Invalid packet size (expected %u, got %u)\n", packet_size, packet_read);
   }

end_program:
   if (pktfile) fclose(pktfile);
   if (output_file) fclose(output_file);
   if (buffer) free(buffer);
   return -status;
}


text:
from datetime import timedelta, datetime
import mock

from croniter import croniter
from django.test import TestCase
from django.utils import timezone
from freezegun import freeze_time
import pytz

from ... import tasks, models
from ...tests import factories

class DeleteExpiredBackupsTaskTest(TestCase):

    def setUp(self):
        self.expired_backup1 = factories.BackupFactory(
            state=models.Backup.States.OK, kept_until=timezone.now() - timedelta(minutes=1))
        self.expired_backup2 = factories.BackupFactory(
            state=models.Backup.States.OK, kept_until=timezone.now() - timedelta(minutes=10))

    @mock.patch('waldur_openstack.openstack_tenant.executors.BackupDeleteExecutor.execute')
    def test_command_starts_backend_deletion(self, mocked_execute):
        tasks.DeleteExpiredBackups().run()
        mocked_execute.assert_has_calls([
            mock.call(self.expired_backup1),
            mock.call(self.expired_backup2),
        ], any_order=True)

class DeleteExpiredSnapshotsTaskTest(TestCase):

    def setUp(self):
        self.expired_snapshot1 = factories.SnapshotFactory(
            state=models.Snapshot.States.OK, kept_until=timezone.now() - timedelta(minutes=1))
        self.expired_snapshot2 = factories.SnapshotFactory(
            state=models.Snapshot.States.OK, kept_until=timezone.now() - timedelta(minutes=10))

    @mock.patch('waldur_openstack.openstack_tenant.executors.SnapshotDeleteExecutor.execute')
    def test_command_starts_snapshot_deletion(self, mocked_execute):
        tasks.DeleteExpiredSnapshots().run()
        mocked_execute.assert_has_calls([
            mock.call(self.expired_snapshot1),
            mock.call(self.expired_snapshot2),
        ], any_order=True)

class BackupScheduleTaskTest(TestCase):

    def setUp(self):
        self.not_active_schedule = factories.BackupScheduleFactory(is_active=False)

        self.backupable = factories.InstanceFactory(
            state=models.Instance.States.OK,
        )
        self.schedule_for_execution = factories.BackupScheduleFactory(instance=self.backupable)
        self.schedule_for_execution.next_trigger_at = timezone.now() - timedelta(minutes=10)
        self.schedule_for_execution.save()

        self.future_schedule = factories.BackupScheduleFactory(instance=self.backupable)
        self.future_schedule.next_trigger_at = timezone.now() + timedelta(minutes=2)
        self.future_schedule.save()

    def test_command_does_not_create_backups_created_for_not_active_schedules(self):
        tasks.ScheduleBackups().run()
        self.assertEqual(self.not_active_schedule.backups.count(), 0)

    def test_command_create_one_backup_created_for_schedule_with_next_trigger_in_past(self):
        tasks.ScheduleBackups().run()
        self.assertEqual(self.schedule_for_execution.backups.count(), 1)

    def test_command_does_not_create_a_second_backup_if_timedelta_is_less_than_schedule(self):
        tasks.ScheduleBackups().run()
        self.assertEqual(self.schedule_for_execution.backups.count(), 1)
        # timedelta is 0
        tasks.ScheduleBackups().run()
        self.assertEqual(self.schedule_for_execution.backups.count(), 1)

    def test_command_create_two_backups_if_enough_time_has_passed(self):
        tasks.ScheduleBackups().run()
        self.assertEqual(self.schedule_for_execution.backups.count(), 1)
        tasks.ScheduleBackups().run()
        self._trigger_next_backup(timezone.now())
        self.assertEqual(self.schedule_for_execution.backups.count(), 2)

    def test_command_does_not_create_backups_created_for_schedule_with_next_trigger_in_future(self):
        tasks.ScheduleBackups().run()
        self.assertEqual(self.future_schedule.backups.count(), 0)

    def test_command_does_not_create_more_backups_than_maximal_number_of_resources(self):
        maximum_number = 3
        self.schedule_for_execution.maximal_number_of_resources = maximum_number
        self.schedule_for_execution.save()
        tasks.ScheduleBackups().run()

        self.assertEqual(self.schedule_for_execution.backups.count(), 1)
        base_time = self._trigger_next_backup(timezone.now())
        self.assertEqual(self.schedule_for_execution.backups.count(), 2)
        base_time = self._trigger_next_backup(base_time)
        self.assertEqual(self.schedule_for_execution.backups.count(), 3)
        self._trigger_next_backup(base_time)

        self.assertEqual(self.schedule_for_execution.backups.count(), maximum_number)

    def test_command_creates_backups_up_to_maximal_number_if_limit_is_updated(self):
        self.schedule_for_execution.maximal_number_of_resources = 2
        self.schedule_for_execution.save()
        tasks.ScheduleBackups().run()

        self.assertEqual(self.schedule_for_execution.backups.count(), 1)
        base_time = self._trigger_next_backup(timezone.now())
        self.assertEqual(self.schedule_for_execution.backups.count(), 2)
        base_time = self._trigger_next_backup(base_time)
        self.assertEqual(self.schedule_for_execution.backups.count(), 2)

        self.schedule_for_execution.maximal_number_of_resources = 3
        self.schedule_for_execution.save()
        self._trigger_next_backup(base_time)
        self.assertEqual(self.schedule_for_execution.backups.count(), 3)

    def test_command_removes_last_backups_if_their_amount_exceeds_allowed_limit(self):
        now = timezone.now()
        todays_backup = factories.BackupFactory(instance=self.backupable, kept_until=now)
        older_backup = factories.BackupFactory(instance=self.backupable, kept_until=now - timedelta(minutes=30))
        oldest_backup = factories.BackupFactory(instance=self.backupable, kept_until=now - timedelta(minutes=50))
        self.schedule_for_execution.backups.add(*[todays_backup, older_backup, oldest_backup])
        self.schedule_for_execution.maximal_number_of_resources = 1
        self.schedule_for_execution.save()
        tasks.ScheduleBackups().run()

        old_backup_exist = models.Backup.objects.filter(id__in=[older_backup.id, oldest_backup.id]).exists()
        self.assertFalse(old_backup_exist)
        self.assertTrue(models.Backup.objects.filter(id=todays_backup.id).exists())
        self.assertEqual(self.schedule_for_execution.backups.count(), 1)

    def _trigger_next_backup(self, base_time):
        base_time = base_time.replace(tzinfo=pytz.timezone(self.schedule_for_execution.timezone))
        next_trigger_at = croniter(self.schedule_for_execution.schedule, base_time).get_next(datetime)
        mocked_now = next_trigger_at + timezone.timedelta(seconds=5)
        with freeze_time(mocked_now):
            tasks.ScheduleBackups().run()

        return mocked_now

class SnapshotScheduleTaskTest(TestCase):

    def test_command_does_not_create_snapshots_created_for_not_active_schedules(self):
        self.not_active_schedule = factories.SnapshotScheduleFactory(is_active=False)

        tasks.ScheduleSnapshots().run()

        self.assertEqual(self.not_active_schedule.snapshots.count(), 0)

    def test_command_create_one_snapshot_for_schedule_with_next_trigger_in_past(self):
        self.schedule_for_execution = factories.SnapshotScheduleFactory()
        self.schedule_for_execution.next_trigger_at = timezone.now() - timedelta(minutes=10)
        self.schedule_for_execution.save()

        tasks.ScheduleSnapshots().run()

        self.assertEqual(self.schedule_for_execution.snapshots.count(), 1)

    def test_command_does_not_create_snapshots_created_for_schedule_with_next_trigger_in_future(self):
        self.future_schedule = factories.SnapshotScheduleFactory()
        self.future_schedule.next_trigger_at = timezone.now() + timedelta(minutes=2)
        self.future_schedule.save()

        tasks.ScheduleSnapshots().run()

        self.assertEqual(self.future_schedule.snapshots.count(), 0)

class SetErredProvisioningResourcesTaskTest(TestCase):
    def test_stuck_resource_becomes_erred(self):
        with mock.patch('model_utils.fields.now') as mocked_now:
            mocked_now.return_value = timezone.now() - timedelta(hours=1)
            stuck_vm = factories.InstanceFactory(state=models.Instance.States.CREATING)
            stuck_volume = factories.VolumeFactory(state=models.Volume.States.CREATING)

        tasks.SetErredStuckResources().run()

        stuck_vm.refresh_from_db()
        stuck_volume.refresh_from_db()

        self.assertEqual(stuck_vm.state, models.Instance.States.ERRED)
        self.assertEqual(stuck_volume.state, models.Volume.States.ERRED)

    def test_ok_vm_unchanged(self):
        ok_vm = factories.InstanceFactory(
            state=models.Instance.States.CREATING,
            modified=timezone.now() - timedelta(minutes=1)
        )
        ok_volume = factories.VolumeFactory(
            state=models.Volume.States.CREATING,
            modified=timezone.now() - timedelta(minutes=1)
        )
        tasks.SetErredStuckResources().run()

        ok_vm.refresh_from_db()
        ok_volume.refresh_from_db()

        self.assertEqual(ok_vm.state, models.Instance.States.CREATING)
        self.assertEqual(ok_volume.state, models.Volume.States.CREATING)


text:
package org.vizzini.example.boardgame.tictactoe;

import org.vizzini.core.game.Token;

/**
 * Provides utility methods for an environment.
 */
public final class EnvironmentUtils
{
    /**
     * @param environment Environment.
     *
     * @return a new rotated environment.
     */
    public TTTEnvironment getX180(final TTTEnvironment environment)
    {
        final TTTEnvironment answer = environment.copy();
        answer.clear();

        for (int x = 0; x < TTTPosition.MAX_X; x++)
        {
            for (int y = 0; y < TTTPosition.MAX_Y; y++)
            {
                final TTTPosition position = TTTPosition.findByCoordinates(x, y);
                final Token token = environment.getTokenAt(position);
                final TTTPosition position2 = getX180(environment, x, y, 0);
                answer.placeToken(position2, token);
            }
        }

        return answer;
    }

    /**
     * @param environment Environment.
     * @param x X coordinate.
     * @param y Y coordinate.
     * @param z Z coordinate.
     * @return the position for the given parameters.
     */
    public TTTPosition getX180(final TTTEnvironment environment, final int x, final int y, final int z)
    {
        return TTTPosition.findByCoordinates(x, TTTPosition.MAX_Y - y - 1);
    }

    /**
     * @param environment Environment.
     * @return a new rotated environment.
     */
    public TTTEnvironment getY180(final TTTEnvironment environment)
    {
        final TTTEnvironment answer = environment.copy();
        answer.clear();

        for (int x = 0; x < TTTPosition.MAX_X; x++)
        {
            for (int y = 0; y < TTTPosition.MAX_Y; y++)
            {
                final TTTPosition position = TTTPosition.findByCoordinates(x, y);
                final Token token = environment.getTokenAt(position);
                final TTTPosition position2 = getY180(environment, x, y, 0);
                answer.placeToken(position2, token);
            }
        }

        return answer;
    }

    /**
     * @param environment Environment.
     * @param x X coordinate.
     * @param y Y coordinate.
     * @param z Z coordinate.
     * @return the position for the given parameters.
     */
    public TTTPosition getY180(final TTTEnvironment environment, final int x, final int y, final int z)
    {
        return TTTPosition.findByCoordinates(TTTPosition.MAX_X - x - 1, y);
    }

    /**
     * @param environment Environment.
     * @return a new rotated environment.
     */
    public TTTEnvironment getZ090(final TTTEnvironment environment)
    {
        final TTTEnvironment answer = environment.copy();
        answer.clear();

        for (int x = 0; x < TTTPosition.MAX_X; x++)
        {
            for (int y = 0; y < TTTPosition.MAX_Y; y++)
            {
                final TTTPosition position = TTTPosition.findByCoordinates(x, y);
                final Token token = environment.getTokenAt(position);

                if (token != null)
                {
                    final TTTPosition position2 = getZ090(environment, x, y, 0);
                    answer.placeToken(position2, token);
                }
            }
        }

        return answer;
    }

    /**
     * @param environment Environment.
     * @param x X coordinate.
     * @param y Y coordinate.
     * @param z Z coordinate.
     * @return the position for the given parameters.
     */
    public TTTPosition getZ090(final TTTEnvironment environment, final int x, final int y, final int z)
    {
        return TTTPosition.findByCoordinates(TTTPosition.MAX_Y - y - 1, x);
    }

    /**
     * @param environment Environment.
     * @return a new rotated environment.
     */
    public TTTEnvironment getZ180(final TTTEnvironment environment)
    {
        final TTTEnvironment answer = environment.copy();
        answer.clear();

        for (int x = 0; x < TTTPosition.MAX_X; x++)
        {
            for (int y = 0; y < TTTPosition.MAX_Y; y++)
            {
                final TTTPosition position = TTTPosition.findByCoordinates(x, y);
                final Token token = environment.getTokenAt(position);

                if (token != null)
                {
                    final TTTPosition position2 = getZ180(environment, x, y, 0);
                    answer.placeToken(position2, token);
                }
            }
        }

        return answer;
    }

    /**
     * @param environment Environment.
     * @param x X coordinate.
     * @param y Y coordinate.
     * @param z Z coordinate.
     * @return the position for the given parameters.
     */
    public TTTPosition getZ180(final TTTEnvironment environment, final int x, final int y, final int z)
    {
        return TTTPosition.findByCoordinates(TTTPosition.MAX_X - x - 1, TTTPosition.MAX_Y - y - 1);
    }

    /**
     * @param environment Environment.
     * @return a new rotated environment.
     */
    public TTTEnvironment getZ270(final TTTEnvironment environment)
    {
        final TTTEnvironment answer = environment.copy();
        answer.clear();

        for (int x = 0; x < TTTPosition.MAX_X; x++)
        {
            for (int y = 0; y < TTTPosition.MAX_Y; y++)
            {
                final TTTPosition position = TTTPosition.findByCoordinates(x, y);
                final Token token = environment.getTokenAt(position);

                if (token != null)
                {
                    final TTTPosition position2 = getZ270(environment, x, y, 0);
                    answer.placeToken(position2, token);
                }
            }
        }

        return answer;
    }

    /**
     * @param environment Environment.
     * @param x X coordinate.
     * @param y Y coordinate.
     * @param z Z coordinate.
     * @return the position for the given parameters.
     */
    public TTTPosition getZ270(final TTTEnvironment environment, final int x, final int y, final int z)
    {
        return TTTPosition.findByCoordinates(y, TTTPosition.MAX_X - x - 1);
    }
}


text:
<?php namespace Ciarand\Midterm\Expectation;

use Ciarand\Midterm\BaseComponent;
use Ciarand\Midterm\Exception\SpecFailedException;
use Ciarand\Midterm\Presenter\PresenterFactory;

abstract class AbstractExpectation extends BaseComponent implements
    ExpectationInterface
{
    protected $negated = false;

    protected $actual;

    protected $message;

    protected $presenter;

    public function __construct($actual)
    {
        $this->actual = $actual;
    }

    public function check($boolean)
    {
        if ($this->negated) {
            $boolean = !$boolean;
            $this->message = "NEGATED: " . $this->message;
        }

        if ($boolean) {
            return;
        }

        throw new SpecFailedException($this->message);
    }

    public function not()
    {
        $this->negated = !(bool) $this->negated;

        return $this;
    }

    public function isNegated()
    {
        return (bool) $this->negated;
    }

    public function present($var)
    {
        if (!$this->presenter) {
            $this->presenter = new Presenterfactory;
        }

        return $this->presenter->present($var);
    }
}


text:
Configure
*********

Create the tourbillon-linux configuration file
===============================================

You must create the tourbillon-linux configuration file in order to use tourbillon-linux.
By default, the configuration file must be placed in **/etc/tourbillon/conf.d** and its name
must be **linux.conf**.

The tourbillon-linux configuration file looks like: ::

	{
		"database": {
			"name": "linux",
			"duration": "365d",
			"replication": "1"
		},
		"hostname": "localhost",
		"cpu_usage_frequency": 1,
		"memory_usage_frequency": 1,
		"disks_io_stats_frequency": 1,
		"disks_usage_frequency": 1,
		"include_disks":["disk0"],
		"include_partitions":["/dev/disk1"]
	}

You can customize the database name, the hostname with which datapoints are tagged,
the frequency at which measures are collected and the disks and partitions that you want to  colect metrics for.

Enable the tourbillon-linux metrics collectors
==============================================

To enable the tourbillon-linux metrics collectors types the following command: ::

	$ sudo -i tourbillon enable tourbillon.linux=<collector_name>

Where <collector_name> can be one of or a comma separated list of the colectors names within:

	* get_cpu_usage
	* get_memory_usage
	* get_disks_usage
	* get_disks_io_stats
	* get_net_io_stats


text:
package fr.unice.polytech.al.trafficlight.central.data;

import fr.unice.polytech.al.trafficlight.central.data.mock.FakeGeolocalizedCrossRoad;
import fr.unice.polytech.al.trafficlight.graph.Edge;
import fr.unice.polytech.al.trafficlight.graph.WeightedDirectedGraph;
import fr.unice.polytech.al.trafficlight.fakedata.CrossroadsFakeData;
import fr.unice.polytech.al.trafficlight.utils.CrossRoad;

import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Map;

/**
 * Gathering of the graph of the crossroad
 * with their corresponding name to retrieve them
 *
 * Created by tom on 27/01/17.
 */
public class CrossRoadGraphLinker {
    private WeightedDirectedGraph<GeolocalizedCrossroad> graph;
    private Map<String, GeolocalizedCrossroad> crossRoadData;

    public CrossRoadGraphLinker(){
        crossRoadData = FakeGeolocalizedCrossRoad.get();
        graph = FakeGeolocalizedCrossRoad.getGraph();
    }

    public WeightedDirectedGraph<GeolocalizedCrossroad> getGraph() {
        return graph;
    }

    public void setGraph(WeightedDirectedGraph<GeolocalizedCrossroad> graph) {
        this.graph = graph;
    }

    public Map<String, GeolocalizedCrossroad> getCrossRoadData() {
        return crossRoadData;
    }

    public void setCrossRoadData(Map<String, GeolocalizedCrossroad> crossRoadData) {
        this.crossRoadData = crossRoadData;
    }

    public Collection<Edge<GeolocalizedCrossroad>> getEdgesFromCrossRoadWithRoad(GeolocalizedCrossroad end, String road) {
        List<Edge<GeolocalizedCrossroad>> crossroads;

        crossroads = graph.getNeighboursByEdge(end, road);

        return crossroads;
    }

    public Collection<Edge<GeolocalizedCrossroad>> getEdgesToCrossRoadWithRoad(GeolocalizedCrossroad begin, String road) {
        List<Edge<GeolocalizedCrossroad>> crossroads;

        crossroads = graph.getNodesThatEntersInNodeFromEdge(begin, road);

        return crossroads;
    }
}


text:
require 'spec_helper'

describe Ingenia::Bundle do
  let( :empty_api_response ) { { 'status' => 'okay', 'data' => {} } }

  describe '#create' do
    it 'calls post' do
      name = "this is a test bundle"

      expected_path = '/bundles'
      expected_request = {:api_key=>"1234", :json=>"{\"name\":\"this is a test bundle\"}"}

      expect(Ingenia::Api::Remote).to receive( :post ).
        with( expected_path, expected_request).
        and_return( empty_api_response )

      Ingenia::Bundle.create( :name => name )
    end
  end

  describe '#update' do
    it 'calls put' do
      name = "this is an updated test bundle"

      expected_path = '/bundles/1'
      expected_request = { :json=>"{\"name\":\"#{name}\"}", :api_key=>"1234" }

      expect(Ingenia::Api::Remote).to receive( :put ).
        with( expected_path, expected_request).
        and_return( empty_api_response )

      Ingenia::Bundle.update( 1, :name => name )
    end
  end

  describe '#get' do
    it 'calls get' do
      expected_path = '/bundles/1'
      expected_request = { :api_key=>"1234" }

      expect(Ingenia::Api::Remote).to receive( :get ).
        with( expected_path, expected_request).
        and_return( empty_api_response )

      Ingenia::Bundle.get(1)
    end
  end

  describe '#all' do
    it 'calls get' do
      expected_path = '/bundles'
      expected_request = { :offset => 0, :limit => 50, :api_key=>"1234" }

      expect(Ingenia::Api::Remote).to receive( :get ).
        with( expected_path, expected_request).
        and_return( empty_api_response )

      Ingenia::Bundle.all :offset => 0, :limit => 50
    end
  end

  describe '#delete' do
    it 'calls delete' do
      expected_path = '/bundles/1'
      expected_request = {:params=>{:api_key=>"1234"}}

      expect(Ingenia::Api::Remote).to receive( :delete ).
        with( expected_path, expected_request).
        and_return( empty_api_response )

      Ingenia::Bundle.destroy(1)
    end
  end
end


text:
package org.apache.camel.itest.osgi.restlet.example;

import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.PUT;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Response;

@Path("/domainservice/")
public class DomainService {

    public DomainService() {
    }

    @GET
    @Path("/domains/{id}/")
    @Produces("application/json")
    public String getDomain(@PathParam("id") String id) {
        return "{www.google.com}";
    }

    @PUT
    @Path("/domains/")
    @Produces("application/json")
    public Response updateDomain(String domain) {
        return Response.ok().build();
    }

    @POST
    @Path("/domains/")
    @Produces("application/xml")
    public CheckDomainAvailabilityRestResponse addDomain(CheckDomainRequest request) {
        CheckDomainAvailabilityRestResponse response = new CheckDomainAvailabilityRestResponse();

        response.setRequestId(String.valueOf(request.getId()));
        response.setResponseBody("OK");

        return response;
    }
}


text:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Theoria: theoria::config::EnvVarResolver Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>

<link href="search/search.css" rel="stylesheet" type="text/css"/>

<link href="doxygen.css" rel="stylesheet" type="text/css" />

Theoria

theoria

config

EnvVarResolver

Public Member Functions |
List of all members

theoria::config::EnvVarResolver Class Reference

#include <Resolve.h>

Inheritance diagram for theoria::config::EnvVarResolver:

<map name="theoria_1_1config_1_1EnvVarResolver_inherit__map" id="theoria_1_1config_1_1EnvVarResolver_inherit__map">
<area shape="rect" id="node2" href="classtheoria_1_1config_1_1ConfigVariableResolver.html" title="theoria::config::ConfigVariable\lResolver" alt="" coords="10,5,207,47"/>
</map>
[legend]

Collaboration diagram for theoria::config::EnvVarResolver:

<map name="theoria_1_1config_1_1EnvVarResolver_coll__map" id="theoria_1_1config_1_1EnvVarResolver_coll__map">
<area shape="rect" id="node2" href="classtheoria_1_1config_1_1ConfigVariableResolver.html" title="theoria::config::ConfigVariable\lResolver" alt="" coords="10,5,207,47"/>
</map>
[legend]

Public Member Functions

Result 	lookup (const std::string &name) const override

virtual std::string 	name () const override

 Public Member Functions inherited from theoria::config::ConfigVariableResolver

 	ConfigVariableResolver ()

virtual 	~ConfigVariableResolver ()

std::string 	resolve (const std::string &var) const

ResultVec 	resolveAll (const std::string &var) const

void 	append (ConfigVariableResolver *resolver)

const ConfigVariableResolver * 	next () const

Additional Inherited Members

 Public Types inherited from theoria::config::ConfigVariableResolver

using 	Result = std::pair< const ConfigVariableResolver *, std::string >

using 	ResultVec = std::vector< Result >

Detailed Description

Resolves variables from the os environment

Member Function Documentation

§ lookup()

          Result EnvVarResolver::lookup
          (
          const std::string &
          name	)
           const

overridevirtual

Resolve name by looking at env variable with same name

Implements theoria::config::ConfigVariableResolver.

§ name()

          std::string EnvVarResolver::name
          (
          	)
           const

overridevirtual

Returns "EnvVarResolver"

Implements theoria::config::ConfigVariableResolver.

The documentation for this class was generated from the following files:

include/theoria/config/Resolve.h

src/config/Resolve.cpp

<address class="footer">
Generated on Mon Nov 21 2016 01:48:29 for Theoria by

 1.8.13
</address>


text:
A basic component, that cannot be dragged through a handle, specified by the prop `drag-cancel` and a valid CSS selector.

~~~js
<vue-draggable-resizable style="border: 1px solid black;" :drag-cancel="'.drag-cancel'">

Cannot Drag Here

</vue-draggable-resizable>
~~~


text:
package mqtt

import (
	"fmt"
	"testing"

	"github.com/docker/go-connections/nat"
	"github.com/influxdata/telegraf/plugins/serializers"
	"github.com/influxdata/telegraf/testutil"
	"github.com/testcontainers/testcontainers-go/wait"

	"github.com/stretchr/testify/require"
)

func TestConnectAndWriteIntegration(t *testing.T) {
	if testing.Short() {
		t.Skip("Skipping integration test in short mode")
	}

	servicePort := "1883"
	container := testutil.Container{
		Image:        "ncarlier/mqtt",
		ExposedPorts: []string{servicePort},
		WaitingFor:   wait.ForListeningPort(nat.Port(servicePort)),
	}
	err := container.Start()
	require.NoError(t, err, "failed to start container")
	defer func() {
		require.NoError(t, container.Terminate(), "terminating container failed")
	}()

	var url = fmt.Sprintf("%s:%s", container.Address, container.Ports[servicePort])
	s, _ := serializers.NewInfluxSerializer()
	m := &MQTT{
		Servers:    []string{url},
		serializer: s,
		KeepAlive:  30,
	}

	// Verify that we can connect to the MQTT broker
	err = m.Connect()
	require.NoError(t, err)

	// Verify that we can successfully write data to the mqtt broker
	err = m.Write(testutil.MockMetrics())
	require.NoError(t, err)
}


text:
var path = require('path');
var webpack = require('webpack');
var inlineSVG = require('postcss-inline-svg');
var ExtractTextPlugin = require('extract-text-webpack-plugin');
var CommonsChunkPlugin = require('webpack/lib/optimize/CommonsChunkPlugin');
var autoprefixer = require('autoprefixer');

module.exports = {
  entry: {
    index: './src/index.js',
    others: './src/others.js'
  },

  output: {
    path: path.join(__dirname, 'public'),
    filename: 'js/build/[name].js?[hash]',
    publicPath: './'
  },

  plugins: [
    new CommonsChunkPlugin({
      name: 'commons',
      filename: 'js/build/commons.js?[hash]',
      chunks: ['index', 'others']
    }),
    new ExtractTextPlugin('[name].css?[hash]'),
    new webpack.optimize.OccurenceOrderPlugin(),
    new webpack.optimize.UglifyJsPlugin({
      compressor: {
        warnings: false
      }
    }),
    new webpack.DefinePlugin({
      'process.env.NODE_ENV': JSON.stringify('production')
    })
  ],

  module: {
    loaders: [
      {
        test: /\.js$/,
        loaders: ['babel'],
        include: path.join(__dirname, 'src')
      },

      {
        test: /\.json?$/,
        loader: 'json-loader'
      },

      {
        test: /\.scss$/,
        loader: ExtractTextPlugin.extract('style-loader', 'css-loader?importLoaders=1!postcss-loader!sass-loader')
      },

      {
        test: /\.(png|jpg|gif)$/,
        loader: 'file-loader?name=[name].[ext]'
      }
    ]
  },

  postcss: function() {
    return [inlineSVG, autoprefixer];
  }
};