Changeset 812 for trunk/grails-app/conf


Ignore:
Timestamp:
Aug 16, 2010, 6:04:00 PM (11 years ago)
Author:
keesvb
Message:

added Sample tests for deleting samples via parent sampling event and event group, corrected some small errors, updated BootStrap? to find out why Sample.parentEvent gets serialized into the db, still no luck...

Location:
trunk/grails-app/conf
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/grails-app/conf/BootStrap.groovy

    r793 r812  
    4040                                BootStrapStudies.addExampleStudies()
    4141                        }
     42
     43                        println "Finished adding templates and studies"
    4244                }
    4345
     
    5153                TemplateEntity.getField(Sample.domainFields, 'material').ontologies = [Ontology.getOrCreateOntologyByNcboId(1005)]
    5254
     55                println "Registering SAM REST methods"
    5356                // register methods for accessing SAM's Rest services
    5457                if (grails.util.GrailsUtil.environment == GrailsApplication.ENV_PRODUCTION) {
     
    5962                }
    6063                CommunicationManager.registerRestWrapperMethodsSAMtoGSCF()
     64
     65                println "Done with BootStrap"
    6166        }
    6267
  • trunk/grails-app/conf/BootStrapStudies.groovy

    r806 r812  
    231231                def evS = new SamplingEvent(
    232232                        startTime: 3600 +7 * 24 * 3600,
    233                         endTime: 3600 +7 * 24 * 3600,
    234233                        template: liverSamplingEventTemplate,
    235234                        sampleTemplate: humanTissueSampleTemplate)
     
    238237                def evS4 = new SamplingEvent(
    239238                        startTime: 3600 +7 * 24 * 3600,
    240                         endTime: 3600 +7 * 24 * 3600,
    241239                        template: liverSamplingEventTemplate,
    242240                        sampleTemplate: humanTissueSampleTemplate)
     
    314312                        .setFieldValue("Cage", "" + (int)(x/2))
    315313
     314                        // We have to save the subject first, otherwise the parentEvent property of the sample cannot be set
     315                        // (this is possibly a Grails or Hibernate bug)
    316316                        mouseStudy.addToSubjects(currentSubject)
    317                         .with { if (!validate()) { errors.each { println it} } else save()}
     317                        currentSubject.with { if (!validate()) { errors.each { println it} } else save()}
    318318
    319319                        // Add subject to appropriate EventGroup
     
    333333                                template: humanBloodSampleTemplate,
    334334                                parentSubject: currentSubject,
    335                                 parentEvent: x > 40 ? evS4 : evS
     335                                parentEvent: evS //x > 40 ? evS4 : evS
    336336                        );
     337                        mouseStudy.addToSamples(currentSample)
     338                        currentSample.with { if (!validate()) { errors.each { println it} } else save()}
    337339                        currentSample.setFieldValue( "Text on vial", "T" + (Math.random() * 100L) )
    338                         mouseStudy.addToSamples(currentSample).with { if (!validate()) { errors.each { println it} } else save()}
    339340                }
    340341
     
    388389                def bloodSamplingEvent = new SamplingEvent(
    389390                        startTime: 3 * 24 * 3600 + 30 * 3600,
    390                         endTime: 3 * 24 * 3600 + 30 * 3600,
    391391                        template: bloodSamplingEventTemplate,
    392392                        sampleTemplate: humanBloodSampleTemplate)
     
    411411                        .setFieldValue("BMI", 20 + Math.random() * 10F)
    412412
     413                        humanStudy.addToSubjects(currentSubject)
     414                        currentSubject.with { if (!validate()) { errors.each { println it} } else save()}
     415
    413416                        rootGroup.addToSubjects currentSubject
    414417                        rootGroup.save()
     
    421424                                parentEvent: bloodSamplingEvent
    422425                        );
     426
     427                        humanStudy.addToSamples(currentSample)
     428                        currentSample.with { if (!validate()) { errors.each { println it} } else save()}
    423429                        currentSample.setFieldValue( "Text on vial", "T" + (Math.random() * 100L) )
    424 
    425                         humanStudy.addToSubjects(currentSubject).addToSamples(currentSample)
    426                         .with { if (!validate()) { errors.each { println it} } else save()}
    427430                }
    428431
     
    431434                humanStudy.addToEventGroups rootGroup
    432435
    433 
     436                println ".adding persons and saving PPSH study..."
    434437                // Add persons to study
    435438                def studyperson3 = new StudyPerson( person: person1, role: role2 )
    436 
    437439                humanStudy
    438440                .addToPersons( studyperson3 )
     
    440442                .with { if (!validate()) { errors.each { println it} } else save()}
    441443
    442                 // Add clinical data       ==> to be moved to SAM
    443 
    444                 def lipidAssay = new dbnp.clinicaldata.ClinicalAssay(
    445                         name: 'Lipid profile',
    446                         approved: true
    447                 ).with { if (!validate()) { errors.each { println it} } else save()}
    448 
    449                 def ldlMeasurement = new dbnp.clinicaldata.ClinicalMeasurement(
    450                         name: 'LDL',
    451                         unit: 'mg/dL',
    452                         type: dbnp.data.FeatureType.QUANTITATIVE,
    453                         referenceValues: '100 mg/dL',
    454                         detectableLimit: 250,
    455                         isDrug: false, isIntake: true, inSerum: true
    456                 ).with { if (!validate()) { errors.each { println it} } else save()}
    457 
    458                 def hdlMeasurement = new dbnp.clinicaldata.ClinicalMeasurement(
    459                         name: 'HDL',
    460                         unit: 'mg/dL',
    461                         type: dbnp.data.FeatureType.QUANTITATIVE,
    462                         referenceValues: '50 mg/dL',
    463                         detectableLimit: 100,
    464                         isDrug: false, isIntake: true, inSerum: true
    465                 ).with { if (!validate()) { errors.each { println it} } else save()}
    466 
    467                 lipidAssay.addToMeasurements ldlMeasurement
    468                 lipidAssay.addToMeasurements hdlMeasurement
    469 
    470                 def lipidAssayInstance = new dbnp.clinicaldata.ClinicalAssayInstance(
    471                         assay: lipidAssay
    472                 ).with { if (!validate()) { errors.each { println it} } else save()}
    473 
    474                 humanStudy.samples*.each {
    475                         new dbnp.clinicaldata.ClinicalFloatData(
    476                                 assay: lipidAssayInstance,
    477                                 measurement: ldlMeasurement,
    478                                 sample: it.name,
    479                                 value: Math.round(Math.random()*ldlMeasurement.detectableLimit)
    480                         ).with { if (!validate()) { errors.each { println it} } else save()}
    481 
    482                         new dbnp.clinicaldata.ClinicalFloatData(
    483                                 assay: lipidAssayInstance,
    484                                 measurement: hdlMeasurement,
    485                                 sample: it.name,
    486                                 value: Math.round(Math.random()*hdlMeasurement.detectableLimit)
    487                         ).with { if (!validate()) { errors.each { println it} } else save()}
    488                 }
    489 
    490                 // Add assay to study capture module
    491 
     444                println ".adding assay references to mouse example study..."
     445
     446                // Add SAM assay references
    492447                def clinicalModule = new AssayModule(
    493448                        name: 'SAM module for clinical data',
     
    510465                mouseStudy.save()
    511466
    512                 lipidAssayRef.with { if (!validate()) { errors.each { println it} } else save()}
     467                //lipidAssayRef.with { if (!validate()) { errors.each { println it} } else save()}
     468
     469                println ".adding assay references to human example study..."
    513470
    514471                def  glucoseAssay2Ref = new Assay(
     
    524481                )
    525482
    526                 humanStudy.addToAssays(glucoseAssay2Ref)
    527                 humanStudy.addToAssays(glucoseAssay3Ref)
    528                 humanStudy.save()
    529 
    530483                humanStudy.samples*.each {
    531484                        glucoseAssay2Ref.addToSamples(it)
     
    533486                }
    534487
    535                 glucoseAssay2Ref.with { if (!validate()) { errors.each { println it} } else save()}
    536                 glucoseAssay3Ref.with { if (!validate()) { errors.each { println it} } else save()}
     488
     489                humanStudy.addToAssays(glucoseAssay2Ref)
     490                humanStudy.addToAssays(glucoseAssay3Ref)
     491                humanStudy.save()
     492                println "Saving"
     493                //glucoseAssay2Ref.with { if (!validate()) { errors.each { println it} } else save()}
     494                //glucoseAssay3Ref.with { if (!validate()) { errors.each { println it} } else save()}
    537495
    538496        }
Note: See TracChangeset for help on using the changeset viewer.