Package org.libreplan.business.resources.entities

Examples of org.libreplan.business.resources.entities.CriterionType


        this.criterion = adHocTransaction
                .runOnTransaction(new IOnTransaction<Criterion>() {

                    @Override
                    public Criterion execute() {
                        CriterionType criterionType = CriterionType.create(
                                "test" + UUID.randomUUID(), "");
                        criterionType.setResource(ResourceEnum.WORKER);
                        criterionTypeDAO.save(criterionType);
                        Criterion criterion = Criterion.create("Test"
                                + UUID.randomUUID(), criterionType);

                        try {
View Full Code Here


    @Test
    @Transactional
    public void testAddResourceWithCriterionSatisfactions() {

        /* Create a criterion type. */
        CriterionType ct = createCriterionType(ResourceEnum.MACHINE);

        /* Create a resource DTO. */
        MachineDTO m1 = new MachineDTO("name", "desc");
        CriterionSatisfactionDTO cs1m1 =
            new CriterionSatisfactionDTO(
                ' ' + ct.getName().toUpperCase() // Upper case and blank
                ' ', " C1 ",                        // spaces intentionally
                                                    // added (OK).
                getDate(2001, 1, 1), getDate(2001, 2, 1));
        m1.criterionSatisfactions.add(cs1m1);
        m1.criterionSatisfactions.add(
            new CriterionSatisfactionDTO(ct.getName(), "c2",
                getDate(2001, 1, 1), null));

        MachineDTO m2 = new MachineDTO("name", "desc");
        m2.criterionSatisfactions.add(
            new CriterionSatisfactionDTO(cs1m1.code, ct.getName(), "c1",
                getDate(2001, 1, 1), null)); // Repeated criterion satisfaction
                                             // code (used by another machine).
        m2.criterionSatisfactions.add(
            new CriterionSatisfactionDTO(null, ct.getName(), "c2",
                getDate(2001, 1, 1), null)); // Missing criterion satisfaction
        // code.(autogenerated code)

        MachineDTO m3 = new MachineDTO("name", "desc");
        CriterionSatisfactionDTO cs1m3 =
            new CriterionSatisfactionDTO(ct.getName(), "c1",
                getDate(2001, 1, 1), getDate(2001, 2, 1));
        m3.criterionSatisfactions.add(cs1m3);
        m3.criterionSatisfactions.add(
            new CriterionSatisfactionDTO(
                cs1m3.code, // Repeated criterion satisfaction code in this
                            // machine.
                ct.getName(), "c2",
                getDate(2001, 1, 1), null));

        /* Test. */
        List<InstanceConstraintViolationsDTO> instanceConstraintViolationsList =
        resourceService.addResources(createResourceListDTO(m1, m2, m3)).
View Full Code Here

    @Test
    @Transactional
    public void testAddResourceWithCriterionSatisfactionWithoutStartDate() {

        /* Create a criterion type. */
        CriterionType ct = createCriterionType(ResourceEnum.MACHINE);

        /* Create a machine DTO. */
        MachineDTO machineDTO = new MachineDTO("name", "desc");
        machineDTO.criterionSatisfactions.add(
            new CriterionSatisfactionDTO(ct.getName() , "c1",
                null, getDate(2001, 1, 1))); // Missing start date.

        /* Test. */
        assertOneConstraintViolation(
            resourceService.addResources(createResourceListDTO(machineDTO)));
View Full Code Here

    @Test
    @Transactional
    public void testAddResourceWithCriterionSatisfactionWithNegativeInterval() {

        /* Create a criterion type. */
        CriterionType ct = createCriterionType(ResourceEnum.MACHINE);

        /* Create a machine DTO. */
        MachineDTO machineDTO = new MachineDTO("name", "desc");
        machineDTO.criterionSatisfactions.add(
            new CriterionSatisfactionDTO(ct.getName() , "c1",
                getDate(2000, 2, 1), getDate(2000, 1, 1)));

        /* Test. */
        assertOneConstraintViolation(
            resourceService.addResources(createResourceListDTO(machineDTO)));
View Full Code Here

    @Test
    @Transactional
    public void testAddResourceWithOverlappingCriterionSatisfactionsAllowed() {

        /* Create a criterion type. */
        CriterionType ct = createCriterionType(ResourceEnum.MACHINE);

        /*
         * Create a machine DTO. OK, because
         * ct.isAllowSimultaneousCriterionsPerResource() is true.
         */
        MachineDTO machineDTO = createMachineDTOWithTwoCriterionSatisfactions(
            "machine", ct.getName(),
            "c1", getDate(2000, 1, 1), getDate(2000, 2, 1),
            "c2", getDate(2000, 1, 15), getDate(2000, 2, 1));

        /* Test. */
        assertNoConstraintViolations(
View Full Code Here

    @Test
    @Transactional
    public void testAddResourceWithOverlappingCriterionSatisfactions() {

        /* Create criterion types. */
        CriterionType ct1 = createCriterionType(ResourceEnum.MACHINE);
        CriterionType ct2 = createCriterionType(ResourceEnum.MACHINE, false);

        /*
         * Create resource DTOs. Each resource contains one criterion
         * satisfaction overlapping.
         *
         */
        MachineDTO m1 = createMachineDTOWithTwoCriterionSatisfactions(
            "m1", ct1.getName(), // Interval overlapping in "c1".
            "c1", getDate(2000, 1, 1), getDate(2000, 2, 1),
            "c1", getDate(2000, 1, 15), getDate(2000, 2, 1));

        MachineDTO m2 = createMachineDTOWithTwoCriterionSatisfactions(
            "m2", ct2.getName(), // Overlapping because "ct2" does not allow
                                 // simultaneous criterion satisfactions in
                                 // intervals that overlap.
            "c1", getDate(2000, 1, 1), getDate(2000, 2, 1),
            "c2", getDate(2000, 1, 15), getDate(2000, 2, 1));

View Full Code Here

    @Test
    @Transactional
    public void testAddResourcesWithCriterionSatisfactionsWithIncorrectCriterionType() {

        /* Create two criterion types. */
        CriterionType machineCt = createCriterionType(ResourceEnum.MACHINE);
        CriterionType workerCt = createCriterionType(ResourceEnum.WORKER);

        /* Create resource DTOs. */
        MachineDTO machineDTO = new MachineDTO("name", "desc");
        machineDTO.criterionSatisfactions.add(
            new CriterionSatisfactionDTO(workerCt.getName() , "c1",
                getDate(2001, 1, 1), null)); // Incorrect type.
        WorkerDTO workerDTO = new WorkerDTO(getUniqueName(), "surname",
                getUniqueName());
        workerDTO.criterionSatisfactions.add(
            new CriterionSatisfactionDTO(machineCt.getName() , "c1",
View Full Code Here

    @Test
    @Transactional
    public void testAddResourcesWithCriterionSatisfactionsWithMissingNames() {

        /* Create a criterion type. */
        CriterionType ct = createCriterionType();

        /* Create machines DTOs. */
        MachineDTO m1 = new MachineDTO("m1", "desc");
        m1.criterionSatisfactions.add(
            new CriterionSatisfactionDTO("", "X", // Missing criterion type.
                getDate(2001, 1, 1), null));
        MachineDTO m2 = new MachineDTO("m2", "desc");
        m2.criterionSatisfactions.add(
            new CriterionSatisfactionDTO(ct.getName(), // Missing criterion.
                null, getDate(2001, 1, 1), null));

        /* Test. */
        ResourceListDTO resourceDTOs = createResourceListDTO(m1, m2);

View Full Code Here

    @Test
    @Transactional
    public void testAddResourceWithCriterionSatisfactionsWithNonExistentCriterion() {

        /* Create a criterion type. */
        CriterionType ct = createCriterionType();

        /* Create a machine DTO. */
        MachineDTO machineDTO = new MachineDTO("name", "desc");
        machineDTO.criterionSatisfactions.add(
            new CriterionSatisfactionDTO(ct.getName(), getUniqueName(),
                getDate(2000, 1, 1), null));

        /* Test. */
        assertOneRecoverableError(
            resourceService.addResources(createResourceListDTO(machineDTO)));
View Full Code Here

    @Test
    @Transactional
    public void testUpdateResources() throws InstanceNotFoundException {

        CriterionType ctMachine = createCriterionType(ResourceEnum.MACHINE);
        CriterionType ctWorker = createCriterionType(ResourceEnum.WORKER);
        CostCategory costCategory = createCostCategory();

        /* Create a machine DTO. */
        MachineDTO m1 = new MachineDTO("name", "desc");
        CriterionSatisfactionDTO m1s1 = new CriterionSatisfactionDTO(
                ctMachine
                .getName(), "c1", getDate(2000, 1, 1), getDate(2000, 2, 1));
        m1.criterionSatisfactions.add(m1s1);
        ResourcesCostCategoryAssignmentDTO m1a1 = new ResourcesCostCategoryAssignmentDTO(
                costCategory.getName(), getDate(2000, 1, 1),
                getDate(2000, 2, 1));
        m1.resourcesCostCategoryAssignments.add(m1a1);

        /* Create a worker DTO. */
        String nif = getUniqueName();
        WorkerDTO w1 = new WorkerDTO(getUniqueName(), "surname", nif);
        CriterionSatisfactionDTO w1s1 = new CriterionSatisfactionDTO(
                ctWorker
                .getName(), "c1", getDate(2000, 1, 1), getDate(2000, 2, 1));
        w1.criterionSatisfactions.add(w1s1);
        ResourcesCostCategoryAssignmentDTO w1a1 = new ResourcesCostCategoryAssignmentDTO(
                costCategory.getName(), getDate(2000, 1, 1),
                getDate(2000, 2, 1));
        w1.resourcesCostCategoryAssignments.add(w1a1);

        /* Add resources. */
        assertNoConstraintViolations(resourceService
                .addResources(createResourceListDTO(m1, w1)));

        /*
         * Build DTOs for making the following update: + m1: update name, m1s1's
         * start date, and add a new cost category assignment. + w1: update
         * surname, w1a1's start date, and add a new criterion satisfaction.
         */
        MachineDTO m1Updated = new MachineDTO(m1.code, "name" + "UPDATED", null);
        CriterionSatisfactionDTO m1s1Updated = new CriterionSatisfactionDTO(
                m1s1.code, null, null, getDate(2000, 1, 2), null);
        m1Updated.criterionSatisfactions.add(m1s1Updated);
        ResourcesCostCategoryAssignmentDTO m1a2 = new ResourcesCostCategoryAssignmentDTO(
                costCategory.getName(), getDate(2000, 3, 1),
                getDate(2000, 4, 1));
        m1Updated.resourcesCostCategoryAssignments.add(m1a2);

        WorkerDTO w1Updated = new WorkerDTO(w1.code, null, "surname"
                + "UPDATED", null);
        CriterionSatisfactionDTO w1s2 = new CriterionSatisfactionDTO(
                ctWorker
                .getName(), "c1", getDate(2000, 3, 1), getDate(2000, 4, 1));
        w1Updated.criterionSatisfactions.add(w1s2);
        ResourcesCostCategoryAssignmentDTO w1a1Updated = new ResourcesCostCategoryAssignmentDTO(
                w1a1.code, null, getDate(2000, 2, 1), null);
        w1Updated.resourcesCostCategoryAssignments.add(w1a1Updated);
View Full Code Here

TOP

Related Classes of org.libreplan.business.resources.entities.CriterionType

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.