From 4b27373ea2abb2b0dc1a6d213b78b89e93855e2b Mon Sep 17 00:00:00 2001 From: Ilya Shakhat Date: Thu, 24 Oct 2013 17:32:35 +0400 Subject: [PATCH] Enforce alphabetical order in default data * Default data users and companies are sorted * Tests are added Change-Id: I140a9858f4bdf34c335f19573bcd781e556668b4 --- etc/default_data.json | 798 ++++++++++++++++---------------- tests/unit/test_config_files.py | 24 + 2 files changed, 415 insertions(+), 407 deletions(-) diff --git a/etc/default_data.json b/etc/default_data.json index 3e0c77c88..71d878b40 100644 --- a/etc/default_data.json +++ b/etc/default_data.json @@ -1,115 +1,5 @@ { "users": [ - { - "launchpad_id": "kozhukalov", - "user_name": "Vladimir Kozhukalov", - "companies": [ - { - "company_name": "Mirantis", - "end_date": null - } - ], - "emails": [ - "vkozhukalov@mirantis.com", - "kozhukalov@gmail.com" - ] - }, - { - "launchpad_id": "mihgen", - "user_name": "Mike Scherbakov", - "companies": [ - { - "company_name": "Mirantis", - "end_date": null - } - ], - "emails": [ - "mscherbakov@mirantis.com", - "mihgen@gmail.com" - ] - }, - { - "launchpad_id": "xdeller", - "user_name": "Andrey Korolyov", - "companies": [ - { - "company_name": "Mirantis", - "end_date": null - } - ], - "emails": [ - "andrey@xdel.ru", - "akorolev@mirantis.com" - ] - }, - { - "launchpad_id": "enchantner", - "user_name": "Nikolay Markov", - "companies": [ - { - "company_name": "Mirantis", - "end_date": null - } - ], - "emails": [ - "nmarkov@mirantis.com" - ] - }, - { - "launchpad_id": "idv1985", - "user_name": "Dmitry Ilyin", - "companies": [ - { - "company_name": "Mirantis", - "end_date": null - } - ], - "emails": [ - "dilyin@mirantis.com", - "idv1985@gmail.com" - ] - }, - { - "launchpad_id": "vsharshov", - "user_name": "Vladimir Sharshov", - "companies": [ - { - "company_name": "Mirantis", - "end_date": null - } - ], - "emails": [ - "vsharshov@gmail.com", - "vsharshov@mirantis.com" - ] - }, - { - "launchpad_id": "bogdando", - "user_name": "Bogdan Dobrelya", - "companies": [ - { - "company_name": "Mirantis", - "end_date": null - } - ], - "emails": [ - "bogdando@mail.ru", - "bdobrelia@mirantis.com" - ] - }, - { - "launchpad_id": "ekirpichov", - "user_name": "Eugene Kirpichov", - "companies": [ - { - "company_name": "Mirantis", - "end_date": null - } - ], - "emails": [ - "ekirpichov@gmail.com" - ] - }, { "launchpad_id": "0x44", "companies": [ @@ -165,28 +55,6 @@ "user_name": "Kun Huang", "emails": ["gareth@unitedstack.com", "academicgareth@gmail.com"] }, - { - "launchpad_id": "niu-zglinux", - "companies": [ - { - "company_name": "UnitedStack", - "end_date": null - } - ], - "user_name": "Zhenguo Niu", - "emails": ["zhenguo@unitedstack.com", "Niu.ZGlinux@gmail.com"] - }, - { - "launchpad_id": "denny-6", - "companies": [ - { - "company_name": "UnitedStack", - "end_date": null - } - ], - "user_name": "Denny Zhang", - "emails": ["denny@unitedstack.com", "filebat.mark@gmail.com"] - }, { "launchpad_id": "adriansmith", "companies": [ @@ -209,25 +77,6 @@ "user_name": "Ilya Kharin", "emails": ["ikharin@mirantis.com", "akscram@gmail.com"] }, - { - "launchpad_id": "anteaya", - "companies": [ - { - "company_name": "independent", - "end_date": "2013-Apr-02" - }, - { - "company_name": "eNovance", - "end_date": "2013-Jun-21" - }, - { - "company_name": "HP", - "end_date": null - } - ], - "user_name": "Anita Kuno", - "emails": ["akuno@lavabit.com", "anita.kuno@enovance.com", "anteaya@anteaya.info"] - }, { "launchpad_id": "alex-gaynor", "companies": [ @@ -320,6 +169,25 @@ "user_name": "Jesse Andrews", "emails": ["jesse@gigantor.local", "jesse@aire.local", "anotherjesse@gmail.com"] }, + { + "launchpad_id": "anteaya", + "companies": [ + { + "company_name": "independent", + "end_date": "2013-Apr-02" + }, + { + "company_name": "eNovance", + "end_date": "2013-Jun-21" + }, + { + "company_name": "HP", + "end_date": null + } + ], + "user_name": "Anita Kuno", + "emails": ["akuno@lavabit.com", "anita.kuno@enovance.com", "anteaya@anteaya.info"] + }, { "launchpad_id": "antonym", "companies": [ @@ -508,6 +376,17 @@ "user_name": "Bob Melander", "emails": ["bob.melander@gmail.com"] }, + { + "launchpad_id": "bogdando", + "user_name": "Bogdan Dobrelya", + "companies": [ + { + "company_name": "Mirantis", + "end_date": null + } + ], + "emails": ["bogdando@mail.ru", "bdobrelia@mirantis.com"] + }, { "launchpad_id": "boris-42", "companies": [ @@ -556,6 +435,17 @@ "user_name": "Marcelo Martins", "emails": ["btorch@gmail.com", "marcelo.martins@rackspace.com"] }, + { + "launchpad_id": "c-kassen", + "companies": [ + { + "company_name": "Deutsche Telekom", + "end_date": null + } + ], + "user_name": "Christoph Kassen", + "emails": ["c.kassen@telekom.de"] + }, { "launchpad_id": "cbehrens", "companies": [ @@ -641,17 +531,6 @@ "user_name": "Christophe Sauthier", "emails": ["christophe@sauthier.com", "christophe.sauthier@objectif-libre.com"] }, - { - "launchpad_id": "c-kassen", - "companies": [ - { - "company_name": "Deutsche Telekom", - "end_date": null - } - ], - "user_name": "Christoph Kassen", - "emails": ["c.kassen@telekom.de"] - }, { "launchpad_id": "clay-gerrard", "companies": [ @@ -678,17 +557,6 @@ "user_name": "Clint Byrum", "emails": ["clint@fewbar.com", "clint.byrum@hp.com", "clint@ubuntu.com"] }, - { - "launchpad_id": "cody-somerville", - "companies": [ - { - "company_name": "HP", - "end_date": null - } - ], - "user_name": "Cody A.W. Somerville", - "emails": ["cody.somerville@hp.com", "cody-somerville@ubuntu.com", "cody.somerville@gmail.com"] - }, { "launchpad_id": "cmsj", "companies": [ @@ -700,6 +568,17 @@ "user_name": "Chris Jones", "emails": ["cmsj@tenshu.net"] }, + { + "launchpad_id": "cody-somerville", + "companies": [ + { + "company_name": "HP", + "end_date": null + } + ], + "user_name": "Cody A.W. Somerville", + "emails": ["cody.somerville@hp.com", "cody-somerville@ubuntu.com", "cody.somerville@gmail.com"] + }, { "launchpad_id": "corvus", "companies": [ @@ -756,6 +635,17 @@ "user_name": "Christoph Thiel", "emails": ["c.thiel@telekom.de", "cthiel@suse.com"] }, + { + "launchpad_id": "d-gollub", + "companies": [ + { + "company_name": "Deutsche Telekom", + "end_date": null + } + ], + "user_name": "Daniel Gollub", + "emails": ["d.gollub@telekom.de"] + }, { "launchpad_id": "daisy-ycguo", "companies": [ @@ -885,6 +775,17 @@ "user_name": "Deepak Garg", "emails": ["deepak.garg@citrix.com", "deepakgarg.iitg@gmail.com"] }, + { + "launchpad_id": "denny-6", + "companies": [ + { + "company_name": "UnitedStack", + "end_date": null + } + ], + "user_name": "Denny Zhang", + "emails": ["denny@unitedstack.com", "filebat.mark@gmail.com"] + }, { "launchpad_id": "derek-morton", "companies": [ @@ -944,17 +845,6 @@ "user_name": "Davanum Srinivas", "emails": ["dims@linux.vnet.ibm.com", "davanum@gmail.com"] }, - { - "launchpad_id": "d-gollub", - "companies": [ - { - "company_name": "Deutsche Telekom", - "end_date": null - } - ], - "user_name": "Daniel Gollub", - "emails": ["d.gollub@telekom.de"] - }, { "launchpad_id": "dmllr", "companies": [ @@ -988,6 +878,28 @@ "user_name": "Doug Hellmann", "emails": ["doug.hellmann@gmail.com", "doug.hellmann@dreamhost.com"] }, + { + "launchpad_id": "dshrews", + "companies": [ + { + "company_name": "HP", + "end_date": null + } + ], + "user_name": "David Shrewsbury", + "emails": ["shrewsbury.dave@gmail.com"] + }, + { + "launchpad_id": "dstanek", + "companies": [ + { + "company_name": "Rackspace", + "end_date": null + } + ], + "user_name": "David Stanek", + "emails": ["dstanek@dstanek.com", "david.stanek@rackspace.com"] + }, { "launchpad_id": "dtroyer", "companies": [ @@ -1014,28 +926,6 @@ "user_name": "Duncan Thomas", "emails": ["duncan.thomas@hp.com", "duncan.thomas@gmail.com"] }, - { - "launchpad_id": "dshrews", - "companies": [ - { - "company_name": "HP", - "end_date": null - } - ], - "user_name": "David Shrewsbury", - "emails": ["shrewsbury.dave@gmail.com"] - }, - { - "launchpad_id": "dstanek", - "companies": [ - { - "company_name": "Rackspace", - "end_date": null - } - ], - "user_name": "David Stanek", - "emails": ["dstanek@dstanek.com", "david.stanek@rackspace.com"] - }, { "launchpad_id": "dweimer", "companies": [ @@ -1102,6 +992,17 @@ "user_name": "Eric Harney", "emails": ["eharney@redhat.com", "eharney@gmail.com"] }, + { + "launchpad_id": "ekirpichov", + "user_name": "Eugene Kirpichov", + "companies": [ + { + "company_name": "Mirantis", + "end_date": null + } + ], + "emails": ["ekirpichov@gmail.com"] + }, { "launchpad_id": "emagana", "companies": [ @@ -1128,6 +1029,17 @@ "user_name": "Emilien Macchi", "emails": ["emilien.macchi@stackops.com", "emilien.macchi@enovance.com", "emilien@enovance.com"] }, + { + "launchpad_id": "enchantner", + "user_name": "Nikolay Markov", + "companies": [ + { + "company_name": "Mirantis", + "end_date": null + } + ], + "emails": ["nmarkov@mirantis.com"] + }, { "launchpad_id": "ethuleau", "companies": [ @@ -1430,6 +1342,17 @@ "user_name": "Hugh Saunders", "emails": ["hugh@wherenow.org"] }, + { + "launchpad_id": "idv1985", + "user_name": "Dmitry Ilyin", + "companies": [ + { + "company_name": "Mirantis", + "end_date": null + } + ], + "emails": ["dilyin@mirantis.com", "idv1985@gmail.com"] + }, { "launchpad_id": "ilyaalekseyev", "companies": [ @@ -1654,6 +1577,17 @@ "user_name": "Josh Kearney", "emails": ["josh.kearney@pistoncloud.com", "josh@jk0.org", "josh.kearney@rackspace.com"] }, + { + "launchpad_id": "jmeridth", + "companies": [ + { + "company_name": "Rackspace", + "end_date": null + } + ], + "user_name": "Jason Meridth", + "emails": ["jmeridth@gmail.com", "jason.meridth@rackspace.com"] + }, { "launchpad_id": "joe-arnold", "companies": [ @@ -1750,17 +1684,6 @@ "user_name": "Jordan Pittier", "emails": ["jordan.pittier-ext@cloudwatt.com", "jordan.pittier@gmail.com"] }, - { - "launchpad_id": "joshua.hesketh", - "companies": [ - { - "company_name": "Rackspace", - "end_date": null - } - ], - "user_name": "Joshua Hesketh", - "emails": ["joshua.hesketh@rackspace.com", "joshua.hesketh@RACKSPACE.COM", "josh@nitrotech.org"] - }, { "launchpad_id": "joshua-mckenty", "companies": [ @@ -1772,6 +1695,17 @@ "user_name": "Joshua McKenty", "emails": ["jmckenty@yyj-dhcp171.corp.flock.com", "joshua@pistoncloud.com", "joshua.mckenty@nasa.gov", "jmckenty@joshua-mckentys-macbook-pro.local", "jmckenty@gmail.com"] }, + { + "launchpad_id": "joshua.hesketh", + "companies": [ + { + "company_name": "Rackspace", + "end_date": null + } + ], + "user_name": "Joshua Hesketh", + "emails": ["joshua.hesketh@rackspace.com", "joshua.hesketh@RACKSPACE.COM", "josh@nitrotech.org"] + }, { "launchpad_id": "jpichon", "companies": [ @@ -1971,6 +1905,20 @@ "user_name": "K Jonathan Harker", "emails": ["k.jonathan.harker@hp.com"] }, + { + "launchpad_id": "kozhukalov", + "user_name": "Vladimir Kozhukalov", + "companies": [ + { + "company_name": "Mirantis", + "end_date": null + } + ], + "emails": [ + "vkozhukalov@mirantis.com", + "kozhukalov@gmail.com" + ] + }, { "launchpad_id": "kshileev", "companies": [ @@ -2136,6 +2084,17 @@ "user_name": "Zhi Yan Liu", "emails": ["lzy.dev@gmail.com", "zhiyanl@cn.ibm.com"] }, + { + "launchpad_id": "m-koderer", + "companies": [ + { + "company_name": "Deutsche Telekom", + "end_date": null + } + ], + "user_name": "Marc Koderer", + "emails": ["m.koderer@telekom.de"] + }, { "launchpad_id": "maksimov", "companies": [ @@ -2257,6 +2216,20 @@ "user_name": "Michael O'Gorman", "emails": ["michael.ogorman@gmail.com"] }, + { + "launchpad_id": "mihgen", + "user_name": "Mike Scherbakov", + "companies": [ + { + "company_name": "Mirantis", + "end_date": null + } + ], + "emails": [ + "mscherbakov@mirantis.com", + "mihgen@gmail.com" + ] + }, { "launchpad_id": "mikalstill", "companies": [ @@ -2283,17 +2256,6 @@ "user_name": "Mike Pittaro", "emails": ["mikeyp@LaHondaResearch.org", "mikeyp@lahondaresearch.org"] }, - { - "launchpad_id": "m-koderer", - "companies": [ - { - "company_name": "Deutsche Telekom", - "end_date": null - } - ], - "user_name": "Marc Koderer", - "emails": ["m.koderer@telekom.de"] - }, { "launchpad_id": "mordred", "companies": [ @@ -2408,6 +2370,17 @@ "user_name": "Nicolas Barcet", "emails": ["nicolas@barcet.com", "nick@enovance.com", "nijaba@ubuntu.com", "nick.barcet@canonical.com"] }, + { + "launchpad_id": "niu-zglinux", + "companies": [ + { + "company_name": "UnitedStack", + "end_date": null + } + ], + "user_name": "Zhenguo Niu", + "emails": ["zhenguo@unitedstack.com", "Niu.ZGlinux@gmail.com"] + }, { "launchpad_id": "nobodycam", "companies": [ @@ -2664,17 +2637,6 @@ "user_name": "Eldar Nugaev", "emails": ["eldr@ya.ru", "enugaev@griddynamics.com", "reldan@oscloud.ru"] }, - { - "launchpad_id": "rjuvvadi", - "companies": [ - { - "company_name": "*independent", - "end_date": null - } - ], - "user_name": "Ramana Juvvadi", - "emails": ["rjuvvadi@hcl.com", "rrjuvvadi@gmail.com", "ramana@venus.lekha.org"] - }, { "launchpad_id": "ridhi-j-shah", "companies": [ @@ -2686,6 +2648,17 @@ "user_name": "Riddhi Shah", "emails": ["riddhi.shah@rackspace.com", "ridhi.j.shah@gmail.com"] }, + { + "launchpad_id": "rjuvvadi", + "companies": [ + { + "company_name": "*independent", + "end_date": null + } + ], + "user_name": "Ramana Juvvadi", + "emails": ["rjuvvadi@hcl.com", "rrjuvvadi@gmail.com", "ramana@venus.lekha.org"] + }, { "launchpad_id": "rlane", "companies": [ @@ -2829,17 +2802,6 @@ "user_name": "Salvatore Orlando", "emails": ["salv.orlando@gmail.com", "sorlando@nicira.com", "salvatore.orlando@eu.citrix.com"] }, - { - "launchpad_id": "sorrison", - "companies": [ - { - "company_name": "University of Melbourne", - "end_date": null - } - ], - "user_name": "Sam Morrison", - "emails": ["sorrison@gmail.com", "sam.morrison@unimelb.edu.au"] - }, { "launchpad_id": "sandy-sandywalsh", "companies": [ @@ -3064,6 +3026,17 @@ "user_name": "Soren Hansen", "emails": ["soren.hansen@rackspace.com", "soren@openstack.org", "sorenhansen@rackspace.com", "soren@linux2go.dk", "sorhanse@cisco.com"] }, + { + "launchpad_id": "sorrison", + "companies": [ + { + "company_name": "University of Melbourne", + "end_date": null + } + ], + "user_name": "Sam Morrison", + "emails": ["sorrison@gmail.com", "sam.morrison@unimelb.edu.au"] + }, { "launchpad_id": "soulascedric", "companies": [ @@ -3347,6 +3320,17 @@ "user_name": "Vasyl Khomenko", "emails": ["vasiliyk@yahoo-inc.com"] }, + { + "launchpad_id": "vsharshov", + "user_name": "Vladimir Sharshov", + "companies": [ + { + "company_name": "Mirantis", + "end_date": null + } + ], + "emails": ["vsharshov@gmail.com", "vsharshov@mirantis.com"] + }, { "launchpad_id": "wanglong", "companies": [ @@ -3369,6 +3353,17 @@ "user_name": "Jian Wen", "emails": ["jian.wen@canonical.com", "wenjianhn@gmail.com", "jian.wen@ubuntu.com"] }, + { + "launchpad_id": "xdeller", + "user_name": "Andrey Korolyov", + "companies": [ + { + "company_name": "Mirantis", + "end_date": null + } + ], + "emails": ["andrey@xdel.ru", "akorolev@mirantis.com"] + }, { "launchpad_id": "xtoddx", "companies": [ @@ -3555,17 +3550,6 @@ ], "user_name": "Zhongyue Luo", "emails": ["lzyeval@gmail.com", "zhongyue.nah@intel.com"] - }, - { - "launchpad_id": "jmeridth", - "companies": [ - { - "company_name": "Rackspace", - "end_date": null - } - ], - "user_name": "Jason Meridth", - "emails": ["jmeridth@gmail.com", "jason.meridth@rackspace.com"] } ], "companies": [ @@ -3578,25 +3562,25 @@ "company_name": "Qihoo 360 Technology Co" }, { - "domains": ["99cloud.net"], - "company_name": "99cloud" + "domains": ["3ds.com"], + "company_name": "Dassault Syst\u00e8mes" }, { - "domains": ["attinteractive.com", "att.com"], - "company_name": "AT&T" + "domains": ["99cloud.net"], + "company_name": "99cloud" }, { "domains": ["alyseo.com"], "company_name": "Alyseo" }, - { - "domains": ["aptira.com"], - "company_name": "Aptira" - }, { "domains": ["anl.gov"], "company_name": "Argonne National Laboratory" }, + { + "domains": ["aptira.com"], + "company_name": "Aptira" + }, { "domains": ["aristanetworks.com"], "company_name": "Arista Networks" @@ -3609,6 +3593,10 @@ "domains": ["atomia.com"], "company_name": "Atomia" }, + { + "domains": ["att.com", "attinteractive.com"], + "company_name": "AT&T" + }, { "domains": ["b1-systems.de"], "company_name": "B1 Systems" @@ -3645,14 +3633,6 @@ "domains": ["bull.net"], "company_name": "Bull" }, - { - "domains": ["cern.ch"], - "company_name": "CERN" - }, - { - "domains": ["crs4.it"], - "company_name": "CRS4" - }, { "domains": ["calxeda.com"], "company_name": "Calxeda" @@ -3661,6 +3641,10 @@ "domains": ["canonical.com"], "company_name": "Canonical" }, + { + "domains": ["cern.ch"], + "company_name": "CERN" + }, { "domains": ["cienet.com.cn"], "company_name": "CIeNET Technologies" @@ -3681,14 +3665,6 @@ "domains": ["cloudbasesolutions.com"], "company_name": "Cloudbase Solutions" }, - { - "domains": ["cloudtp.com"], - "company_name": "Cloud Technology Partners" - }, - { - "domains": ["cloudvps.com"], - "company_name": "CloudVPS" - }, { "domains": ["cloudbau.de"], "company_name": "Cloudbau" @@ -3698,20 +3674,32 @@ "company_name": "Cloudscaling" }, { - "domains": ["cloudwatt.com"], - "company_name": "Cloudwatt" + "domains": ["cloudtp.com"], + "company_name": "Cloud Technology Partners" }, { - "domains": ["csail.mit.edu"], - "company_name": "MIT CSAIL" + "domains": ["cloudvps.com"], + "company_name": "CloudVPS" + }, + { + "domains": ["cloudwatt.com"], + "company_name": "Cloudwatt" }, { "domains": ["coraid.com"], "company_name": "Coraid" }, { - "domains": ["3ds.com"], - "company_name": "Dassault Syst\u00e8mes" + "domains": ["crs4.it"], + "company_name": "CRS4" + }, + { + "domains": ["cs2c.com.cn"], + "company_name": "cs2c" + }, + { + "domains": ["csail.mit.edu"], + "company_name": "MIT CSAIL" }, { "domains": ["debian.org"], @@ -3734,7 +3722,7 @@ "company_name": "Earthlink" }, { - "domains": ["ebaysf.com", "ebay.com"], + "domains": ["ebay.com", "ebaysf.com"], "company_name": "eBay" }, { @@ -3749,6 +3737,10 @@ "domains": ["endurancewindpower.com"], "company_name": "Endurance Wind Power" }, + { + "domains": ["enovance.com"], + "company_name": "eNovance" + }, { "domains": ["ericsson.com"], "company_name": "Ericsson" @@ -3769,30 +3761,30 @@ "domains": ["globallogic.com"], "company_name": "GlobalLogic" }, - { - "domains": ["griddynamics.com", "griddynamics.net"], - "company_name": "Grid Dynamics" - }, { "domains": ["gridcentric.ca", "gridcentric.com"], "company_name": "Gridcentric" }, + { + "domains": ["griddynamics.com", "griddynamics.net"], + "company_name": "Grid Dynamics" + }, { "domains": ["grnet.gr"], "company_name": "GRNET" }, { - "domains": ["hcl.com"], - "company_name": "HCL" - }, - { - "domains": ["hp.com"], - "company_name": "HP" + "domains": ["guardian.co.uk"], + "company_name": "The Guardian" }, { "domains": ["hastexo.com"], "company_name": "Hastexo" }, + { + "domains": ["hcl.com"], + "company_name": "HCL" + }, { "domains": ["hds.com"], "company_name": "Hitachi" @@ -3801,34 +3793,30 @@ "domains": ["hortonworks.com"], "company_name": "Hortonworks" }, + { + "domains": ["hp.com"], + "company_name": "HP" + }, { "domains": ["huawei.com"], "company_name": "Huawei" }, { - "domains": ["linux.vnet.ibm.com", "ibm.com"], + "domains": ["ibm.com", "linux.vnet.ibm.com"], "company_name": "IBM" }, + { + "domains": ["ifca.unican.es"], + "company_name": "Instituto de Fisica de Cantabria" + }, { "domains": ["igbmc.fr"], "company_name": "IGBMC" }, - { - "domains": ["ispras.ru"], - "company_name": "ISP RAS" - }, - { - "domains": ["isi.edu"], - "company_name": "Information Sciences Institute" - }, { "domains": ["inktank.com"], "company_name": "Inktank" }, - { - "domains": ["it.pt"], - "company_name": "Instituto de Telecomunicacoes" - }, { "domains": ["inria.fr"], "company_name": "Inria" @@ -3846,13 +3834,33 @@ "company_name": "Internap" }, { - "domains": ["jpberlin.de"], - "company_name": "JP Berlin" + "domains": ["iomart.com"], + "company_name": "iomart" + }, + { + "domains": ["isi.edu"], + "company_name": "Information Sciences Institute" + }, + { + "domains": ["ispras.ru"], + "company_name": "ISP RAS" + }, + { + "domains": ["it.pt"], + "company_name": "Instituto de Telecomunicacoes" + }, + { + "domains": ["iweb.com", "iweb.co.uk"], + "company_name": "iWeb" }, { "domains": ["jhuapl.edu"], "company_name": "Johns Hopkins University" }, + { + "domains": ["jpberlin.de"], + "company_name": "JP Berlin" + }, { "domains": ["juniper.com", "juniper.net"], "company_name": "Juniper" @@ -3889,10 +3897,6 @@ "domains": ["locaweb.com.br"], "company_name": "Locaweb" }, - { - "domains": ["mit.edu"], - "company_name": "MIT" - }, { "domains": ["maginatics.com"], "company_name": "Maginatics" @@ -3921,36 +3925,36 @@ "domains": ["mirantis.com", "mirantis.ru"], "company_name": "Mirantis" }, + { + "domains": ["mit.edu"], + "company_name": "MIT" + }, { "domains": ["momentumsi.com"], "company_name": "MomentumSI" }, + { + "domains": ["mynet.at"], + "company_name": "myNET" + }, { "domains": ["nasa.gov"], "company_name": "NASA" }, - { - "domains": ["nec.com", "nec.co.jp", "nectechnologies.in"], - "company_name": "NEC" - }, - { - "domains": ["nttmcl.com", "nttdata.co.jp", "ntt.com", "ntt.co.jp", "nttdata.com", "vertex.co.in"], - "company_name": "NTT" - }, - { - "domains": ["ntts.co.jp"], - "company_name": "NTT Software" - }, { "domains": ["nebula.com", "ansolabs.com"], "company_name": "Nebula" }, + { + "domains": ["nec.com", "nec.co.jp", "nectechnologies.in"], + "company_name": "NEC" + }, { "domains": ["netapp.com"], "company_name": "NetApp" }, { - "domains": ["corp.netease.com"], + "domains": ["netease.com"], "company_name": "Netease" }, { @@ -3965,6 +3969,14 @@ "domains": ["nimbula.com"], "company_name": "Nimbula" }, + { + "domains": ["ntt.com", "nttmcl.com", "nttdata.co.jp", "ntt.co.jp", "nttdata.com", "vertex.co.in"], + "company_name": "NTT" + }, + { + "domains": ["ntts.co.jp"], + "company_name": "NTT Software" + }, { "domains": ["nuagenetworks.net"], "company_name": "Nuage Networks" @@ -3981,6 +3993,10 @@ "domains": ["orange.com"], "company_name": "Orange" }, + { + "domains": ["pdx.edu"], + "company_name": "Portland State University" + }, { "domains": ["percona.com"], "company_name": "Percona" @@ -3993,10 +4009,6 @@ "domains": ["pistoncloud.com"], "company_name": "Piston Cloud" }, - { - "domains": ["pdx.edu"], - "company_name": "Portland State University" - }, { "domains": ["playhaven.com"], "company_name": "PlayHaven" @@ -4013,6 +4025,10 @@ "domains": ["puppetlabs.com"], "company_name": "Puppet Labs" }, + { + "domains": ["qq.com"], + "company_name": "Tencent" + }, { "domains": ["qrclab.com"], "company_name": "Quanta Research Cambridge" @@ -4034,13 +4050,25 @@ "company_name": "Ravello Systems" }, { - "domains": ["gluster.com", "redhat.com"], + "domains": ["redhat.com", "gluster.com"], "company_name": "Red Hat" }, { "domains": ["rizu.mu"], "company_name": "Rizumu" }, + { + "domains": ["rr.com"], + "company_name": "Time Warner Cable" + }, + { + "domains": ["scality.com"], + "company_name": "Scality" + }, + { + "domains": ["sdsc.edu"], + "company_name": "San Diego Supercomputer Center" + }, { "domains": ["sina.com"], "company_name": "SINA" @@ -4049,22 +4077,6 @@ "domains": ["siu.edu"], "company_name": "Southern Illinois University" }, - { - "domains": ["stackinsider.com"], - "company_name": "Stackinsider" - }, - { - "domains": ["suse.cz", "suse.de", "suse.com"], - "company_name": "SUSE" - }, - { - "domains": ["sdsc.edu"], - "company_name": "San Diego Supercomputer Center" - }, - { - "domains": ["scality.com"], - "company_name": "Scality" - }, { "domains": ["snabb.co"], "company_name": "Snabb" @@ -4085,6 +4097,10 @@ "domains": ["spilgames.com"], "company_name": "Spil Games" }, + { + "domains": ["stackinsider.com"], + "company_name": "Stackinsider" + }, { "domains": ["stackops.com"], "company_name": "StackOps" @@ -4093,6 +4109,10 @@ "domains": ["stsci.edu"], "company_name": "Space Telescope Science Institute" }, + { + "domains": ["suse.cz", "suse.de", "suse.com"], + "company_name": "SUSE" + }, { "domains": ["swiftstack.com"], "company_name": "SwiftStack" @@ -4109,21 +4129,13 @@ "domains": ["telekom.de"], "company_name": "Deutsche Telekom" }, - { - "domains": ["qq.com"], - "company_name": "Tencent" - }, - { - "domains": ["guardian.co.uk"], - "company_name": "The Guardian" - }, { "domains": ["thoughtworks.com"], "company_name": "ThoughtWorks" }, { - "domains": ["rr.com"], - "company_name": "Time Warner Cable" + "domains": ["toronto.edu"], + "company_name": "University of Toronto" }, { "domains": ["tunnelvisionlabs.com"], @@ -4133,18 +4145,14 @@ "domains": ["ubisoft.com"], "company_name": "Ubisoft" }, - { - "domains": ["ustack.com", "unitedstack.com"], - "company_name": "UnitedStack" - }, - { - "domains": ["ifca.unican.es"], - "company_name": "Instituto de Fisica de Cantabria" - }, { "domains": ["umd.edu"], "company_name": "University of Maryland" }, + { + "domains": ["umn.edu"], + "company_name": "University of Minnesota" + }, { "domains": ["uni-wuerzburg.de"], "company_name": "University of Würzburg" @@ -4154,41 +4162,37 @@ "company_name": "University of Melbourne" }, { - "domains": ["umn.edu"], - "company_name": "University of Minnesota" - }, - { - "domains": ["toronto.edu"], - "company_name": "University of Toronto" + "domains": ["ustack.com", "unitedstack.com"], + "company_name": "UnitedStack" }, { "domains": ["valinux.co.jp"], "company_name": "VA Linux" }, { - "domains": ["vmware.com", "nicira.com"], - "company_name": "VMware" + "domains": ["vbridges.com"], + "company_name": "VirtualBridges" }, { "domains": ["vexxhost.com"], "company_name": "VexxHost" }, - { - "domains": ["vbridges.com"], - "company_name": "VirtualBridges" - }, { "domains": ["virtualtech.jp"], "company_name": "Virtualtech" }, { - "domains": ["windriver.com"], - "company_name": "Wind River" + "domains": ["vmware.com", "nicira.com"], + "company_name": "VMware" }, { "domains": ["wikimedia.org"], "company_name": "Wikimedia Foundation" }, + { + "domains": ["windriver.com"], + "company_name": "Wind River" + }, { "domains": ["xlab.si"], "company_name": "Xlab" @@ -4216,26 +4220,6 @@ { "domains": ["zmanda.com"], "company_name": "Zmanda" - }, - { - "domains": ["cs2c.com.cn"], - "company_name": "cs2c" - }, - { - "domains": ["enovance.com"], - "company_name": "eNovance" - }, - { - "domains": ["iweb.com", "iweb.co.uk"], - "company_name": "iWeb" - }, - { - "domains": ["iomart.com"], - "company_name": "iomart" - }, - { - "domains": ["mynet.at"], - "company_name": "myNET" } ], "repos": [ diff --git a/tests/unit/test_config_files.py b/tests/unit/test_config_files.py index 7e751ca54..a0c9439aa 100644 --- a/tests/unit/test_config_files.py +++ b/tests/unit/test_config_files.py @@ -22,12 +22,24 @@ import testtools class TestConfigFiles(testtools.TestCase): def setUp(self): super(TestConfigFiles, self).setUp() + self.longMessage = True + self.maxDiff = 2048 def _read_file(self, file_name): with open(file_name, 'r') as content_file: content = content_file.read() return json.loads(content) + def _verify_ordering(self, array, key, msg): + sorted_array = sorted(array, key=key) + diff_msg = None + for i in range(0, len(array)): + if array[i] != sorted_array[i]: + diff_msg = ('First differing element %s:\n%s\n%s' % + (i, array[i], sorted_array[i])) + if diff_msg: + self.fail(msg + '\n' + diff_msg) + def test_corrections(self): corrections = self._read_file('etc/corrections.json') schema = self._read_file('etc/corrections.schema.json') @@ -37,3 +49,15 @@ class TestConfigFiles(testtools.TestCase): default_data = self._read_file('etc/default_data.json') schema = self._read_file('etc/default_data.schema.json') jsonschema.validate(default_data, schema) + + def test_companies_in_alphabetical_order(self): + companies = self._read_file('etc/default_data.json')['companies'] + self._verify_ordering( + companies, key=lambda x: x['domains'][0], + msg='List of companies should be ordered by the first domain') + + def test_users_in_alphabetical_order(self): + users = self._read_file('etc/default_data.json')['users'] + self._verify_ordering( + users, key=lambda x: x['launchpad_id'], + msg='List of users should be ordered by launchpad id')